clause speciale pour frosminet
darcs-hash:20070603225421-c992d-dee164635c810d440c8ca5f076a15d8836b7f98e.gz
This commit is contained in:
parent
28a49731f5
commit
8f9f145f8c
1 changed files with 21 additions and 8 deletions
|
@ -805,13 +805,12 @@ class CransLdap:
|
||||||
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
def getProprio(self, uid, passwd=None, obligatoire=False):
|
def getProprio(self, uid, mode=''):
|
||||||
"""
|
"""
|
||||||
Renvoie un proprietaire ou un adherent correspondant au
|
Renvoie un proprietaire ou un adherent correspondant au
|
||||||
login/ mot de passe (mot de passe facultatif)
|
login/ mot de passe (mot de passe facultatif)
|
||||||
obligatoire : mot de passe obligatoire
|
"""
|
||||||
"""
|
recherche = self.search(("uid=%s" % uid),mode)
|
||||||
recherche = self.search(("uid=%s" % uid))
|
|
||||||
proprio = None
|
proprio = None
|
||||||
|
|
||||||
if len(recherche['club']) > 0:
|
if len(recherche['club']) > 0:
|
||||||
|
@ -819,9 +818,8 @@ class CransLdap:
|
||||||
if len(recherche['adherent']) > 0:
|
if len(recherche['adherent']) > 0:
|
||||||
proprio = recherche['adherent'][0]
|
proprio = recherche['adherent'][0]
|
||||||
|
|
||||||
if passwd:
|
if uid == "grosminet":
|
||||||
if not proprio.verifyPasswd(passwd):
|
proprio = self.search("nom=grosminet", mode)['adherent'][0]
|
||||||
proprio = None
|
|
||||||
return proprio
|
return proprio
|
||||||
|
|
||||||
__machines = ()
|
__machines = ()
|
||||||
|
@ -1203,7 +1201,7 @@ class BaseClasseCrans(CransLdap):
|
||||||
self.conn.modify_s(self.dn, modlist)
|
self.conn.modify_s(self.dn, modlist)
|
||||||
except ldap.TYPE_OR_VALUE_EXISTS, c:
|
except ldap.TYPE_OR_VALUE_EXISTS, c:
|
||||||
champ = c.args[0]['info'].split(':')[0]
|
champ = c.args[0]['info'].split(':')[0]
|
||||||
raise RuntimeError(u'Entrée en double dans le champ %s' % champ)
|
raise RuntimeError('Entrée en double dans le champ %s' % champ.encode("iso-8859-1"))
|
||||||
|
|
||||||
### Génération de la liste de services à redémarrer
|
### Génération de la liste de services à redémarrer
|
||||||
# Quasiement tout est traité dans les classes filles.
|
# Quasiement tout est traité dans les classes filles.
|
||||||
|
@ -2349,6 +2347,21 @@ class Club(BaseProprietaire):
|
||||||
|
|
||||||
self._set('responsable', [adher.id()])
|
self._set('responsable', [adher.id()])
|
||||||
return adher
|
return adher
|
||||||
|
|
||||||
|
def responsables(self, ajouter=None, retirer=None):
|
||||||
|
""" Responsables du club, ajouter et retirer doivent
|
||||||
|
tre des instances de la classe adherent """
|
||||||
|
if ajouter != None:
|
||||||
|
self._data['responsables'].remove(ajouter.id())
|
||||||
|
self._data['responsables'].append(ajouter.id())
|
||||||
|
elif retirer != None:
|
||||||
|
self._data['responsables'].remove(retirer.id())
|
||||||
|
else:
|
||||||
|
resultat = []
|
||||||
|
for aid in self._data['responsables']:
|
||||||
|
resultat.append(db.search('uid ='+uid)['adherent'][0])
|
||||||
|
return adher
|
||||||
|
|
||||||
|
|
||||||
def chbre(self, new=None):
|
def chbre(self, new=None):
|
||||||
""" Défini le local du club
|
""" Défini le local du club
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue