Patchs divers + mise jour de l'annuaire
darcs-hash:20040902051057-d1718-2e5bc8684bcff38b4e56318930da345f0b58f6b4.gz
This commit is contained in:
parent
1ec186d9dd
commit
a2411248dc
5 changed files with 128 additions and 76 deletions
|
@ -64,10 +64,8 @@ def set_bases(adher) :
|
|||
|
||||
try : adher.tel(result[2])
|
||||
except ValueError, c : err += c.args[0] + '\n'
|
||||
|
||||
try : c = adher.chbre(result[3])
|
||||
except ValueError, c : err += c.args[0] + '\n'
|
||||
except EnvironmentError, c : err += c.args[0] + '\n'
|
||||
|
||||
err += _set_chbre(adher,result[3])
|
||||
|
||||
# Des erreurs ?
|
||||
if err :
|
||||
|
@ -77,12 +75,39 @@ def set_bases(adher) :
|
|||
# On redemande
|
||||
return set_bases(adher)
|
||||
|
||||
if c =='EXT' :
|
||||
if adher.chbre() =='EXT' :
|
||||
# Il faut demander l'adresse extérieure
|
||||
if set_addr_ext(adher) :
|
||||
# Annulation
|
||||
return set_bases(adher)
|
||||
|
||||
|
||||
def _set_chbre(adher,chbre) :
|
||||
""" Attribution de la chambre chbre à l'adhérent fourni
|
||||
Retourne une chaine (unicode) avec l'erreur éventuelle
|
||||
"""
|
||||
if chbre=='????' :
|
||||
# Réservé à un usage interne
|
||||
return u'Chambre invalide\n'
|
||||
|
||||
try : c = adher.chbre(chbre)
|
||||
except EnvironmentError, c : return c.args[0] + '\n'
|
||||
except ValueError, c :
|
||||
try :
|
||||
squatteur = c.args[1]
|
||||
aff(squatteur)
|
||||
arg = u'--title "Inscription adhérent" '
|
||||
arg+= u'--yesno "Un adhérent (%s) occupe déjà cette chambre.\n' % squatteur.Nom()
|
||||
arg+= u'\nChanger la chambre de cet adhérent ?" 0 0'
|
||||
no, res = dialog(arg)
|
||||
if no : raise # On laisse l'erreur
|
||||
squatteur.chbre('????')
|
||||
squatteur.save()
|
||||
return _set_chbre(adher,chbre) # On recommence, le géneur doit être parti.
|
||||
except :
|
||||
return c.args[0] + '\n'
|
||||
|
||||
return u''
|
||||
|
||||
def set_addr_ext(adher) :
|
||||
""" Définition de l'adresse extérieure d'un adhérent
|
||||
La chambre de cet adhérent doit être EXT, sinon erreur """
|
||||
|
@ -359,15 +384,17 @@ def set_compte(adher) :
|
|||
# Première tentative
|
||||
err = 0
|
||||
try : login = adher.compte(login)
|
||||
except EnvironmentError, c : err = 1 # Locké
|
||||
except ValueError, c :
|
||||
try :
|
||||
c.arg[1]
|
||||
c.args[1]
|
||||
# Le compte existe => 2ème tentative (1ere lettre prénom + nom)
|
||||
login = adher.prenom()[0]+login
|
||||
login = login.lower()
|
||||
err =2
|
||||
except : err = 1
|
||||
|
||||
except :
|
||||
err = 1
|
||||
except EnvironmentError, c : err = 1 # Locké
|
||||
|
||||
if err :
|
||||
while 1:
|
||||
# Mauvais login => on demande
|
||||
|
@ -657,7 +684,7 @@ def set_admin(proprio) :
|
|||
if card :
|
||||
arg+= u'"1" "Carte d\'étudiant %d/%d fournie" "%s" ' % (ann_scol,ann_scol+1, carte)
|
||||
arg+= u'"2" "Adhésion %d/%d réglée et charte signée" "%s" ' % (ann_scol,ann_scol+1,paid_now)
|
||||
if config.precab :
|
||||
if config.precab == 1 :
|
||||
arg+= u'"3" "Adhésion %d/%d réglée et charte signée (précâblage)" "%s" ' % (ann_scol+1,ann_scol+2,precab)
|
||||
|
||||
annul , result = dialog(arg)
|
||||
|
@ -950,26 +977,33 @@ def modif_adher(adher) :
|
|||
"""
|
||||
Modification de l'adhérent fourni (instance de adhérent)
|
||||
Retourne 1 si annulation.
|
||||
"""
|
||||
arg = u'--title "Modification de %s" ' % adher.Nom()
|
||||
arg+= u'--menu "Que souhaitez vous modifier ?" 0 0 0 '
|
||||
arg+= u'"Admistratif" "Précâblage, carte d\'étudiant, études" '
|
||||
if adher.chbre() == 'EXT' :
|
||||
arg+= u'"Adresse" "Déménagement" '
|
||||
"""
|
||||
# Préliminaire : si la chambre est inconnue on force la question
|
||||
if adher.chbre() =='????' :
|
||||
res=['Chambre']
|
||||
arg = u'--title "Modification de %s" ' % adher.Nom()
|
||||
arg+= u'--msgbox "ERREUR : la chambre de cet adhérent est inconnue !\n\n\n" 0 0'
|
||||
dialog(arg)
|
||||
else :
|
||||
arg+= u'"Chambre" "Déménagement" '
|
||||
arg+= u'"Etudes" "Changement d\'année ou de filière" '
|
||||
arg+= u'"Téléphone" "Changement de numéro de téléphone" '
|
||||
arg+= u'"Mail" "Créer un compte ou changer l\'adresse mail de contact" '
|
||||
arg+= u'"Alias" "Créer ou supprimer un alias mail" '
|
||||
arg+= u'"Remarque" "Ajouter ou modifer un commentaire" '
|
||||
if isadm :
|
||||
arg+= u'"Droits" "Modifier les droits alloués à cet adhérent" '
|
||||
if isdeconnecteur :
|
||||
arg+= u'"Blackliste" "Modifier la blackliste de cet adhérent" '
|
||||
annul, res = dialog(arg)
|
||||
arg = u'--title "Modification de %s" ' % adher.Nom()
|
||||
arg+= u'--menu "Que souhaitez vous modifier ?" 0 0 0 '
|
||||
arg+= u'"Admistratif" "Précâblage, carte d\'étudiant, études" '
|
||||
if adher.chbre() == 'EXT' :
|
||||
arg+= u'"Adresse" "Déménagement" '
|
||||
else :
|
||||
arg+= u'"Chambre" "Déménagement" '
|
||||
arg+= u'"Etudes" "Changement d\'année ou de filière" '
|
||||
arg+= u'"Téléphone" "Changement de numéro de téléphone" '
|
||||
arg+= u'"Mail" "Créer un compte ou changer l\'adresse mail de contact" '
|
||||
arg+= u'"Alias" "Créer ou supprimer un alias mail" '
|
||||
arg+= u'"Remarque" "Ajouter ou modifer un commentaire" '
|
||||
if isadm :
|
||||
arg+= u'"Droits" "Modifier les droits alloués à cet adhérent" '
|
||||
if isdeconnecteur :
|
||||
arg+= u'"Blackliste" "Modifier la blackliste de cet adhérent" '
|
||||
annul, res = dialog(arg)
|
||||
|
||||
if annul : return 1
|
||||
if annul : return 1
|
||||
|
||||
if res[0]=='Etudes' :
|
||||
set_etudes(adher)
|
||||
|
@ -993,21 +1027,18 @@ def modif_adher(adher) :
|
|||
annul,res = dialog(arg)
|
||||
if annul : return 1
|
||||
|
||||
e=0
|
||||
try :
|
||||
c = adher.chbre(res[0])
|
||||
if c =='EXT' :
|
||||
e = _set_chbre(adher,res[0])
|
||||
if e :
|
||||
arg = u'--title "Déménagement de la %s" ' % adher.chbre()
|
||||
arg+= u'--msgbox "%s\n\n\n" 0 0' % e
|
||||
dialog(arg)
|
||||
else :
|
||||
if adher.chbre() =='EXT' :
|
||||
# Il faut demander l'adresse extérieure
|
||||
if set_addr_ext(adher) :
|
||||
# Annulation
|
||||
continue
|
||||
break
|
||||
except EnvironmentError, c : e = c.args[0]
|
||||
except ValueError, c : e = c.args[0]
|
||||
if e :
|
||||
arg = u'--title "Déménagement de la %s" ' % adher.chbre()
|
||||
arg+= u'--msgbox "%s\n\n\n" 0 0' % e
|
||||
dialog(arg)
|
||||
elif res[0]=='Adresse' :
|
||||
arg = u'--title "Déménagement de %s" ' % adher.Nom()
|
||||
arg+= u'--menu "Question :" 0 0 0 '
|
||||
|
@ -1409,15 +1440,16 @@ def menu_principal() :
|
|||
annul , result = dialog(arg)
|
||||
if annul : continue
|
||||
choix=result[0]
|
||||
if choix=='Fixe' :
|
||||
try : becane = machine(proprio,'fixe')
|
||||
except ValueError, c:
|
||||
arg = '--title "Nouvelle machine" '
|
||||
arg += '--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
||||
dialog(arg)
|
||||
continue
|
||||
elif choix=='Wifi' :
|
||||
becane = machine(proprio,'wifi')
|
||||
try :
|
||||
if choix=='Fixe' :
|
||||
becane = machine(proprio,'fixe')
|
||||
elif choix=='Wifi' :
|
||||
becane = machine(proprio,'wifi')
|
||||
except ValueError, c:
|
||||
arg = '--title "Nouvelle machine" '
|
||||
arg += '--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
||||
dialog(arg)
|
||||
continue
|
||||
if set_machine(becane) :
|
||||
# Annulation
|
||||
del(becane) ; becane = None
|
||||
|
@ -1434,7 +1466,13 @@ def menu_principal() :
|
|||
|
||||
elif choix=='mMc' :
|
||||
# Modif machine courante
|
||||
if set_machine(becane) :
|
||||
if not proprio :
|
||||
proprio = becane.proprietaire()
|
||||
if proprio.chbre() == '????' :
|
||||
arg = u'--title "Ajout d\'une machine" '
|
||||
arg+= u'--msgbox "ERREUR : la chambre de %s est inconnue !\n\n\n" 0 0' % proprio.Nom()
|
||||
dialog(arg)
|
||||
elif set_machine(becane) :
|
||||
# Annulation des modifs
|
||||
becane.restore()
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue