[surveillance/fiche_deconnexion/generate.py] from something import * : brûler…

This commit is contained in:
Vincent Le Gallic 2013-05-05 21:03:31 +02:00
parent 25a4e225e4
commit 264df1f392

View file

@ -14,12 +14,12 @@ encoding = "UTF-8"
import sys import sys
sys.path.append('/usr/scripts/gestion') sys.path.append('/usr/scripts/gestion')
sys.path.append('/usr/scripts')
from ldap_crans import crans_ldap from ldap_crans import crans_ldap
import crans.utils.exceptions
from config import upload from config import upload
from time import * import time
from unicodedata import normalize from unicodedata import normalize
import commands import commands
@ -30,8 +30,7 @@ def log(x):
syslog.syslog(x) syslog.syslog(x)
syslog.closelog() syslog.closelog()
sys.path.append('/usr/scripts/lib') from lib.utils import exceptions
import utils.exceptions
import locale import locale
locale.setlocale(locale.LC_TIME, 'fr_FR.utf8') locale.setlocale(locale.LC_TIME, 'fr_FR.utf8')
@ -43,7 +42,7 @@ help = """Script de génération d'une feuille de déconnexion.
Les sanctions disponibles sont : Les sanctions disponibles sont :
\t--%s \t--%s
usage: generate.py --sanction recherche_ldap usage: generate.py --sanction recherche_ldap
Le motif de recherche dans la base ldap doit donné un résultat unique""" % "\n\t--".join(map(lambda x: x,sanctions)) Le motif de recherche dans la base ldap doit donner un résultat unique""" % "\n\t--".join(map(lambda x: x,sanctions))
def decode(s): def decode(s):
u""" u"""
@ -72,7 +71,7 @@ def generate_ps(sanction, proprio, db):
dossier = '/usr/scripts/surveillance/fiche_deconnexion' dossier = '/usr/scripts/surveillance/fiche_deconnexion'
# Base pour le nom du fichier # Base pour le nom du fichier
fichier = strftime('%Y-%m-%d-%H-%M') + '-%s-%s' % (sanction, fichier = time.strftime('%Y-%m-%d-%H-%M') + '-%s-%s' % (sanction,
strip_accents(proprio.Nom().lower().replace(' ', '-'))) strip_accents(proprio.Nom().lower().replace(' ', '-')))
# Création du fichier tex # Création du fichier tex
@ -82,12 +81,12 @@ def generate_ps(sanction, proprio, db):
template = template.replace('~nom~', proprio.nom().encode(encoding)) template = template.replace('~nom~', proprio.nom().encode(encoding))
template = template.replace('~chambre~', proprio.chbre().encode(encoding)) template = template.replace('~chambre~', proprio.chbre().encode(encoding))
template = template.replace('~mail~', proprio.email().encode(encoding)) template = template.replace('~mail~', proprio.email().encode(encoding))
template = template.replace('~debut~', strftime(format_date, localtime())) template = template.replace('~debut~', time.strftime(format_date, time.localtime()))
template = template.replace('~fin~', strftime(format_date, localtime(time()+14*86400))) template = template.replace('~fin~', time.strftime(format_date, time.localtime(time.time()+14*86400)))
# filtrage des autodisc # filtrage des autodisc
historique = [ bl.encode(encoding, 'ignore').split('$') for bl in proprio.blacklist() if bl.split('$')[2] == 'autodisc_%s' % sanction ] historique = [ bl.encode(encoding, 'ignore').split('$') for bl in proprio.blacklist() if bl.split('$')[2] == 'autodisc_%s' % sanction ]
# transfomation en tuple (date, sanction) # transfomation en tuple (date, sanction)
historique = [ (strftime('%A %d %B %Y', localtime(int(bl[0]))), bl[-1]) for bl in historique ] historique = [ (time.strftime('%A %d %B %Y', time.localtime(int(bl[0]))), bl[-1]) for bl in historique ]
# On ne prend au maximum que les 5 dernières occurences # On ne prend au maximum que les 5 dernières occurences
historique = historique[-5:] historique = historique[-5:]
# tranformation en ligne # tranformation en ligne
@ -122,7 +121,7 @@ def generate_ps(sanction, proprio, db):
log(str(e)) log(str(e))
log("Values : sanction:%s adherent:%s" % (sanction, log("Values : sanction:%s adherent:%s" % (sanction,
strip_accents(proprio.Nom()))) strip_accents(proprio.Nom())))
log(crans.utils.exceptions.formatExc()) log(exceptions.formatExc())
raise e raise e
if __name__ == "__main__": if __name__ == "__main__":