diff --git a/gestion/mail/bornes_a.py b/gestion/mail/bornes_a.py index 4d537947..c7967cfc 100755 --- a/gestion/mail/bornes_a.py +++ b/gestion/mail/bornes_a.py @@ -2,12 +2,13 @@ # -*- coding: utf-8 -*- # Auteur: Gabriel Detraz -from lc_ldap import shortcuts -import smtplib from email.header import Header from email.MIMEText import MIMEText from email.Utils import formatdate +from lc_ldap import shortcuts +import gestion.mail as mail_module + SEND = False con = shortcuts.lc_ldap_readonly() @@ -48,5 +49,6 @@ Les membres actifs du Crans''' MonEmail['To'] = m2 MonEmail['Date'] = formatdate(localtime=True) if SEND: - Serveur_SMTP.sendmail('cableurs@lists.crans.org', m2, MonEmail.as_string()) + with mail_module.ServerConnection() as conn: + conn.sendmail('cableurs@lists.crans.org', m2, MonEmail.as_string()) Serveur_SMTP.quit() diff --git a/gestion/mail/carte_etudiant.py b/gestion/mail/carte_etudiant.py index 90edf29e..601d8db0 100755 --- a/gestion/mail/carte_etudiant.py +++ b/gestion/mail/carte_etudiant.py @@ -2,7 +2,6 @@ # -*- coding: utf-8 -*- import sys -import smtplib import datetime import pytz from gestion import config @@ -32,29 +31,29 @@ for adh in conn.search(ldap_filter): continue mailaddrs.add(mail) +print "Va envoyer le message à %s personnes." % len(mailaddrs) if not SEND: - print "Va envoyer le message à %s personnes. Mettre la variable SEND à True effectuer l'envoie" % len(mailaddrs) - print "Appuyer sur entrée pour simuler la génération" - raw_input() + print "Mettre la variable SEND à True effectuer l'envoi" +print "Appuyer sur entrée pour la génération" +raw_input() echecs=[] -conn_smtp=smtplib.SMTP('smtp.adm.crans.org') -for To in mailaddrs: - cprint(u"Envoi du mail à %s" % To) - params = { - 'deadline': deadline, - 'To': To, - 'lang_info': 'English version below', - } - mailtxt=mail_module.generate('carte_etudiant', params).as_string() - try: - if SEND: - conn_smtp.sendmail("cableurs@crans.org", (To,), mailtxt) - except: - cprint(u"Erreur lors de l'envoi à %s " % To, "rouge") - echecs.append(To) - -conn_smtp.quit() +with mail_module.ServerConnection() as conn_smtp: + for To in mailaddrs: + cprint(u"Envoi du mail à %s" % To) + params = { + 'deadline': deadline, + 'To': To, + 'lang_info': 'English version below', + } + mailtxt=mail_module.generate('carte_etudiant', params).as_string() + try: + # TODO DBG_MAIL + if SEND: + conn_smtp.sendmail("cableurs@crans.org", (To,), mailtxt) + except: + cprint(u"Erreur lors de l'envoi à %s " % To, "rouge") + echecs.append(To) if echecs: print "\nIl y a eu des erreurs :" diff --git a/gestion/mail/installparty.py b/gestion/mail/installparty.py index b424a47a..af805dfe 100755 --- a/gestion/mail/installparty.py +++ b/gestion/mail/installparty.py @@ -2,12 +2,13 @@ # -*- coding: utf-8 -*- import sys -import smtplib + from gestion import config from gestion.affich_tools import cprint from gestion import mail import lc_ldap.shortcuts import gestion.config +import gestiom.mail as mail_module # Attention, si à True envoie effectivement les mails SEND=False @@ -35,18 +36,16 @@ print "Appuyer sur une touche pour continuer." raw_input() echecs=[] -conn_smtp=smtplib.SMTP('smtp.adm.crans.org') -for To in mailaddrs: - cprint(u"Envoi du mail à %s" % To) - mailtxt=mail.generate('install-party', {'To':To}).as_string() - try: - if SEND: - conn_smtp.sendmail("cableurs@crans.org", (To,), mailtxt) - except: - cprint(u"Erreur lors de l'envoi à %s " % To, "rouge") - echecs.append(To) - -conn_smtp.quit() +with mail_module.ServerConnection() as conn_smtp: + for To in mailaddrs: + cprint(u"Envoi du mail à %s" % To) + mailtxt=mail.generate('install-party', {'To':To}).as_string() + try: + if SEND: + conn_smtp.sendmail("cableurs@crans.org", (To,), mailtxt) + except: + cprint(u"Erreur lors de l'envoi à %s " % To, "rouge") + echecs.append(To) if echecs: print "\nIl y a eu des erreurs :"