diff --git a/gestion/mail/carte_etudiant.py b/gestion/mail/carte_etudiant.py index dc1aa17b..be2ebe31 100755 --- a/gestion/mail/carte_etudiant.py +++ b/gestion/mail/carte_etudiant.py @@ -23,7 +23,6 @@ for adh in conn.search(ldap_filter): else: raise ValueError("%r has nor mail nor canonicalAlias, only %s" % (adh, adh.attrs.keys())) -#mailaddrs=["David.Marshall@crans.org", "Bertrand.Bryche@crans.org", "Karima.Toiybou@crans.org", "Thomas.Marchandier@crans.org"] if not SEND: print "Va envoyer le message à %s personnes. Mettre la variable SEND à True effectuer l'envoie" % len(mailaddrs) sys.exit(0) diff --git a/gestion/mail/reinscription.py b/gestion/mail/reinscription.py index adb5875f..835d1b1c 100755 --- a/gestion/mail/reinscription.py +++ b/gestion/mail/reinscription.py @@ -7,15 +7,25 @@ from gestion import config from gestion.affich_tools import cprint from gestion import mail import lc_ldap.shortcuts +import gestion.config + +gestion.config.periode_transitoire = False # Attention, si à True envoie effectivement les mails SEND=False -ldap_filter=u'(&(!(chbre=????))(chbre=*)(!(chbre=EXT))(paiement=2013)(aid=*))' +# Tous les gens adhérents l'année dernière, qui ont toujours une chambre sur le +# campus (les autres ont potentiellement répondu à chambres_invalides, donc +# on ne va pas les respammer). On considère aussi les membres actifs, +# invariablement. +ldap_filter=u'(&(|(droits=*)(&(!(chbre=????))(chbre=*)(!(chbre=EXT))))(paiement=2013)(aid=*))' conn=lc_ldap.shortcuts.lc_ldap_readonly() mailaddrs=set() for adh in conn.search(ldap_filter): + # Déjà payé pour l'année en cours + if adh.paiement_ok(): + continue if 'canonicalAlias' in adh.attrs.keys(): mailaddrs.add(str(adh['canonicalAlias'][0])) elif 'mail' in adh.attrs.keys(): @@ -23,15 +33,17 @@ for adh in conn.search(ldap_filter): else: raise ValueError("%r has nor mail nor canonicalAlias, only %s" % (adh, adh.attrs.keys())) -#mailaddrs=["David.Marshall@crans.org", "Bertrand.Bryche@crans.org", "Karima.Toiybou@crans.org", "Thomas.Marchandier@crans.org"] +print "Va envoyer le message à %s personnes." if not SEND: - print "Va envoyer le message à %s personnes. Mettre la variable SEND à True effectuer l'envoi" % len(mailaddrs) - + print "(Simulation only) Mettre la variable SEND à True effectuer l'envoi" % len(mailaddrs) +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('reinscription', {'To':To}).as_string() + mailtxt=mail.generate('reinscription', {'To':To, 'lang_info':'English version below'}).as_string() try: if SEND: conn_smtp.sendmail("cableurs@crans.org", (To,), mailtxt)