Add check_permissions replacement
Add a new class method named check_user_permission. This method is smaller as it only accepts a single permission instead of a single or a list of permission like check_permissions does. check_user_permission is meant to replace check_permissions. Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
This commit is contained in:
@@ -72,15 +72,16 @@ class Permission(object):
|
||||
cls._permissions.values(), key=lambda x: x.namespace.name
|
||||
)
|
||||
|
||||
# Deprecated method
|
||||
@classmethod
|
||||
def check_permissions(cls, requester, permissions):
|
||||
def check_permissions(cls, permissions, requester):
|
||||
try:
|
||||
for permission in permissions:
|
||||
if permission.stored_permission.requester_has_this(requester):
|
||||
if permission.stored_permission.user_has_this(user=requester):
|
||||
return True
|
||||
except TypeError:
|
||||
# Not a list of permissions, just one
|
||||
if permissions.stored_permission.requester_has_this(requester):
|
||||
if permissions.stored_permission.user_has_this(user=requester):
|
||||
return True
|
||||
|
||||
logger.debug(
|
||||
@@ -88,6 +89,13 @@ class Permission(object):
|
||||
)
|
||||
raise PermissionDenied(_('Insufficient permissions.'))
|
||||
|
||||
@classmethod
|
||||
def check_user_permission(cls, permission, user):
|
||||
if permission.stored_permission.user_has_this(user=user):
|
||||
return True
|
||||
|
||||
raise PermissionDenied(_('Insufficient permissions.'))
|
||||
|
||||
@classmethod
|
||||
def get(cls, pk, proxy_only=False):
|
||||
if proxy_only:
|
||||
|
||||
Reference in New Issue
Block a user