[gest_crans2.py,dialogwizard] propreté ++
darcs-hash:20090929153951-bd074-139e274dc1bfc33cb3d07deadbc9d7723daaaed8.gz
This commit is contained in:
parent
932ce0e70b
commit
f5bae74159
2 changed files with 102 additions and 86 deletions
|
@ -38,7 +38,8 @@ sys.path.append('/usr/scripts')
|
|||
from ldap_crans import crans_ldap, script_utilisateur
|
||||
import user_tests
|
||||
from config import ann_scol
|
||||
from crans.dialogwizard.wizard import Scenario, Running, step_scenario, unit_scenario
|
||||
from crans.dialogwizard.wizard import Scenario, Running, \
|
||||
step_scenario, unit_scenario
|
||||
from crans.dialogwizard.dialogwizard import DialogStepGenerator, error_handler
|
||||
|
||||
db = crans_ldap()
|
||||
|
@ -60,45 +61,49 @@ dsgen = DialogStepGenerator(u'Gestion des adhérents et machines du Crans')
|
|||
## Fonctions de remplissage ou modification des paramètres d'un adhérent
|
||||
|
||||
prompt_new_adher = \
|
||||
dsgen.form_step (u"Inscription adhérent", '',
|
||||
[{'var': 'nom', 'label': 'Nom :', 'field_len': 20},
|
||||
{'var': 'prenom', 'label': u'Prénom :', 'field_len': 20},
|
||||
{'var': 'tel', 'label': u'Numéro de téléphone', 'field_len': 13},
|
||||
{'var': 'chbre', 'label': u'Chambre (EXT si pas sur le campus) :', 'field_len': 5} ])
|
||||
dsgen.form_step (
|
||||
u"Inscription adhérent", '',
|
||||
[{'var': 'nom', 'label': 'Nom :', 'field_len': 20},
|
||||
{'var': 'prenom', 'label': u'Prénom :', 'field_len': 20},
|
||||
{'label': u'Numéro de téléphone', 'var': 'tel', 'field_len': 13},
|
||||
{'label': u'Chambre (EXT si pas sur le campus) :',
|
||||
'var': 'chbre', 'field_len': 5} ])
|
||||
|
||||
prompt_addr_ext = \
|
||||
dsgen.form_step (u"Adresse extérieure de %(nom)s", '',
|
||||
[{'var': 'addr1', 'label': 'Adresse', 'field_len': 40},
|
||||
{'var': 'addr2', 'label': '', 'field_len': 40},
|
||||
{'var': 'addr3', 'label': 'Code Postal :', 'field_len': 6},
|
||||
{'var': 'addr4', 'label': 'Ville :', 'field_len': 20}])
|
||||
dsgen.form_step (
|
||||
u"Adresse extérieure de %(nom)s", '',
|
||||
[{'var': 'addr1', 'label': 'Adresse', 'field_len': 40},
|
||||
{'var': 'addr2', 'label': '', 'field_len': 40},
|
||||
{'var': 'addr3', 'label': 'Code Postal :', 'field_len': 6},
|
||||
{'var': 'addr4', 'label': 'Ville :', 'field_len': 20}])
|
||||
|
||||
def prompt_etudes():
|
||||
etab_step = \
|
||||
dsgen.select_step(u'Études de %(nom)s (1/3)',
|
||||
u"Choisissez l'établissement :",
|
||||
'etud1',
|
||||
[("ENS", u"ENS -- École Normale Supérieure de Cachan "),
|
||||
("IUT Cachan", u"IUT Cachan"),
|
||||
("Maximilien Sorre", u"Maximilien Sorre"),
|
||||
("Gustave Eiffel", u"Gustave Eiffel"),
|
||||
("P1", u"P1 -- Université Panthéon Sorbonne"),
|
||||
("P2", u"P2 -- Université Panthéon Assas"),
|
||||
("P3", u"P3 -- Université de la Sorbonne Nouvelle"),
|
||||
("P4", u"P4 -- Université Paris Sorbonne"),
|
||||
("P5", u"P5 -- Université René Descartes"),
|
||||
("P6", u"P6 -- Université Pierre et Marie Curie"),
|
||||
("P7", u"P7 -- Université Denis Diderot"),
|
||||
("P8", u"P8 -- Université Vincennes Saint Denis"),
|
||||
("P9", u"P9 -- Université Paris Dauphine"),
|
||||
("P10", u"P10 -- Université de Nanterre"),
|
||||
("P11", u"P11 -- Université de Paris Sud (Orsay)"),
|
||||
("P12", u"P12 -- Université Val de Marne"),
|
||||
("P13", u"P13 -- Université Paris Nord"),
|
||||
("IUFM", u"IUFM"),
|
||||
("Personnel ENS", u"Personnel ENS"),
|
||||
("Personnel CROUS", u"Personnel CROUS"),
|
||||
("autre", u"autre")])
|
||||
dsgen.select_step(
|
||||
u'Études de %(nom)s (1/3)',
|
||||
u"Choisissez l'établissement :",
|
||||
'etud1',
|
||||
[("ENS", u"ENS -- École Normale Supérieure de Cachan"),
|
||||
("IUT Cachan", u"IUT Cachan"),
|
||||
("Maximilien Sorre", u"Maximilien Sorre"),
|
||||
("Gustave Eiffel", u"Gustave Eiffel"),
|
||||
("P1", u"P1 -- Université Panthéon Sorbonne"),
|
||||
("P2", u"P2 -- Université Panthéon Assas"),
|
||||
("P3", u"P3 -- Université de la Sorbonne Nouvelle"),
|
||||
("P4", u"P4 -- Université Paris Sorbonne"),
|
||||
("P5", u"P5 -- Université René Descartes"),
|
||||
("P6", u"P6 -- Université Pierre et Marie Curie"),
|
||||
("P7", u"P7 -- Université Denis Diderot"),
|
||||
("P8", u"P8 -- Université Vincennes Saint Denis"),
|
||||
("P9", u"P9 -- Université Paris Dauphine"),
|
||||
("P10", u"P10 -- Université de Nanterre"),
|
||||
("P11", u"P11 -- Université de Paris Sud (Orsay)"),
|
||||
("P12", u"P12 -- Université Val de Marne"),
|
||||
("P13", u"P13 -- Université Paris Nord"),
|
||||
("IUFM", u"IUFM"),
|
||||
("Personnel ENS", u"Personnel ENS"),
|
||||
("Personnel CROUS", u"Personnel CROUS"),
|
||||
("autre", u"autre")])
|
||||
|
||||
etab_other = \
|
||||
dsgen.input_step(u'Études de %(nom)s (1/3)',
|
||||
|
@ -120,7 +125,8 @@ def prompt_etudes():
|
|||
|
||||
year_step = \
|
||||
dsgen.input_step(u"Études de %(nom)s (2/3)",
|
||||
u"Année adminstrative :\nET UNIQUEMENT l'ANNEE : la section sera demandée après.",
|
||||
u"Année adminstrative :\nET UNIQUEMENT l'ANNEE :"
|
||||
"la section sera demandée après.",
|
||||
'etud2')
|
||||
|
||||
section_step = \
|
||||
|
@ -129,45 +135,51 @@ def prompt_etudes():
|
|||
'etud3')
|
||||
|
||||
section_step = \
|
||||
dsgen.select_step(u'Études de %(nom)s (3/3)',
|
||||
u'Choisissez la section :',
|
||||
'etud3',
|
||||
[ ("A0", "Informatique"),
|
||||
("A1", "Mathématiques"),
|
||||
("A2", "Physique fondamentale"),
|
||||
("A''2", "Chimie"),
|
||||
{'label': "A'2", 'item': "Physique appliquée",
|
||||
'show_cond': (lambda d: d['etud2'] in ['3','4'])},
|
||||
("A3", "Biochimie"),
|
||||
{'label': "B123", 'item':"Technologie mécanique",
|
||||
'show_cond': (lambda d: d['etud2'] == '1') },
|
||||
{'label': "B1", 'item': "Mécanique",
|
||||
'show_cond': (lambda d: d['etud2'] in ['2','3','4'])},
|
||||
{'label': "B2", 'item': "Génie civil",
|
||||
'show_cond': (lambda d: d['etud2'] in ['2','3','4'])},
|
||||
{'label': "B3", 'item': "Génie mécanique",
|
||||
'show_cond': (lambda d: d['etud2'] in ['2','3','4'])},
|
||||
("EEA", "Électronique, électrotechnique et automatique"),
|
||||
("C", "Art et création industrielle"),
|
||||
("D2", "Economie gestion"),
|
||||
("D3", "Sciences sociales"),
|
||||
("E", "Anglais") ])
|
||||
dsgen.select_step(
|
||||
u'Études de %(nom)s (3/3)',
|
||||
u'Choisissez la section :',
|
||||
'etud3',
|
||||
[ ("A0", "Informatique"),
|
||||
("A1", "Mathématiques"),
|
||||
("A2", "Physique fondamentale"),
|
||||
("A''2", "Chimie"),
|
||||
{'label': "A'2", 'item': "Physique appliquée",
|
||||
'show_cond': (lambda d: d['etud2'] in ['3','4'])},
|
||||
("A3", "Biochimie"),
|
||||
{'label': "B123", 'item':"Technologie mécanique",
|
||||
'show_cond': (lambda d: d['etud2'] == '1') },
|
||||
{'label': "B1", 'item': "Mécanique",
|
||||
'show_cond': (lambda d: d['etud2'] in ['2','3','4'])},
|
||||
{'label': "B2", 'item': "Génie civil",
|
||||
'show_cond': (lambda d: d['etud2'] in ['2','3','4'])},
|
||||
{'label': "B3", 'item': "Génie mécanique",
|
||||
'show_cond': (lambda d: d['etud2'] in ['2','3','4'])},
|
||||
("EEA", "Électronique, électrotechnique et automatique"),
|
||||
("C", "Art et création industrielle"),
|
||||
("D2", "Economie gestion"),
|
||||
("D3", "Sciences sociales"),
|
||||
("E", "Anglais") ])
|
||||
|
||||
labo_step = \
|
||||
dsgen.select_step(u'Études de %(nom)s (3/3)',
|
||||
u'Choisissez le laboratoire :',
|
||||
'etud3',
|
||||
[ ("CMLA", u"Centre de Mathématiques et de Leurs Applications"),
|
||||
("GAPP", u"Groupe d'Analyse des Politiques Publiques"),
|
||||
("IDHE", u"Institutions et Dynamiques Historiques de l'Economie"),
|
||||
("LBPA", u"Laboratoire de Biotechnologies et Pharmacologie génétique Appliquées"),
|
||||
("LMT", u"Laboratoire de Mécanique et Technologie"),
|
||||
("LPQM", u"Laboratoire de Photonique Quantique et Moléculaire"),
|
||||
("LSV", u"Laboratoire de Spécification et Vérification"),
|
||||
("LURPA", u"Laboratoire Universitaire de Recherche en Production Automatisée"),
|
||||
("PPSM", u"Laboratoire de Photophysique et Photochimie Supramoléculaires et Macromoléculaires"),
|
||||
("SATIE", u"Systèmes et Applications des Technologies de l'Information et de l'Energie"),
|
||||
("STEF", u"Sciences Techniques Education Formation") ])
|
||||
dsgen.select_step(
|
||||
u'Études de %(nom)s (3/3)',
|
||||
u'Choisissez le laboratoire :',
|
||||
'etud3',
|
||||
[ ("CMLA", u"Centre de Mathématiques et de Leurs Applications"),
|
||||
("GAPP", u"Groupe d'Analyse des Politiques Publiques"),
|
||||
("IDHE", u"Institutions et Dynamiques Historiques de l'Economie"),
|
||||
("LBPA", u"Laboratoire de Biotechnologies "
|
||||
u"et Pharmacologie génétique Appliquées"),
|
||||
("LMT", u"Laboratoire de Mécanique et Technologie"),
|
||||
("LPQM", u"Laboratoire de Photonique Quantique et Moléculaire"),
|
||||
("LSV", u"Laboratoire de Spécification et Vérification"),
|
||||
("LURPA", u"Laboratoire Universitaire de Recherche "
|
||||
u"en Production Automatisée"),
|
||||
("PPSM", u"Laboratoire de Photophysique et "
|
||||
u"Photochimie Supramoléculaires et Macromoléculaires"),
|
||||
("SATIE", u"Systèmes et Applications des Technologies"
|
||||
u" de l'Information et de l'Energie"),
|
||||
("STEF", u"Sciences Techniques Education Formation") ])
|
||||
|
||||
etudes_scenar = Scenario()
|
||||
etudes_scenar.nest(etab_step)
|
||||
|
@ -198,20 +210,25 @@ prompt_connexion = \
|
|||
('2', 'Inscription gratuite')])
|
||||
|
||||
prompt_papiers = \
|
||||
dsgen.checklist_step('', u'État administratif de %(nom)s',
|
||||
[('carte', u"Carte d'étudiant %s-%s fourniee" % (ann_scol, ann_scol+1)),
|
||||
('paiement%s' % ann_scol, u'Cotisation %s réglée et charte signée' % ann_scol),
|
||||
{'var': 'chartema', 'item': u'Charte des membres actifs signée',
|
||||
'show_cond': (lambda d: isbureau or isadm)},
|
||||
{'var': '+p', 'item': u'Paiement et charte vérifiées',
|
||||
'show_cond': (lambda d: iscontroleur)},
|
||||
{'var': '+c', 'item': u"Carte d'étudiant vérifiée",
|
||||
'show_cond': (lambda d: iscontroleur)}
|
||||
])
|
||||
dsgen.checklist_step(
|
||||
'', u'État administratif de %(nom)s',
|
||||
[('carte', u"Carte d'étudiant %s-%s fourniee" % (ann_scol, ann_scol+1)),
|
||||
('paiement%s' % ann_scol, u'Cotisation %s réglée et charte signée' % ann_scol),
|
||||
{'var': 'chartema', 'item': u'Charte des membres actifs signée',
|
||||
'show_cond': (lambda d: isbureau or isadm)},
|
||||
{'var': '+p', 'item': u'Paiement et charte vérifiées',
|
||||
'show_cond': (lambda d: iscontroleur)},
|
||||
{'var': '+c', 'item': u"Carte d'étudiant vérifiée",
|
||||
'show_cond': (lambda d: iscontroleur)}
|
||||
])
|
||||
|
||||
prompt_login = \
|
||||
dsgen.input_step(u'Choix du login pour %(nom)s',
|
||||
u'Le choix du login doit faire au maximum 15 caractères\nIl ne doit *pas* être un pseudo ou un prénom, mais doit être relié au nom de famille\nSeuls les caractères alphabétiques et le - sont autorisés', 'login')
|
||||
u'Le choix du login doit faire au maximum 15 caractères\n'
|
||||
u"Il ne doit *pas* être un pseudo ou un prénom,"
|
||||
u'mais doit être relié au nom de famille\n'
|
||||
u'Seuls les caractères alphabétiques et le - sont autorisés',
|
||||
'login')
|
||||
|
||||
prompt_mailaddress = \
|
||||
dsgen.input_step(u'Addresse mail extérieure de %(nom)s',
|
||||
|
|
|
@ -14,8 +14,7 @@ def really_quit(dico):
|
|||
raise EndScenario("game over!", data = dico)
|
||||
|
||||
def error_handler(exc):
|
||||
sexc = (str(exc))
|
||||
dialog.Dialog().msgbox(sexc, title = 'Erreur :')
|
||||
dialog.Dialog().msgbox(str(exc), width=0, height =0, title = 'Erreur :')
|
||||
raise TryAgain()
|
||||
|
||||
class DialogStepGenerator:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue