From 8aa44521622df0bb30c66219ea296e26b57f26fa Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Tue, 16 Jun 2015 04:15:46 -0400 Subject: [PATCH] Allow overriding the object on which to perform the permission check --- mayan/apps/common/mixins.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mayan/apps/common/mixins.py b/mayan/apps/common/mixins.py index 3d33520837..670111929e 100644 --- a/mayan/apps/common/mixins.py +++ b/mayan/apps/common/mixins.py @@ -43,13 +43,16 @@ class ObjectListPermissionFilterMixin(object): class ObjectPermissionCheckMixin(object): object_permission = None + def get_permission_object(self): + return self.get_object() + def dispatch(self, request, *args, **kwargs): if self.object_permission: try: Permission.objects.check_permissions(request.user, (self.object_permission,)) except PermissionDenied: - AccessEntry.objects.check_access(self.object_permission, request.user, self.get_object()) + AccessEntry.objects.check_access(self.object_permission, request.user, self.get_permission_object()) return super(ObjectPermissionCheckMixin, self).dispatch(request, *args, **kwargs)