8
0
Fork 0
mirror of https://gitlab2.federez.net/re2o/re2o synced 2024-11-05 09:26:27 +00:00

Editions des machines des users avec droits et de l'asso seulement avec droit all

This commit is contained in:
Gabriel Detraz 2018-01-08 01:21:24 +01:00 committed by root
parent f52d869b5f
commit 644ca18478

View file

@ -112,9 +112,10 @@ class Machine(FieldPermissionModelMixin, models.Model):
:param self: instance machine à éditer :param self: instance machine à éditer
:param user_request: instance user qui fait l'edition :param user_request: instance user qui fait l'edition
:return: True ou False avec la raison le cas échéant""" :return: True ou False avec la raison le cas échéant"""
if not user_request.has_perm('machines.change_machine') and self.user != user_request: if self.user != user_request:
return False, u"Vous ne pouvez pas éditer une machine d'un autre user\ if not user_request.has_perm('machines.change_interface') or not self.user.can_edit(self.user, user_request, *args, **kwargs)[0]:
que vous sans droit" return False, u"Vous ne pouvez pas éditer une machine\
d'un autre user que vous sans droit"
return True, None return True, None
def can_delete(self, user_request, *args, **kwargs): def can_delete(self, user_request, *args, **kwargs):
@ -123,9 +124,10 @@ class Machine(FieldPermissionModelMixin, models.Model):
:param self: instance machine à supprimer :param self: instance machine à supprimer
:param user_request: instance user qui fait l'edition :param user_request: instance user qui fait l'edition
:return: True ou False avec la raison de l'échec le cas échéant""" :return: True ou False avec la raison de l'échec le cas échéant"""
if not user_request.has_perm('machines.delete_machine') and self.user != user_request: if self.user != user_request:
return False, u"Vous ne pouvez pas éditer une machine d'un autre user\ if not user_request.has_perm('machines.change_interface') or not self.user.can_edit(self.user, user_request, *args, **kwargs)[0]:
que vous sans droit" return False, u"Vous ne pouvez pas éditer une machine\
d'un autre user que vous sans droit"
return True, None return True, None
def can_view_all(user_request, *args, **kwargs): def can_view_all(user_request, *args, **kwargs):
@ -1287,7 +1289,8 @@ class Interface(models.Model):
:param self: Instance interface à editer :param self: Instance interface à editer
:param user_request: Utilisateur qui fait la requête :param user_request: Utilisateur qui fait la requête
:return: soit True, soit False avec la raison de l'échec""" :return: soit True, soit False avec la raison de l'échec"""
if not user_request.has_perm('machines.change_interface') and self.machine.user != user_request: if self.machine.user != user_request:
if not user_request.has_perm('machines.change_interface') or not self.machine.user.can_edit(user_request, *args, **kwargs)[0]:
return False, u"Vous ne pouvez pas éditer une machine\ return False, u"Vous ne pouvez pas éditer une machine\
d'un autre user que vous sans droit" d'un autre user que vous sans droit"
return True, None return True, None
@ -1298,9 +1301,10 @@ class Interface(models.Model):
:param self: Instance interface à del :param self: Instance interface à del
:param user_request: Utilisateur qui fait la requête :param user_request: Utilisateur qui fait la requête
:return: soit True, soit False avec la raison de l'échec""" :return: soit True, soit False avec la raison de l'échec"""
if not user_request.has_perm('machines.delete_interface') and self.machine.user != user_request: if self.machine.user != user_request:
return False, u"Vous ne pouvez pas éditer une machine d'un autre\ if not user_request.has_perm('machines.change_interface') or not self.machine.user.can_edit(user_request, *args, **kwargs)[0]:
user que vous sans droit" return False, u"Vous ne pouvez pas éditer une machine\
d'un autre user que vous sans droit"
return True, None return True, None
def can_view_all(user_request, *args, **kwargs): def can_view_all(user_request, *args, **kwargs):