def addGroupPermission(group: 'models.Group', obj: 'Model', permission: int = PERMISSION_READ): models.Permissions.addPermission(group=group, object_type=ot.getObjectType(obj), object_id=obj.pk, permission=permission)
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 addUserPermission(user: '******', obj: 'Model', permission: int = PERMISSION_READ): # Some permissions added to some object types needs at least READ_PERMISSION on parent models.Permissions.addPermission(user=user, object_type=ot.getObjectType(obj), object_id=obj.pk, permission=permission)
def getEffectivePermission(user: '******', obj: 'Model', root: bool = False) -> int: try: if user.is_admin is True: return PERMISSION_ALL if user.staff_member is False: return PERMISSION_NONE if root is False: return models.Permissions.getPermissions( user=user, groups=user.groups.all(), object_type=ot.getObjectType(obj), object_id=obj.pk) return models.Permissions.getPermissions( user=user, groups=user.groups.all(), object_type=ot.getObjectType(obj)) except Exception: return PERMISSION_NONE
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))
def getPermissions(obj: 'Model') -> typing.List[models.Permissions]: return list( models.Permissions.enumeratePermissions( object_type=ot.getObjectType(obj), object_id=obj.pk))
def clean(obj: 'Model') -> None: models.Permissions.cleanPermissions(ot.getObjectType(obj), obj.pk)