[gest_crans_lc] Utilisation de argparse

c'est plus mieux comme ça
This commit is contained in:
Valentin Samir 2014-11-29 18:03:03 +01:00
parent 2d04dedf7b
commit c95859507e
3 changed files with 16 additions and 10 deletions

View file

@ -26,11 +26,12 @@ from CPS import TailCall, tailcaller, Continue, TailCaller
class Dialog(CPS.Dialog):
def __init__(self, debug_enable=False, ldap_test=False):
def __init__(self, debug_enable=False, ldap_test=False, custom_user=None):
super(Dialog, self).__init__(debug_enable=debug_enable)
# On initialise le moteur de rendu en spécifiant qu'on va faire du dialog
printing.template(dialog=True)
self.ldap_test = ldap_test
self.custom_user = custom_user
self.check_ldap()
def has_right(self, liste, obj=None):
@ -67,14 +68,12 @@ class Dialog(CPS.Dialog):
# Si un nom d'utilisateur est donné sur la ligne de commande
# et qu'on a les droits nounou, on l'utilise
if sys.argv[1:] and attributs.nounou in self.conn.droits:
for u in sys.argv[1:]:
luser=self.conn.search(u'(&(uid=%s)(objectClass=cransAccount))' % u)
if luser:
self.conn.current_login = u
self.conn.droits = [str(d) for d in luser[0]['droits']]
self.conn.dn = luser[0].dn
break
if self.custom_user and attributs.nounou in self.conn.droits:
luser=self.conn.search(u'(&(uid=%s)(objectClass=cransAccount))' % self.custom_user)
if luser:
self.conn.current_login = self.custom_user
self.conn.droits = [str(d) for d in luser[0]['droits']]
self.conn.dn = luser[0].dn
a = attributs
allowed_right = [a.cableur, a.tresorier, a.bureau, a.nounou, a.imprimeur]
for droit in allowed_right: