Utilisation de l'encodage trouvé dans config (et drop de la variable locale)

This commit is contained in:
Pierre-Elliott Bécue 2015-12-01 02:26:56 +01:00
parent fdca02be27
commit 0918366bb8

View file

@ -25,7 +25,6 @@ import lc_ldap.attributs
import lc_ldap.objets import lc_ldap.objets
import gestion.mail as mail_module import gestion.mail as mail_module
encoding = getattr(sys.stdout, 'encoding', "UTF-8")
current_user = os.getenv("SUDO_USER") or os.getenv("USER") or os.getenv("LOGNAME") or getpass.getuser() current_user = os.getenv("SUDO_USER") or os.getenv("USER") or os.getenv("LOGNAME") or getpass.getuser()
def check_password(password, no_cracklib=False, dialog=False): def check_password(password, no_cracklib=False, dialog=False):
@ -101,7 +100,7 @@ def check_password(password, no_cracklib=False, dialog=False):
msg = affich_tools.coul(msg, 'rouge', dialog=dialog) msg = affich_tools.coul(msg, 'rouge', dialog=dialog)
return True, msg return True, msg
except ValueError as e: except ValueError as e:
msg += str(e).decode('utf-8') msg += str(e).decode(config.in_encoding)
if dialog: if dialog:
msg = affich_tools.coul(msg, 'rouge', dialog=dialog) msg = affich_tools.coul(msg, 'rouge', dialog=dialog)
@ -127,7 +126,7 @@ def change_password(ldap, login=None, verbose=False, no_cracklib=False, **args):
if login is None: if login is None:
login = current_user login = current_user
if type(login) == str: if type(login) == str:
login = login.decode(encoding) login = login.decode(config.in_encoding)
login = lc_ldap.crans_utils.escape(login) login = lc_ldap.crans_utils.escape(login)
query = ldap.search(u"(uid=%s)" % login, mode="w") query = ldap.search(u"(uid=%s)" % login, mode="w")
if not query: if not query:
@ -139,7 +138,7 @@ def change_password(ldap, login=None, verbose=False, no_cracklib=False, **args):
user['userPassword'] = [lc_ldap.crans_utils.hash_password("test").decode('ascii')] user['userPassword'] = [lc_ldap.crans_utils.hash_password("test").decode('ascii')]
user.cancel() user.cancel()
except EnvironmentError as e: except EnvironmentError as e:
affich_tools.cprint(str(e).decode(encoding), "rouge") affich_tools.cprint(str(e).decode(config.in_encoding), "rouge")
# Génération d'un mail # Génération d'un mail
From = 'roots@crans.org' From = 'roots@crans.org'
@ -149,7 +148,7 @@ To: %s
Subject: Tentative de changement de mot de passe ! Subject: Tentative de changement de mot de passe !
Tentative de changement du mot de passe de %s par %s. Tentative de changement du mot de passe de %s par %s.
""" % (From, To , login.encode(encoding), current_user) """ % (From, To , login.encode(config.out_encoding), current_user)
# Envoi mail # Envoi mail
with mail_module.ServerConnection() as conn: with mail_module.ServerConnection() as conn: