Les respos sont pris en compte dans les droits testés sur les attributs.
This commit is contained in:
parent
bfc91573fb
commit
7fe89abfe6
2 changed files with 3 additions and 3 deletions
|
@ -1298,7 +1298,7 @@ class imprimeurClub(Attr):
|
|||
optional = True
|
||||
legend = u"Imprimeur du club"
|
||||
category = "perso"
|
||||
can_modify = [cableur, nounou]
|
||||
can_modify = [cableur, imprimeur, nounou, respo]
|
||||
ldap_name = "imprimeurClub"
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
|
|
|
@ -654,7 +654,7 @@ class CransLdapObject(object):
|
|||
# sert à permettre les vérifications de cardinalité
|
||||
# (on peut pas utiliser self._modifs, car il ne faut
|
||||
# faire le changement que si on peut)
|
||||
attrs_before_verif = [ attributs.attrify(val, attr, self.conn, Parent=self) for val in values ]
|
||||
attrs_before_verif = [attributs.attrify(val, attr, self.conn, Parent=self) for val in values]
|
||||
|
||||
# Methode de vérification diverse ayant pour but d'être surcharger
|
||||
# par les classes enfants. Ainsi, elle ne touche pas à __setitem__
|
||||
|
@ -670,7 +670,7 @@ class CransLdapObject(object):
|
|||
# vide avant, puis on en a une nouvelle après.
|
||||
if mixed_attrs:
|
||||
# Tests de droits.
|
||||
if not mixed_attrs[0].is_modifiable(self.conn.droits + self.conn._check_parent(self.dn) + self.conn._check_self(self.dn)):
|
||||
if not mixed_attrs[0].is_modifiable(self.conn.droits + self.conn._check_parent(self.dn) + self.conn._check_self(self.dn) + self.conn._check_respo(self.dn)):
|
||||
raise EnvironmentError("Vous ne pouvez pas modifier l'attribut %r de l'objet %r." % (attr, self))
|
||||
|
||||
# On ajoute des locks sur les nouvelles valeurs
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue