Utilise les nouvelles variables de config et fonctions de crans_utils

This commit is contained in:
Pierre-Elliott Bécue 2015-10-03 13:54:35 +02:00
parent 6ae6e54101
commit 955dd379c7
3 changed files with 13 additions and 13 deletions

View file

@ -12,15 +12,16 @@ import calendar
from lc_ldap.shortcuts import lc_ldap_readonly
from lc_ldap.variables import base_dn
from lc_ldap import crans_utils
import ldap
from affich_tools import coul
import gestion.mail as mail_module
import gestion.config as config
PERIODE_TRANSITOIRE = [
datetime.datetime.utcfromtimestamp(date).replace(tzinfo=pytz.UTC)
crans_utils.datetime_from_generalized_time_format(date)
for date in
[config.debut_periode_transitoire, config.fin_periode_transitoire]
[config.gtf_debut_periode_transitoire, config.gtf_fin_periode_transitoire]
]
@ -37,7 +38,7 @@ ERASE_DAY = {'second': 0, 'minute': 0, 'microsecond': 0, 'hour': 0, }
# NB: finConnexion est un attribut ldap multivalué, et on s'intéresse ici
# à sa valeur max pour un adhérent.
# Les filtres ldap recherchent, de manière existentielle, une valeur valide.
# Ainsi, en notant F l'ensemble des valeurs :
# Ainsi, en notant F l'ensemble des valeurs :
# max(F) >= v <=> \exists x\in F x>= v <=> finConnexion>=v
# L'autre inégalité ( < ) est plus délicate :
# max(F) < v <=> \forall x\in F x < v <=> \not( \exists x\in F x >= v )
@ -144,7 +145,7 @@ def brief(c, debut, fin):
to_warn = select(c, debut, fin)
print ("%d adhérents seront prévenus que leur connexion expire entre le %s " + \
"et le %s") % (len(to_warn), debut, fin)
if "--list" in sys.argv:
for adh in to_warn:
valeurs = [max(parse_gtf(v.value) for v in adh[l]) \
@ -158,10 +159,10 @@ def prev_calendar(c, date):
"""Prévisualise l'expiration des connexions sur le mois courant"""
month = date.month
year = date.year
cal = calendar.Calendar()
first = datetime.datetime(day=1, month=month, year=year, tzinfo=pytz.UTC)
first = datetime.datetime(day=1, month=month, year=year, tzinfo=pytz.UTC)
last = first.replace(month=1+month%12, year=year+int(month == 12))
disconnect = select(c, first, last)
@ -173,7 +174,7 @@ def prev_calendar(c, date):
if date.tzinfo:
date -= date.tzinfo.utcoffset(date)
by_day[date.day] += 1
yield ['L', 'M', 'Me', 'J', 'V', 'S', 'D']
l = []
for d in cal.itermonthdays(year, month):
@ -221,7 +222,7 @@ def prev_mail(calendar):
mailtxt = mail_module.generate('fin_connexion_stats', data)
with mail_module.ServerConnection() as mail_conn:
mail_conn.sendmail(From, [To], mailtxt.as_string())
if __name__ == '__main__':
db = lc_ldap_readonly()