diff --git a/gestion/ldap_crans.py b/gestion/ldap_crans.py index 97483ee5..3f8aefa2 100755 --- a/gestion/ldap_crans.py +++ b/gestion/ldap_crans.py @@ -79,7 +79,7 @@ blacklist_items = { u'bloq': u'Bloquage total de tous les services', ### Droits possibles droits_possibles = [ u'Nounou', u'Apprenti', u'Modérateur', u'Câbleur', u'WebRadio', u'Imprimeur', u'MultiMachines', - u'Bureau', u'Tresorier' , u'Compte Zamok'] + u'Bureau', u'Tresorier'] ################################################################################## ### Droits critiques @@ -265,7 +265,7 @@ class CransLdap: auto_search_champs = { \ 'adherent': \ ['nom', 'prenom', 'tel', 'mail', 'chbre', 'mailAlias', 'canonicalAlias'], - 'club': ['nom', 'chbre'], + 'club': ['nom', 'chbre', 'uid'], 'machineFixe': auto_search_machines_champs, 'machineWifi': auto_search_machines_champs, 'machineCrans': auto_search_machines_champs, @@ -805,7 +805,25 @@ class CransLdap: return result + def getProprio(self, uid, passwd=None, obligatoire=False): + """ + Renvoie un proprietaire ou un adherent correspondant au + login/ mot de passe (mot de passe facultatif) + obligatoire : mot de passe obligatoire + """ + recherche = self.search(("uid=%s" % uid)) + proprio = None + + if len(recherche['club']) > 0: + proprio = recherche['club'][0] + if len(recherche['adherent']) > 0: + proprio = recherche['adherent'][0] + if passwd: + if not proprio.verifyPasswd(passwd): + proprio = None + return proprio + __machines = () def all_machines(self, graphic=False): """