From 9b4c683a2118aa09e10767e0088c04aad83e23d8 Mon Sep 17 00:00:00 2001 From: bernat Date: Sat, 23 Jul 2005 15:37:49 +0200 Subject: [PATCH] Les non membres actifs n'ont pas le droit a plusieurs machines fixes. Enfin, pour le moment, si quand meme... darcs-hash:20050723133749-d1718-95b7fa9922df1049bd22210fb8ce824133abd0bc.gz --- gestion/gest_crans.py | 39 ++++++++++++++++++++++++++++++++------- 1 file changed, 32 insertions(+), 7 deletions(-) diff --git a/gestion/gest_crans.py b/gestion/gest_crans.py index 79605d4a..90c1a423 100755 --- a/gestion/gest_crans.py +++ b/gestion/gest_crans.py @@ -1699,13 +1699,38 @@ def menu_principal() : # Ajout d'une machine à l'adhérent courant if proprio.__class__ == club or proprio.etudes(0) != "ENS" or \ proprio.etudes(1) != "Pers": - arg = u'--title "Nouvelle machine" ' - arg+= u'--menu "Type de machine ?" 0 0 0 ' - arg+= u'"Fixe" "Machine fixe" ' - arg+= u'"Wifi" "Machine wireless" ' - annul , result = dialog(arg) - if annul : continue - choix=result[0] + + # On ne peut avoir une machine fixe que si on a pas + # déjà une machine fixe, sauf si on est membre actif + # (expérimental) + + # On récupère la liste des machines fixes + fixes = filter(lambda x: not x.ipsec(), proprio.machines()) + if not fixes or proprio.droits(): + arg = u'--title "Nouvelle machine" ' + arg+= u'--menu "Type de machine ?" 0 0 0 ' + arg+= u'"Fixe" "Machine fixe" ' + arg+= u'"Wifi" "Machine wireless" ' + annul , result = dialog(arg) + if annul : continue + choix=result[0] + else: + # Plus de machine fixe possible... + arg = u'--title "Nouvelle machine" ' + arg+= u'--menu "Non membre actif\n\n' + arg+= u'Seuls les membres actifs peuvent posséder plusieurs\n' + arg+= u'machines fixes. L\'adhérent actuel n\'est pas membre\n' + arg+= u'actif, il n\'est donc possible que de lui ajouter une\n' + arg+= u'machine fixe..." 0 0 0 ' + arg+= u'"OK" "OK, on lui rajoute une machine wifi" ' + arg+= u'"Annul" "Bon, on abandonne..." ' + arg+= u'"Si" "Allez, on est sympa, on veut bien quand même." ' + annul, result = dialog(arg) + if annul or result[0] == "Annul": continue + if result[0] == "OK": + choix = 'Wifi' + else: + choix = 'Fixe' else: # Pour les personnels ENS, wifi uniquement arg = u'--title "Nouvelle machine" '