[creer_compte_wiki] On renvoie un message et un code d'erreur

This commit is contained in:
Lucas Serrano 2013-11-02 23:10:09 +01:00
parent 699d2ca175
commit 5810ffa5e3

View file

@ -56,15 +56,15 @@ def creer_compte(nom, mdp, email):
msg = MIMEText(bugreport.encode(encoding) % form, 'plain', encoding) msg = MIMEText(bugreport.encode(encoding) % form, 'plain', encoding)
msg['Subject'] = "creer_compte_wiki.py: success" msg['Subject'] = "creer_compte_wiki.py: success"
send(msg) send(msg)
return coul(u"Compte %s créé avec succès !" % nom, "vert") return u"Compte %s créé avec succès !" % nom, False
elif 'nonunique name' in data: elif 'nonunique name' in data:
return coul(u"Le compte %s existe déjà !" % nom, "rouge") return u"Le compte %s existe déjà !" % nom, True
elif 'nonunique email' in data: elif 'nonunique email' in data:
return coul(u"L'adresse %s est déjà utilisée !" % email, "rouge") return u"L'adresse %s est déjà utilisée !" % email, True
elif 'Password not acceptable: Password too short.' in data: elif 'Password not acceptable: Password too short.' in data:
return coul(u"Le mot de passe choisi est trop court", "rouge") return u"Le mot de passe choisi est trop court", True
elif 'invalid name' in data: elif 'invalid name' in data:
msg = coul(u"Le nom d'utilisateur %s est invalide !" % nom, "rouge") msg = u"Le nom d'utilisateur %s est invalide !" % nom
msg += u""" msg += u"""
Le nom d'utilisateur doit être un WikiNom, voir à ce sujet : Le nom d'utilisateur doit être un WikiNom, voir à ce sujet :
http://wiki.crans.org/NomWiki http://wiki.crans.org/NomWiki
@ -72,7 +72,7 @@ Il peut contenir n'importe quel caract
éventuellement un espace facultatif entre chaque mot. Il peut aussi éventuellement un espace facultatif entre chaque mot. Il peut aussi
contenir des accents, mais assurez-vous que votre terminal est contenir des accents, mais assurez-vous que votre terminal est
correctement configuré (en %s).""" % (locale.getdefaultlocale()[1]) correctement configuré (en %s).""" % (locale.getdefaultlocale()[1])
return msg return msg, True
else: else:
html = MIMEBase('text', 'html') html = MIMEBase('text', 'html')
html.set_payload(data) html.set_payload(data)
@ -96,7 +96,12 @@ if __name__ == '__main__':
else: else:
cprint(u"Les deux mots de passe sont différents, veuillez réessayer...", "jaune") cprint(u"Les deux mots de passe sont différents, veuillez réessayer...", "jaune")
email = prompt("Adresse e-mail : ") email = prompt("Adresse e-mail : ")
print creer_compte(nom, mdp, email) message, erreur = creer_compte(nom, mdp, email)
if erreur:
print coul(message, "rouge")
else:
print coul(message, "vert")
except KeyboardInterrupt: except KeyboardInterrupt:
print "Interruption par l'utilisateur." print "Interruption par l'utilisateur."