diff --git a/gestion/mail/carte_etudiant.py b/gestion/mail/carte_etudiant.py new file mode 100755 index 00000000..dc1aa17b --- /dev/null +++ b/gestion/mail/carte_etudiant.py @@ -0,0 +1,47 @@ +#!/bin/bash /usr/scripts/python.sh +# -*- 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 + +# Attention, si à True envoie effectivement les mails +SEND=False +deadline="mardi 5 novembre" +ldap_filter=u"(&(paiement=%(annee)s)(!(carteEtudiant=%(annee)s))(!(etudes=Personnel ENS))(aid=*))" % {'annee': config.ann_scol} + +conn=lc_ldap.shortcuts.lc_ldap_readonly() +mailaddrs=set() +for adh in conn.search(ldap_filter): + if 'canonicalAlias' in adh.attrs.keys(): + mailaddrs.add(str(adh['canonicalAlias'][0])) + elif 'mail' in adh.attrs.keys(): + mailaddrs.add(str(adh['mail'][0])) + 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) + +echecs=[] +conn_smtp=smtplib.SMTP('smtp.adm.crans.org') +for To in mailaddrs: + cprint(u"Envoi du mail à %s" % To) + mailtxt=mail.generate('carte_etudiant', {'deadline':deadline, '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() + +if echecs: + print "\nIl y a eu des erreurs :" + print echecs diff --git a/gestion/mail/template/carte_etudiant/From/fr b/gestion/mail/template/carte_etudiant/From/fr new file mode 100644 index 00000000..d881fd7f --- /dev/null +++ b/gestion/mail/template/carte_etudiant/From/fr @@ -0,0 +1 @@ +Les câbleurs du Crans diff --git a/gestion/mail/template/carte_etudiant/Subject/fr b/gestion/mail/template/carte_etudiant/Subject/fr new file mode 100644 index 00000000..9ab3b4fb --- /dev/null +++ b/gestion/mail/template/carte_etudiant/Subject/fr @@ -0,0 +1 @@ +[Crans] Rappel carte d'étudiant diff --git a/gestion/mail/template/carte_etudiant/To/fr b/gestion/mail/template/carte_etudiant/To/fr new file mode 100644 index 00000000..38476730 --- /dev/null +++ b/gestion/mail/template/carte_etudiant/To/fr @@ -0,0 +1 @@ +{{To}} diff --git a/gestion/mail/template/carte_etudiant/body/_fr_old b/gestion/mail/template/carte_etudiant/body/_fr_old new file mode 100644 index 00000000..4a135bad --- /dev/null +++ b/gestion/mail/template/carte_etudiant/body/_fr_old @@ -0,0 +1,17 @@ +Cher adhérent, + +Il apparaît que tu n'as pas encore fourni de justificatif de scolarité +valide pour l'année en cours. Le Crans utilisant le réseau RENATER, il lui +est nécessaire d'avoir une copie d'un papier attestant de ton statut +d'étudiant. + +Il est nécessaire que tu viennes à la Kfet avec un certificat de scolarité +original ou ta carte d'étudiant, avant le {{deadline}}. Si tu ne +pouvais venir avant cette date, ton accès serai suspendu jusqu'à ce que tu +régularises ta situation. + +Bien cordialement, + +-- +Les câbleurs + diff --git a/gestion/mail/template/carte_etudiant/body/fr b/gestion/mail/template/carte_etudiant/body/fr new file mode 100644 index 00000000..fc503f65 --- /dev/null +++ b/gestion/mail/template/carte_etudiant/body/fr @@ -0,0 +1,16 @@ +Cher adhérent, + +Il apparaît que tu n'as pas encore fourni de justificatif de scolarité +valide pour l'année en cours. Le Crans utilisant le réseau RENATER, il lui +est demandé de pouvoir justifier ton statut d'étudiant. + +Ainsi, il est nécessaire que tu viennes à la Kfet avec un certificat de +scolarité original ou ta carte d'étudiant, avant le {{deadline}}. Si tu ne +pouvais venir avant cette date, ton accès serait suspendu jusqu'à ce que tu +régularises ta situation. + +Bien cordialement, + +-- +Les câbleurs +