From c9bc130439a40251d37a9268eb1055ab7532128d Mon Sep 17 00:00:00 2001 From: glondu Date: Tue, 5 Jun 2007 09:43:55 +0200 Subject: [PATCH] Adaptation au nouveau wiki et amliorations... darcs-hash:20070605074355-68412-17c9c8fbb6903bd9364cf4f8ae7e781c2052d9f2.gz --- creer_compte_wiki.py | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/creer_compte_wiki.py b/creer_compte_wiki.py index f63b9ec5..d4084ea0 100755 --- a/creer_compte_wiki.py +++ b/creer_compte_wiki.py @@ -14,32 +14,37 @@ from email.MIMEMultipart import MIMEMultipart from email.Encoders import encode_7or8bit sys.path.append("/usr/scripts/gestion") -from affich_tools import coul, prompt +from affich_tools import coul, prompt, cprint +from user_tests import getuser bugmail = ["glondu@crans.org"] bugreport = u""" -Nom d'utilisateur : %(username)s +Nom d'utilisateur : %(name)s Adresse e-mail : %(email)s """ # C'est l'encodage du wiki et des bugreports encoding = "utf-8" +# Utilisateur qui lance le script +user = getuser() + def send(msg): - msg['From'] = 'root@crans.org' + msg['From'] = '%s@crans.org' % user msg['To'] = ','.join(bugmail) + msg['User-Agent'] = 'creer_compte_wiki.py' smtp = SMTP() smtp.connect() - smtp.sendmail('glondu@crans.org', bugmail, msg.as_string()) + smtp.sendmail('%s@crans.org' % user, bugmail, msg.as_string()) smtp.quit() def creer_compte(nom, mdp, email): form = {'action': 'userform', - 'username': nom.encode(encoding), + 'name': nom.encode(encoding), 'password': mdp, 'password2': mdp, 'email': email.encode(encoding), - 'save': 'Create Profile'} + 'create': 'Create Profile'} params = urllib.urlencode(form) headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"} @@ -48,7 +53,10 @@ def creer_compte(nom, mdp, email): response = conn.getresponse() data = response.read() conn.close() - if 'User preferences saved!' in data: + if 'User account created!' in data: + msg = MIMEText(bugreport.encode(encoding) % form, 'plain', encoding) + msg['Subject'] = "creer_compte_wiki.py: success" + send(msg) return coul(u"Compte %s créé avec succès !" % nom, "vert") elif 'This user name already belongs to somebody else.' in data: return coul(u"Le compte %s existe déjà !" % nom, "rouge") @@ -85,6 +93,8 @@ if __name__ == '__main__': mdp = getpass(coul("Mot de passe (ne pas utiliser le même que pour zamok) : ", "gras")) if getpass(coul("Confirmation du mot de passe :", "gras")) == mdp: break + else: + cprint(u"Les deux mots de passe sont différents, veuillez réessayer...", "rouge") email = prompt("Adresse e-mail : ") print creer_compte(nom, mdp, email)