[gestion/ldap_crans,gest_crans] unicode docstrings, unicode print

Toutes les docstrings deviennent unicode
Tous les print se voient passer des unicodes

darcs-hash:20090614133344-bd074-e310935dbee8030e8d4334f179fb0612a69c7ae8.gz
This commit is contained in:
Antoine Durand-Gasselin 2009-06-14 15:33:44 +02:00
parent c1d5e45ce1
commit e85b70c5ed
2 changed files with 188 additions and 187 deletions

View file

@ -1,7 +1,7 @@
#! /usr/bin/env python #! /usr/bin/env python
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
""" u"""
Interface utilisateur du système de gestion des machines Interface utilisateur du système de gestion des machines
et adhérents du crans et adhérents du crans
@ -67,7 +67,7 @@ def dialog(arg):
## Fonctions de remplissage ou modification des paramètres d'un adhérent ## Fonctions de remplissage ou modification des paramètres d'un adhérent
def set_bases(adher): def set_bases(adher):
""" u"""
Définition des paramètres de bases d'un adhérent : Définition des paramètres de bases d'un adhérent :
* Nom * Nom
* Prenom * Prenom
@ -117,7 +117,7 @@ def set_bases(adher):
return set_bases(adher) return set_bases(adher)
def _set_chbre(adher, chbre): def _set_chbre(adher, chbre):
""" Attribution de la chambre chbre à l'adhérent fourni u""" Attribution de la chambre chbre à l'adhérent fourni
Retourne une chaine (unicode) avec l'erreur éventuelle Retourne une chaine (unicode) avec l'erreur éventuelle
""" """
if chbre == '????': if chbre == '????':
@ -145,7 +145,7 @@ def _set_chbre(adher, chbre):
return u'' return u''
def set_addr_ext(adher): def set_addr_ext(adher):
""" Définition de l'adresse extérieure d'un adhérent u""" Définition de l'adresse extérieure d'un adhérent
La chambre de cet adhérent doit être EXT, sinon erreur """ La chambre de cet adhérent doit être EXT, sinon erreur """
arg = u'--title "Adresse extérieure de %s" ' % adher.Nom() arg = u'--title "Adresse extérieure de %s" ' % adher.Nom()
arg += u'--form "" 0 0 0 ' arg += u'--form "" 0 0 0 '
@ -166,7 +166,7 @@ def set_addr_ext(adher):
return set_addr_ext(adher) return set_addr_ext(adher)
def set_etudes(adher): def set_etudes(adher):
""" u"""
Définition des études en 3 questions : Définition des études en 3 questions :
* établissement * établissement
* année administrative * année administrative
@ -364,7 +364,7 @@ def set_etudes(adher):
return set_etudes(adher) return set_etudes(adher)
def set_mail(adher): def set_mail(adher):
""" u"""
Choix d'une adresse mail crans ou extérieure. Choix d'une adresse mail crans ou extérieure.
Retourne ensuite le résultat de : Retourne ensuite le résultat de :
* set_mail_ext si adresse ext * set_mail_ext si adresse ext
@ -400,7 +400,7 @@ def set_mail(adher):
if not set_mail_ext(adher): break if not set_mail_ext(adher): break
def set_mail_ext(adher): def set_mail_ext(adher):
""" u"""
Demande l'adresse mail extérieure d'un adhérent Demande l'adresse mail extérieure d'un adhérent
""" """
default = adher.mail() default = adher.mail()
@ -479,7 +479,7 @@ def set_etat_civil(adher):
return set_etat_civil(adher) return set_etat_civil(adher)
def set_compte(adher): def set_compte(adher):
""" u"""
Créé un compte sur vert pour un adhérent. Créé un compte sur vert pour un adhérent.
""" """
@ -548,7 +548,7 @@ def set_compte(adher):
dialog(arg) dialog(arg)
def set_droits(adher): def set_droits(adher):
""" Définition des droits de l'adhérent """ u""" Définition des droits de l'adhérent """
arg = u'--title "Droits de %s" ' % adher.Nom() arg = u'--title "Droits de %s" ' % adher.Nom()
arg += u'--separate-output ' arg += u'--separate-output '
arg += u'--checklist "" 0 0 0 ' arg += u'--checklist "" 0 0 0 '
@ -575,7 +575,7 @@ def set_droits(adher):
adher.droits(result) adher.droits(result)
def del_adher(adher): def del_adher(adher):
""" u"""
Destruction adhérent Destruction adhérent
""" """
quoi = u'Toutes les machines associées à cet adhérent seront détruites' quoi = u'Toutes les machines associées à cet adhérent seront détruites'
@ -638,7 +638,7 @@ def del_adher(adher):
## Fonctions de remplissage ou modification des paramètres club ## Fonctions de remplissage ou modification des paramètres club
def set_responsable(club): def set_responsable(club):
""" Modifie le responsable d'un club """ u""" Modifie le responsable d'un club """
arg = u'--title "Responsable du club" ' arg = u'--title "Responsable du club" '
arg += u'--msgbox "Séléctionnez l\'adhérent responsable du club\n\n\n" 0 0' arg += u'--msgbox "Séléctionnez l\'adhérent responsable du club\n\n\n" 0 0'
dialog(arg) dialog(arg)
@ -648,7 +648,7 @@ def set_responsable(club):
club.responsable(resp) club.responsable(resp)
def set_imprimeurs(club): def set_imprimeurs(club):
""" Modifie les imprimeurs d'un club """ u""" Modifie les imprimeurs d'un club """
while 1: while 1:
arg = u'--title "Imprimeurs de %s" ' % club.Nom() arg = u'--title "Imprimeurs de %s" ' % club.Nom()
if len(club.imprimeurs()) > 0: if len(club.imprimeurs()) > 0:
@ -669,7 +669,7 @@ def set_imprimeurs(club):
while 1: while 1:
os.system('clear') os.system('clear')
choix = None choix = None
print "Ce club a plusieurs imprimeurs :" print u"Ce club a plusieurs imprimeurs :"
aff(liste) aff(liste)
i = affich_tools.prompt(u'Votre choix ? (0 pour annuler) aid =') i = affich_tools.prompt(u'Votre choix ? (0 pour annuler) aid =')
if i == '0': break if i == '0': break
@ -699,7 +699,7 @@ def set_imprimeurs(club):
arg += u'--msgbox "Cet adhérent n\'est pas imprimeur du club !\n\n\n" 0 0' arg += u'--msgbox "Cet adhérent n\'est pas imprimeur du club !\n\n\n" 0 0'
dialog(arg) dialog(arg)
elif res[0] == 'Ajouter': elif res[0] == u'Ajouter':
newimp = select(club, u'd\'un nouvel imprimeur a', 'ro') newimp = select(club, u'd\'un nouvel imprimeur a', 'ro')
if newimp: if newimp:
if club.imprimeurs(ajouter=str(newimp.id())): if club.imprimeurs(ajouter=str(newimp.id())):
@ -713,6 +713,7 @@ def set_imprimeurs(club):
continue continue
def set_club_nom(club): def set_club_nom(club):
u"""Définit le nom du club"""
# Nom du club # Nom du club
arg = u'--title "Nom" ' arg = u'--title "Nom" '
arg += u'--inputbox "Nom du club ?" 0 0 "%s"' % club.Nom() arg += u'--inputbox "Nom du club ?" 0 0 "%s"' % club.Nom()
@ -727,7 +728,7 @@ def set_club_nom(club):
dialog(arg) dialog(arg)
def set_local(club): def set_local(club):
""" Défini le local d'un club """ u""" Définit le local d'un club """
try: try:
club.chbre('"') # Fait une erreur club.chbre('"') # Fait une erreur
except ValueError, c: except ValueError, c:
@ -750,7 +751,7 @@ def set_local(club):
def set_club_compte(club): def set_club_compte(club):
""" u"""
Créé un compte sur vert pour un club. Créé un compte sur vert pour un club.
""" """
@ -791,7 +792,7 @@ def set_club_compte(club):
## (suivant la classe fournie) ## (suivant la classe fournie)
def set_rque(clas): def set_rque(clas):
"""Définit le commentaire (méthode info de clas)""" u"""Définit le commentaire (méthode info de clas)"""
return __prompt_input_menu(clas.info, u'Remarque', u"Ajouter ou modifier une remarque\nPour ajouter une remarque modifier la dernière de la liste.") return __prompt_input_menu(clas.info, u'Remarque', u"Ajouter ou modifier une remarque\nPour ajouter une remarque modifier la dernière de la liste.")
def __prompt_input_menu(method, titre, prompt): def __prompt_input_menu(method, titre, prompt):
@ -841,7 +842,7 @@ def __prompt_input_menu(method, titre, prompt):
return __prompt_input_menu(method, titre, prompt) return __prompt_input_menu(method, titre, prompt)
def set_solde(clas): def set_solde(clas):
""" Débit ou crédit d'un compte """ u""" Débit ou crédit d'un compte """
while 1: while 1:
arg = u'--title "Crédit / débit du compte de %s" ' % clas.Nom() arg = u'--title "Crédit / débit du compte de %s" ' % clas.Nom()
arg += u'--inputbox "Solde actuel : %s\n Opération à effectuer (+ pour crédits et - pour débit) ?" 0 0 "" ' % clas.solde() arg += u'--inputbox "Solde actuel : %s\n Opération à effectuer (+ pour crédits et - pour débit) ?" 0 0 "" ' % clas.solde()
@ -869,7 +870,7 @@ def set_solde(clas):
dialog(arg) dialog(arg)
def confirm(clas): def confirm(clas):
""" Demande confirmation avant enregistrement""" u""" Demande confirmation avant enregistrement"""
# On va faire en texte, les couleurs ne passent pas en curses # On va faire en texte, les couleurs ne passent pas en curses
os.system('clear') os.system('clear')
aff(clas) aff(clas)
@ -891,7 +892,7 @@ def confirm(clas):
affich_tools.prompt(u"Appuyez sur ENTREE pour continuer") affich_tools.prompt(u"Appuyez sur ENTREE pour continuer")
def set_blackliste(clas): def set_blackliste(clas):
""" Édite ou ajoute un item de la blackliste """ u""" Édite ou ajoute un item de la blackliste """
bl = clas.blacklist() bl = clas.blacklist()
if not bl: if not bl:
# Pas d'entrée à éditer # Pas d'entrée à éditer
@ -1005,7 +1006,7 @@ def set_blackliste(clas):
## Fonction de remplissage ou modification des paramètres club ou adhérent ## Fonction de remplissage ou modification des paramètres club ou adhérent
def on_off(condition): def on_off(condition):
""" u"""
Renvoie 'on' ou 'off' selon la condition (pour dialog). Renvoie 'on' ou 'off' selon la condition (pour dialog).
""" """
if condition: if condition:
@ -1014,7 +1015,7 @@ def on_off(condition):
return 'off' return 'off'
def set_type_de_connexion(adherent): def set_type_de_connexion(adherent):
""" u"""
Définition du type de connexion: gratuite limité ou normale. Définition du type de connexion: gratuite limité ou normale.
""" """
if isinstance(adherent, Club): return if isinstance(adherent, Club): return
@ -1026,7 +1027,7 @@ def set_type_de_connexion(adherent):
adherent.adherentPayant(result == "1") adherent.adherentPayant(result == "1")
def set_admin(proprio): def set_admin(proprio):
""" u"""
Définition de l'état administratif : carte d'étudiant, paiement Définition de l'état administratif : carte d'étudiant, paiement
et caution. et caution.
""" """
@ -1186,7 +1187,7 @@ def new_club(club):
else: break else: break
def modif_club(club): def modif_club(club):
""" u"""
Modification du club fourni (instance de club) Modification du club fourni (instance de club)
Retourne 1 si annulation. Retourne 1 si annulation.
""" """
@ -1235,7 +1236,7 @@ def modif_club(club):
return confirm(club) return confirm(club)
def select_club(clas): def select_club(clas):
""" Choix d'un club """ u""" Choix d'un club """
arg = u'--title "Recherche d\'un club" ' arg = u'--title "Recherche d\'un club" '
clubs = clas.search('cid=*')['club'] clubs = clas.search('cid=*')['club']
@ -1252,8 +1253,8 @@ def select_club(clas):
return clas.search('cid=%s' % res[0], 'w')['club'][0] return clas.search('cid=%s' % res[0], 'w')['club'][0]
def del_club(club): def del_club(club):
""" Destruction club """ u""" Destruction club """
quoi = 'Toutes les machines associées à cet adhérent seront détruites' quoi = u'Toutes les machines associées à cet adhérent seront détruites'
while 1: while 1:
arg = u'--title "Destruction club " --colors ' arg = u'--title "Destruction club " --colors '
arg += u'--inputbox "\Zr\Z1ATTENTION\Zn : la destruction est définitive\n\nToutes les machines de ce club seront également détruites.\n\nCommentaire à insérer ?" 0 0' arg += u'--inputbox "\Zr\Z1ATTENTION\Zn : la destruction est définitive\n\nToutes les machines de ce club seront également détruites.\n\nCommentaire à insérer ?" 0 0'
@ -1333,7 +1334,7 @@ def set_wifi(machine):
elif result[4].lower().strip() == "non": elif result[4].lower().strip() == "non":
machine.hotspot(False) machine.hotspot(False)
else: else:
err += "Les valeurs possibles pour le parametre hotspot\n sont \"oui\" ou \"non\"\n" err += u"Les valeurs possibles pour le parametre hotspot\n sont \"oui\" ou \"non\"\n"
try: try:
#On vérifie toutes les variables avant de sauvegarder #On vérifie toutes les variables avant de sauvegarder
@ -1361,7 +1362,7 @@ def set_wifi(machine):
return set_wifi(machine) return set_wifi(machine)
def set_machine(machine): def set_machine(machine):
""" u"""
Définition des paramètres d'une machine : Définition des paramètres d'une machine :
* Nom de machine * Nom de machine
* Adresse MAC * Adresse MAC
@ -1465,19 +1466,19 @@ def set_machine(machine):
return set_machine(machine) return set_machine(machine)
def set_machine_exemption(machine): def set_machine_exemption(machine):
"""Définit les réseau exemptés de comptage d'upload pour la machine""" u"""Définit les réseau exemptés de comptage d'upload pour la machine"""
if __prompt_input_menu(machine.exempt, u'Exemption', u"Ajouter ou modifier un réseau/une ip vers lequel on ne compte pas l'upload (format x.y.z.t[/m])\nPour ajouter un réseau modifier la fin de la liste.") or confirm(machine): if __prompt_input_menu(machine.exempt, u'Exemption', u"Ajouter ou modifier un réseau/une ip vers lequel on ne compte pas l'upload (format x.y.z.t[/m])\nPour ajouter un réseau modifier la fin de la liste.") or confirm(machine):
machine.restore() machine.restore()
return 1 return 1
def set_machine_alias(machine): def set_machine_alias(machine):
"""Définit la liste des alias d'une machine""" u"""Définit la liste des alias d'une machine"""
if __prompt_input_menu(machine.alias, 'Alias machine', "Entrez ou modifier un alias machine.\nPour ajouter un alias modifier le dernier de la liste.") or confirm(machine): if __prompt_input_menu(machine.alias, 'Alias machine', "Entrez ou modifier un alias machine.\nPour ajouter un alias modifier le dernier de la liste.") or confirm(machine):
machine.restore() machine.restore()
return 1 return 1
def del_machine(machine): def del_machine(machine):
""" u"""
Destruction machine Destruction machine
""" """
while 1: while 1:
@ -1507,7 +1508,7 @@ def del_machine(machine):
## Fonctions principales d'interface ## Fonctions principales d'interface
def new_adher(adher): def new_adher(adher):
""" u"""
Définition des propriétés d'un adhérent Définition des propriétés d'un adhérent
4 etapes : 4 etapes :
* set_bases * set_bases
@ -1542,7 +1543,7 @@ def new_adher(adher):
adher.services_to_restart('ML_ens', [mail]) adher.services_to_restart('ML_ens', [mail])
def modif_adher(adher): def modif_adher(adher):
""" u"""
Modification de l'adhérent fourni (instance de adhérent) Modification de l'adhérent fourni (instance de adhérent)
Retourne 1 si annulation. Retourne 1 si annulation.
""" """
@ -1712,7 +1713,7 @@ def modif_adher(adher):
return confirm(adher) return confirm(adher)
def modif_machine(machine): def modif_machine(machine):
""" u"""
Modification de la machine fournie (instance de machine) Modification de la machine fournie (instance de machine)
Retourne 1 si annulation. Retourne 1 si annulation.
""" """
@ -1768,7 +1769,7 @@ def modif_machine(machine):
## Fonction de sélection (adhérent ou machine) ## Fonction de sélection (adhérent ou machine)
def select(clas, quoi, mde=''): def select(clas, quoi, mde=''):
""" u"""
Interface de choix d'un adhérent, d'une machine ou d'un club Interface de choix d'un adhérent, d'une machine ou d'un club
Retourne une instance de la classe choisie. Retourne une instance de la classe choisie.
quoi est la chaine utilisée pour la demande (%sid=?) quoi est la chaine utilisée pour la demande (%sid=?)
@ -1929,7 +1930,7 @@ def select(clas, quoi, mde=''):
# Sinon retour interface de sélection # Sinon retour interface de sélection
def menu_principal(): def menu_principal():
""" u"""
Affiche le menu de choix initial Affiche le menu de choix initial
""" """
@ -2122,8 +2123,8 @@ def menu_principal():
elif choix == 'Wifi': elif choix == 'Wifi':
becane = MachineWifi(proprio) becane = MachineWifi(proprio)
except ValueError, c: except ValueError, c:
arg = '--title "Nouvelle machine" ' arg = u'--title "Nouvelle machine" '
arg += '--msgbox "%s\n\n\n" 0 0' % c.args[0] arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
dialog(arg) dialog(arg)
continue continue
if set_machine(becane): if set_machine(becane):
@ -2196,16 +2197,16 @@ if __name__ == '__main__':
exit = 0 exit = 0
except KeyboardInterrupt: except KeyboardInterrupt:
os.system('clear') os.system('clear')
print "Interruption par l'utilisateur." print u"Interruption par l'utilisateur."
exit = 255 exit = 255
except SystemExit, c: except SystemExit, c:
if c.__str__() == '254': if c.__str__() == '254':
os.system('reset') os.system('reset')
print "Votre session d'édition a été tuée." print u"Votre session d'édition a été tuée."
exit = c exit = c
except: except:
if not debug: os.system('clear') if not debug: os.system('clear')
print """Une erreur fatale s'est produite durant l'exécution.""" print u"""Une erreur fatale s'est produite durant l'exécution."""
# Report de bug # Report de bug
import traceback import traceback
@ -2234,13 +2235,13 @@ Subject: Bugreport %s
conn.quit() conn.quit()
sys.stderr.write("Un rapport de bug à été automatiquement envoyé.\n") sys.stderr.write("Un rapport de bug à été automatiquement envoyé.\n")
else: else:
print "Merci de faire parvenir un rapport de bug à nounou" print u"Merci de faire parvenir un rapport de bug à nounou"
except: except:
sys.stderr.write("Impossible d'envoyer le rapport de bug.\n") sys.stderr.write("Impossible d'envoyer le rapport de bug.\n")
if debug: if debug:
print '-'*40 print '-'*40
print 'Détails techniques :' print u'Détails techniques :'
sys.stderr.write(traceback) sys.stderr.write(traceback)
print '-'*40 print '-'*40
exit = 1 exit = 1
@ -2259,9 +2260,9 @@ Subject: Bugreport %s
# Restart toutes les 10 min : 03, 13, 23, 33, 43, 53 # Restart toutes les 10 min : 03, 13, 23, 33, 43, 53
t = (13 - mn % 10) % 10 + 1 # Certaines machines le font -Aà 4-b t = (13 - mn % 10) % 10 + 1 # Certaines machines le font -Aà 4-b
if t == 0: t = 10 if t == 0: t = 10
print "Les modifications apportées à la base seront prises en compte dans %i min environ." % t print u"Les modifications apportées à la base seront prises en compte dans %i min environ." % t
if debug: if debug:
print "Les services suivants seront redémarrés: " print u"Les services suivants seront redémarrés: "
for s in serv: for s in serv:
print '\t%s' % s print '\t%s' % s

File diff suppressed because it is too large Load diff