def getEffectivePermission(user, obj, root=False): if user.is_admin is True: return PERMISSION_ALL if user.staff_member is False: return PERMISSION_NONE if root is False: return Permissions.getPermissions(user=user, groups=user.groups.all(), object_type=ot.getObjectType(obj), object_id=obj.pk) else: return Permissions.getPermissions(user=user, groups=user.groups.all(), object_type=ot.getObjectType(obj))
def getPermissionName(perm): return Permissions.permissionAsString(perm)
def addGroupPermission(group, obj, permission=PERMISSION_READ): Permissions.addPermission(group=group, object_type=ot.getObjectType(obj), object_id=obj.pk, permission=permission)
def addUserPermission(user, obj, permission=PERMISSION_READ): # Some permissions added to some object types needs at least READ_PERMISSION on parent Permissions.addPermission(user=user, object_type=ot.getObjectType(obj), object_id=obj.pk, permission=permission)
def getPermissions(obj): return list( Permissions.enumeratePermissions(object_type=ot.getObjectType(obj), object_id=obj.pk))
def clean(obj): Permissions.cleanPermissions(ot.getObjectType(obj), obj.pk)
def getPermissions(obj): return list(Permissions.enumeratePermissions(object_type=ot.getObjectType(obj), object_id=obj.pk))