[gest_crans, ldap_crans, whos] Robustesse si le responsable d'un club a été supprimé
Ignore-this: dbb616fe0cff5ba356ec8b2a0587f96c darcs-hash:20111006133157-ffbb2-9429c7756fb617b4e12babf3945d80333fe3f1af.gz
This commit is contained in:
parent
9892e46c2f
commit
6c85740dd2
3 changed files with 24 additions and 8 deletions
|
@ -633,10 +633,19 @@ def set_droits(adher):
|
||||||
map(lambda m: "%s$%s" % (adher.mail(), m), resultmls))
|
map(lambda m: "%s$%s" % (adher.mail(), m), resultmls))
|
||||||
|
|
||||||
# On modifie !
|
# On modifie !
|
||||||
if not isadm:
|
e = None
|
||||||
adher.droits(result, light=True)
|
try:
|
||||||
else:
|
if not isadm:
|
||||||
adher.droits(result)
|
adher.droits(result, light=True)
|
||||||
|
else:
|
||||||
|
adher.droits(result)
|
||||||
|
except EnvironmentError, c: e = c.args[0]
|
||||||
|
except ValueError, c: e = c.args[0]
|
||||||
|
if e:
|
||||||
|
arg = u'--title "Modification des droits pour %s" ' % adher.Nom()
|
||||||
|
arg += u'--msgbox "%s\n\n\n" 0 0' % to_unicode(e)
|
||||||
|
dialog(arg)
|
||||||
|
return 1
|
||||||
|
|
||||||
def del_adher(adher):
|
def del_adher(adher):
|
||||||
u"""
|
u"""
|
||||||
|
|
|
@ -2414,7 +2414,7 @@ class Adherent(BaseProprietaire):
|
||||||
diff = [droit for droit in (ancien + new)
|
diff = [droit for droit in (ancien + new)
|
||||||
if (droit not in ancien or droit not in new) and (droit in droits_critiques)]
|
if (droit not in ancien or droit not in new) and (droit in droits_critiques)]
|
||||||
if len(diff) > 0:
|
if len(diff) > 0:
|
||||||
raise("Droits critiques modifies (?) :: %s" % ','.join(diff))
|
raise ValueError("Droits critiques modifies (?) :: %s" % ','.join(diff))
|
||||||
|
|
||||||
# Sauvegarde
|
# Sauvegarde
|
||||||
if new != self._data.get('droits', []):
|
if new != self._data.get('droits', []):
|
||||||
|
@ -2531,8 +2531,12 @@ class Club(BaseProprietaire):
|
||||||
if adher == None:
|
if adher == None:
|
||||||
aid = decode(self._data.get('responsable', [''])[0])
|
aid = decode(self._data.get('responsable', [''])[0])
|
||||||
if aid:
|
if aid:
|
||||||
return self.search('aid=%s' % aid)['adherent'][0]
|
l = self.search('aid=%s' % aid)['adherent']
|
||||||
else: return ''
|
if l:
|
||||||
|
return l[0]
|
||||||
|
else:
|
||||||
|
raise ValueError("Responsable Invalide (%s)" % aid)
|
||||||
|
else: raise ValueError("Pas de responsable enregistré")
|
||||||
|
|
||||||
if adher.__class__ != Adherent:
|
if adher.__class__ != Adherent:
|
||||||
raise ValueError
|
raise ValueError
|
||||||
|
|
|
@ -298,7 +298,10 @@ def clubs_brief(clubs) :
|
||||||
else : machines = coul(nom,k)
|
else : machines = coul(nom,k)
|
||||||
|
|
||||||
# Responsable
|
# Responsable
|
||||||
resp = c.responsable().Nom()
|
try:
|
||||||
|
resp = c.responsable().Nom()
|
||||||
|
except ValueError, e:
|
||||||
|
resp = e
|
||||||
|
|
||||||
# Données
|
# Données
|
||||||
data.append([c.id() , c.Nom(), c.local(), paid, resp, machines])
|
data.append([c.id() , c.Nom(), c.local(), paid, resp, machines])
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue