diff --git a/gestion/gest_crans2.py b/gestion/gest_crans2.py index 63c03fb3..0ec2efc9 100755 --- a/gestion/gest_crans2.py +++ b/gestion/gest_crans2.py @@ -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', diff --git a/lib/dialogwizard/dialogwizard.py b/lib/dialogwizard/dialogwizard.py index e31d6bae..d0d7023c 100755 --- a/lib/dialogwizard/dialogwizard.py +++ b/lib/dialogwizard/dialogwizard.py @@ -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: