From ff5dd90c653be0eef408a0adaec1316833ab2455 Mon Sep 17 00:00:00 2001 From: Antoine Durand-Gasselin Date: Mon, 30 Mar 2009 15:35:56 +0200 Subject: [PATCH] [stats_cableurs] correction des coquilles d'encodage, ajout de la possibilte d'afficher le tel darcs-hash:20090330133556-bd074-23e8ffe69ae26ad88f2d3b9d51b8030c0d50e03c.gz --- stats_cableurs.py | 56 +++++++++++++++++++++++++++++------------------ 1 file changed, 35 insertions(+), 21 deletions(-) diff --git a/stats_cableurs.py b/stats_cableurs.py index b02ab68f..6b393576 100644 --- a/stats_cableurs.py +++ b/stats_cableurs.py @@ -136,6 +136,7 @@ class StatsCableursBase: 'prenom' : ldap_cableur.prenom(), 'droits' : reduce(unicode.__add__, [d[0] for d in ldap_cableur.droits()], u''), + 'tel' : ldap_cableur.tel(), 'login' : cableur } noms[cableur] = self.kwargs.get("fqn", "%(prenom)s %(nom)s") % ids except IndexError: @@ -146,26 +147,26 @@ class StatsCableursBase: long_max = reduce(lambda m, c : max(m, len(c)), noms.values(), len('cableur')) # Titres des colonnes - ligne = "%-*s" % (long_max, u'Câbleur') - ligne += " | Score" + ligne = u"%-*s" % (long_max, u'Câbleur') + ligne += u" | Score" for col in self.colonnes: - ligne += " | %s" % col + ligne += u" | %s" % col print(ligne) # Ligne pour délimiter - ligne = '-' * long_max - ligne += "-+-%s" % ('-' * len ("score")) + ligne = u'-' * long_max + ligne += u"-+-%s" % (u'-' * len ("score")) for col in self.colonnes: - ligne += "-+-%s" % ('-' * len(col)) + ligne += u"-+-%s" % (u'-' * len(col)) print(ligne) # Statiqtiques par câbleur for cableur in cableurs: acts = self.stats[cableur] - ligne = "%-*s" % (long_max, noms[cableur]) - ligne += " | %*d" % (len ("score"), self.score[cableur]) + ligne = u"%-*s" % (long_max, noms[cableur]) + ligne += u" | %*d" % (len ("score"), self.score[cableur]) for i in range (len (self.colonnes)): - ligne += " | %*d" % (len(self.colonnes[i]), acts[i]) + ligne += u" | %*d" % (len(self.colonnes[i]), acts[i]) print(ligne) def sort_events(self, events): @@ -350,21 +351,29 @@ if __name__ == "__main__": # options pour décider le nombre de câbleurs à afficher parser.add_option('-a', '--all', help= u"Affiche tous les câbleurs", action='store_const', const=0, dest='top') - parser.add_option('-t', '--top', metavar= "NB", help= u"N'affiche que les NB meilleurs câbleurs", - type= 'int', dest='top') + parser.add_option('-t', '--top', metavar= "NB", type= 'int', dest='top', + help= u"N'affiche que les NB meilleurs câbleurs") # options pour le format d'affichage des câbleurs parser.add_option('-d', '--droits', help= u"Affiche les droits du câbleur", - action='callback', callback= update_fqn, callback_kwargs= { 'fmt': ' (%(droits)s)'}) - parser.add_option('-F', '--full-name', help=u"Affiche Prenom Nom des câbleurs", - action='callback', callback= update_fqn, callback_kwargs= { 'fmt': '%(prenom)s %(nom)s'}) + action='callback', callback= update_fqn, + callback_kwargs= { 'fmt': ' (%(droits)s)'}) + parser.add_option('-F', '--full-name', + help=u"Affiche Prenom Nom des câbleurs", + action='callback', callback= update_fqn, + callback_kwargs= { 'fmt': '%(prenom)s %(nom)s'}) parser.add_option('-l', '--login', help= u"Affiche le login des câbleurs", - action='callback', callback= update_fqn, callback_kwargs= { 'fmt': '%(login)s'}) + action='callback', callback= update_fqn, + callback_kwargs= { 'fmt': '%(login)s'}) + parser.add_option('-T', '--tel', help= u"Affiche le n° de téléphone", + action='callback', callback= update_fqn, + callback_kwargs= { 'fmt': '%(tel)s'}) parser.add_option('--fqn', dest='fqn', - help= u"Définit le format d'affichage du nom du câbleur, les champs possibles sont %(droits)s, %(nom)s, %(prenom)s, %(login)s") + help= u"Définit le format d'affichage du nom du câbleur, les champs possibles sont %(droits)s, %(nom)s, %(prenom)s, %(login)s, %(tel)s") # options de verbosité - parser.add_option('-D', '--debug', help= u"Affiche des informations de debuggage", + parser.add_option('-D', '--debug', + help= u"Affiche des informations de debuggage", action='append_const', const='d', dest= 'flags') parser.add_option('-k', '--kikoolol', help="Affiche des trucs kikoolol", action='callback', callback= notimplerr) @@ -372,14 +381,19 @@ if __name__ == "__main__": action='append_const', const= 'v', dest= 'flags') # options sur la durée étudiée - parser.add_option('-f', '--for', metavar= 'N', help= u"Affiche les statistiqes depuis N mois", + parser.add_option('-f', '--for', metavar= 'N', + help= u"Affiche les statistiqes depuis N mois", type= 'int', dest='nbmois') - parser.add_option('-s', '--since', metavar= 'MM', help= u'Affiche les stats depuis MOIS', + parser.add_option('-s', '--since', metavar= 'MM', + help= u'Affiche les stats depuis MOIS', type= 'int', dest='mois') # Devrait plutôt être un argument qu'une option - parser.add_option('-e', '--efficiency', help= u"Compte les actions effectuées sur les machines", - action= 'store_const', const= StatsCableursMachines, dest= 'default_stats', + parser.add_option('-e', '--efficiency', + help= u"Compte les actions effectuées sur les machines", + action= 'store_const', + const= StatsCableursMachines, + dest= 'default_stats', default= StatsCableursAdherents) # on parse, enfin, on laisse optparse le faire pour nous