deconnexion.py: rationalisation mails
Le mail de déco ET le mail de notification à disconnect sont templatisés et utilisent le même jeu de données (ça fait moins de code)
This commit is contained in:
parent
7340729fdc
commit
3cab7f9980
8 changed files with 67 additions and 57 deletions
|
@ -19,8 +19,8 @@ import smtplib
|
|||
from time import *
|
||||
|
||||
from gestion.config import NETs, plage_ens, prefix
|
||||
from gestion.config import upload as config_upload
|
||||
import gestion.config.mails.upload as upload
|
||||
from gestion.config import upload as upload
|
||||
import gestion.config.mails.upload as mails_upload
|
||||
from gestion.ldap_crans import crans_ldap
|
||||
from gestion.ldap_crans import MachineFixe
|
||||
|
||||
|
@ -176,12 +176,44 @@ for elupload, eltype, elid in uploadeurs:
|
|||
|
||||
mdcf = tableau(macs_dates_chambres, ('mac', 'date', 'chambre'), (20, 21, 7), ('c', 'c', 'c'))
|
||||
|
||||
# Début de remplissage du mail
|
||||
##############################
|
||||
if eltype == "club":
|
||||
theid = "cid="
|
||||
else:
|
||||
theid = "aid="
|
||||
theid += proprio.id()
|
||||
|
||||
# Test: validation_url('upload')
|
||||
try:
|
||||
data = {'dn': theid,
|
||||
'blid': len(proprio.blacklist())}
|
||||
reco_url = mail_module.validation_url('upload', data)
|
||||
reco_url_error = ""
|
||||
except Exception as e:
|
||||
reco_url_error = "[[erreur de génération: %r]]" % e
|
||||
reco_url = ""
|
||||
|
||||
mail_data = {
|
||||
'from': upload.expediteur,
|
||||
'to': proprio.email(),
|
||||
'upload': "%.2f" % (elupload,),
|
||||
'proprio': proprio.Nom(),
|
||||
'lang_info':'English version below',
|
||||
'mdc': mdcf,
|
||||
'chambre': proprio.chbre(),
|
||||
'id': theid,
|
||||
'reco_url': reco_url,
|
||||
'reco_url_error': reco_url_error,
|
||||
}
|
||||
|
||||
# On sanctionne
|
||||
###############
|
||||
debut = int(time())
|
||||
fin = debut + 24*3600
|
||||
orig = strftime("%Y/%m/%d %H:%M:%S", localtime(debut - 86400))
|
||||
end = strftime("%Y/%m/%d %H:%M:%S", localtime(debut))
|
||||
|
||||
try:
|
||||
proprio.blacklist([debut, fin, 'autodisc_upload', "Déconn auto. %s Mo" % elupload])
|
||||
proprio.save()
|
||||
|
@ -195,34 +227,16 @@ for elupload, eltype, elid in uploadeurs:
|
|||
|
||||
# On envoie un mail à l'adhérent
|
||||
################################
|
||||
if eltype == "club":
|
||||
theid = "cid="
|
||||
else:
|
||||
theid = "aid="
|
||||
theid += proprio.id()
|
||||
|
||||
# Test: validation_url('upload')
|
||||
try:
|
||||
data = {'dn': theid,
|
||||
'blid': len(proprio.blacklist())-1}
|
||||
reco_url = mail_module.validation_url('upload', data)
|
||||
except Exception as e:
|
||||
reco_url = "[[erreur de génération: %r]]" % e
|
||||
|
||||
mail = connectsmtp()
|
||||
|
||||
corps = mail_module.generate('upload_hard', {'from': upload.expediteur, 'to': proprio.email(), 'upload': "%.2f" % (elupload,), 'proprio': proprio.Nom(), 'lang_info':'English version below'}).as_string()
|
||||
corps = mail_module.generate('upload_hard', mail_data).as_string()
|
||||
mail.sendmail(upload.expediteur, proprio.email(), corps)
|
||||
|
||||
# On envoie un mail à disconnect
|
||||
################################
|
||||
if upload.disconnect_mail_hard:
|
||||
mail_disconnect_hard = mails_upload.Message_disconnect_hard(upload.expediteur,
|
||||
upload.expediteur, proprio=proprio.Nom(), id=theid,
|
||||
upload="%.2f" % (elupload,), mdc=mdcf, chambre=proprio.chbre(),
|
||||
reco_url=reco_url,
|
||||
)
|
||||
mail_disconnect_hard.send()
|
||||
mail_data['to'] = upload.expediteur
|
||||
corps = mail_module.generate('upload_notif', mail_data).as_string()
|
||||
mail.sendmail(upload.expediteur, upload.expediteur, corps)
|
||||
|
||||
# Vérification du nombre de déconnexions
|
||||
#########################################
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue