[gest_crans] encodage correct des messages d'erreurs pour diminuer le nombre de crashes
darcs-hash:20110902081727-ffbb2-088627e2bfec99425459dc38ec882fe287ed78b4.gz
This commit is contained in:
parent
350eddd113
commit
ef1ebd1ac2
2 changed files with 26 additions and 23 deletions
|
@ -106,16 +106,19 @@ OK = coul('OK', 'vert')
|
||||||
WARNING = coul('WARNING', 'jaune')
|
WARNING = coul('WARNING', 'jaune')
|
||||||
ERREUR = coul('ERREUR', 'rouge')
|
ERREUR = coul('ERREUR', 'rouge')
|
||||||
|
|
||||||
def to_encoding(txt, enc=encoding):
|
def to_unicode(txt, enc=encoding):
|
||||||
if type(txt) == unicode:
|
if isinstance(txt, unicode):
|
||||||
return txt.encode(enc, 'ignore')
|
return txt
|
||||||
else:
|
else:
|
||||||
# On suppose d'abord que le texte est en UTF-8
|
# On suppose d'abord que le texte est en UTF-8
|
||||||
try:
|
try:
|
||||||
return txt.decode("UTF-8").encode(enc, 'ignore')
|
return txt.decode("UTF-8")
|
||||||
except:
|
except:
|
||||||
# Sinon c'est surement de l'iso
|
# Sinon c'est surement de l'iso
|
||||||
return txt.decode("ISO8859-15").encode(enc, 'ignore')
|
return txt.decode("ISO8859-15")
|
||||||
|
|
||||||
|
def to_encoding(txt, enc=encoding):
|
||||||
|
return to_unicode(txt).encode(enc, 'ignore')
|
||||||
|
|
||||||
def cprint(txt, col='blanc', newline=True):
|
def cprint(txt, col='blanc', newline=True):
|
||||||
t = coul(to_encoding(txt), col)
|
t = coul(to_encoding(txt), col)
|
||||||
|
|
|
@ -32,7 +32,7 @@ from time import strftime, strptime, localtime, mktime
|
||||||
import re
|
import re
|
||||||
|
|
||||||
import affich_tools, config
|
import affich_tools, config
|
||||||
from affich_tools import cprint, to_encoding
|
from affich_tools import cprint, to_encoding, to_unicode
|
||||||
from lock import make_lock, remove_lock
|
from lock import make_lock, remove_lock
|
||||||
from ldap_crans import crans_ldap, blacklist_items, ann_scol, droits_possibles, droits_critiques, smtpserv, script_utilisateur
|
from ldap_crans import crans_ldap, blacklist_items, ann_scol, droits_possibles, droits_critiques, smtpserv, script_utilisateur
|
||||||
from ldap_crans import Adherent, AssociationCrans, Club
|
from ldap_crans import Adherent, AssociationCrans, Club
|
||||||
|
@ -117,7 +117,7 @@ def set_bases(adher):
|
||||||
# Des erreurs ?
|
# Des erreurs ?
|
||||||
if err:
|
if err:
|
||||||
arg = u'--title "Inscription adhérent" '
|
arg = u'--title "Inscription adhérent" '
|
||||||
arg += u'--msgbox "%s\n\n" 0 0' % err
|
arg += u'--msgbox "%s\n\n" 0 0' % to_unicode(err)
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
# On redemande
|
# On redemande
|
||||||
return set_bases(adher)
|
return set_bases(adher)
|
||||||
|
@ -172,7 +172,7 @@ def set_addr_ext(adher):
|
||||||
try: adher.adresse(result)
|
try: adher.adresse(result)
|
||||||
except ValueError, c:
|
except ValueError, c:
|
||||||
arg = u'--title "Adresse extérieure de %s" ' % adher.Nom()
|
arg = u'--title "Adresse extérieure de %s" ' % adher.Nom()
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
# On redemande
|
# On redemande
|
||||||
return set_addr_ext(adher)
|
return set_addr_ext(adher)
|
||||||
|
@ -370,7 +370,7 @@ def set_etudes(adher):
|
||||||
adher.etudes(etudes)
|
adher.etudes(etudes)
|
||||||
except ValueError, c:
|
except ValueError, c:
|
||||||
arg = u'--title "Etudes de %s" ' % adher.Nom()
|
arg = u'--title "Etudes de %s" ' % adher.Nom()
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
return set_etudes(adher)
|
return set_etudes(adher)
|
||||||
|
|
||||||
|
@ -427,7 +427,7 @@ def set_mail_ext(adher):
|
||||||
try: adher.mail(result[0])
|
try: adher.mail(result[0])
|
||||||
except ValueError, c:
|
except ValueError, c:
|
||||||
arg = u'--title "Adresse mail extérieure de %s" ' % adher.Nom()
|
arg = u'--title "Adresse mail extérieure de %s" ' % adher.Nom()
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
return set_mail_ext(adher)
|
return set_mail_ext(adher)
|
||||||
|
|
||||||
|
@ -462,7 +462,7 @@ def set_etat_civil(adher):
|
||||||
# Des erreurs ?
|
# Des erreurs ?
|
||||||
if err:
|
if err:
|
||||||
arg = u'--title "État-civil de %s" ' % adher.Nom()
|
arg = u'--title "État-civil de %s" ' % adher.Nom()
|
||||||
arg += u'--msgbox "%s\n\n" 0 0' % err
|
arg += u'--msgbox "%s\n\n" 0 0' % to_unicode(err)
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
# On redemande
|
# On redemande
|
||||||
return set_etat_civil(adher)
|
return set_etat_civil(adher)
|
||||||
|
@ -538,7 +538,7 @@ def set_compte(adher):
|
||||||
except ValueError, c: e = c.args[0]
|
except ValueError, c: e = c.args[0]
|
||||||
if e:
|
if e:
|
||||||
arg = u'--title "Création compte crans pour %s" ' % adher.Nom()
|
arg = u'--title "Création compte crans pour %s" ' % adher.Nom()
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % e
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(e)
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
continue
|
continue
|
||||||
break
|
break
|
||||||
|
@ -786,7 +786,7 @@ def set_club_nom(club):
|
||||||
club.Nom(res[0])
|
club.Nom(res[0])
|
||||||
except ValueError, c:
|
except ValueError, c:
|
||||||
arg = u'--title "Nom club" '
|
arg = u'--title "Nom club" '
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
|
|
||||||
def set_local(club):
|
def set_local(club):
|
||||||
|
@ -897,7 +897,7 @@ def __prompt_input_menu(method, titre, prompt):
|
||||||
|
|
||||||
except ValueError, c:
|
except ValueError, c:
|
||||||
arg = u'--title "%s" ' % titre
|
arg = u'--title "%s" ' % titre
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
return __prompt_input_menu(method, titre, prompt)
|
return __prompt_input_menu(method, titre, prompt)
|
||||||
else:
|
else:
|
||||||
|
@ -928,7 +928,7 @@ def set_solde(clas):
|
||||||
break
|
break
|
||||||
except ValueError, c:
|
except ValueError, c:
|
||||||
arg = u'--title "Opération impossible" '
|
arg = u'--title "Opération impossible" '
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
|
|
||||||
def confirm(clas):
|
def confirm(clas):
|
||||||
|
@ -946,7 +946,7 @@ def confirm(clas):
|
||||||
res = clas.save()
|
res = clas.save()
|
||||||
except RuntimeError, c:
|
except RuntimeError, c:
|
||||||
arg = u'--title "Enregistrement" '
|
arg = u'--title "Enregistrement" '
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
|
@ -1056,7 +1056,7 @@ def set_blackliste(clas):
|
||||||
step += 1
|
step += 1
|
||||||
except ValueError, c:
|
except ValueError, c:
|
||||||
arg = u'--title "Erreur" '
|
arg = u'--title "Erreur" '
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
step -= 1
|
step -= 1
|
||||||
|
|
||||||
|
@ -1429,7 +1429,7 @@ def set_wifi(machine):
|
||||||
# Des erreurs ?
|
# Des erreurs ?
|
||||||
if err:
|
if err:
|
||||||
arg = u'--title "Paramètres machine wifi" '
|
arg = u'--title "Paramètres machine wifi" '
|
||||||
arg += u'--msgbox "%s\n\n" 0 0' % err
|
arg += u'--msgbox "%s\n\n" 0 0' % to_unicode(err)
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
# On redemande
|
# On redemande
|
||||||
return set_wifi(machine)
|
return set_wifi(machine)
|
||||||
|
@ -1533,7 +1533,7 @@ def set_machine(machine):
|
||||||
# Des erreurs ?
|
# Des erreurs ?
|
||||||
if err:
|
if err:
|
||||||
arg = u'--title "Paramètres machine" '
|
arg = u'--title "Paramètres machine" '
|
||||||
arg += u'--msgbox "%s\n\n" 0 0' % err
|
arg += u'--msgbox "%s\n\n" 0 0' % to_unicode(err)
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
# On redemande
|
# On redemande
|
||||||
return set_machine(machine)
|
return set_machine(machine)
|
||||||
|
@ -1571,7 +1571,7 @@ def del_machine(machine):
|
||||||
machine.delete(res[0])
|
machine.delete(res[0])
|
||||||
except EnvironmentError, c:
|
except EnvironmentError, c:
|
||||||
arg = u'--title "Destruction machine" '
|
arg = u'--title "Destruction machine" '
|
||||||
arg += u'--msgbox "ERREUR n°%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "ERREUR n°%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
|
@ -1764,7 +1764,7 @@ def modif_adher(adher):
|
||||||
break
|
break
|
||||||
except ValueError, c:
|
except ValueError, c:
|
||||||
arg = u'--title "Changement numéro de téléphone de de %s" ' % adher.Nom()
|
arg = u'--title "Changement numéro de téléphone de de %s" ' % adher.Nom()
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
|
|
||||||
elif res[0] == 'Alias':
|
elif res[0] == 'Alias':
|
||||||
|
@ -1782,7 +1782,7 @@ def modif_adher(adher):
|
||||||
break
|
break
|
||||||
except ValueError, c:
|
except ValueError, c:
|
||||||
arg = u'--title "Changement du shell de %s" ' % adher.Nom()
|
arg = u'--title "Changement du shell de %s" ' % adher.Nom()
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
|
|
||||||
elif res[0] == 'Solde':
|
elif res[0] == 'Solde':
|
||||||
|
@ -2202,7 +2202,7 @@ def menu_principal():
|
||||||
becane = MachineWifi(proprio)
|
becane = MachineWifi(proprio)
|
||||||
except ValueError, c:
|
except ValueError, c:
|
||||||
arg = u'--title "Nouvelle machine" '
|
arg = u'--title "Nouvelle machine" '
|
||||||
arg += u'--msgbox "%s\n\n\n" 0 0' % c.args[0]
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(c.args[0])
|
||||||
dialog(arg)
|
dialog(arg)
|
||||||
continue
|
continue
|
||||||
if set_machine(becane):
|
if set_machine(becane):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue