PermissionsManager
in package
Class PermissionsManager
Tags
Table of Contents
- COLUMNS_ADDED_DT = 'added_dt'
- COLUMNS_CREATED_DT = 'created_dt'
- COLUMNS_EDITED_DT = 'edited_dt'
- PERMISSIONS_GROUPS_TABLE_NAME = 'permissions_groups'
- PERMISSIONS_RULES_TABLE_NAME = 'permissions_rules'
- PERMISSIONS_TABLE_NAME = 'permissions'
- $database : Context
- $translator : Translator
- __construct() : mixed
- addGroup() : mixed
- Добавляет новую группу пользователей
- checkRule() : bool
- Проверка правила
- deleteGroup() : bool
- Удалить группу пользователей
- findAllGroups() : Selection
- Возвращает все группы правил
- findAllPairsGroups() : array<string|int, mixed>
- Возвращает все группы правил в виде массива
- findAllPermissions() : array<string|int, mixed>
- Возвращает все разрешения
- findPermissionsByGroup() : array<string|int, mixed>
- Возвращает все разрешения группы
- getAvailableStructureIds() : array<string|int, mixed>|array<string|int, int>|array<string|int, string>
- Возвращать доступные организации
- getGroup() : ActiveRow|null
- Возвращает группу разрешений
- registerPermission() : bool
- Регистрирует разрешение
- unregisterPermission() : int
- Удаление разрешения
- updateGroup() : bool
- Обновление группы пользователей
- IsPermissionNotExist() : bool
- Проверяет найдено ли такое разрешение или нет
- makeKey() : string
- Формирует строку $1|$2
- makeListIndex() : string
- Формирует строку
- makeListItem() : array<string|int, mixed>
- Формирует массив из строк с название русерса и резрешением
- makeSQLValues() : array<string|int, mixed>
- parseKey() : array<string|int, mixed>
Constants
COLUMNS_ADDED_DT
public
mixed
COLUMNS_ADDED_DT
= 'added_dt'
COLUMNS_CREATED_DT
public
mixed
COLUMNS_CREATED_DT
= 'created_dt'
COLUMNS_EDITED_DT
public
mixed
COLUMNS_EDITED_DT
= 'edited_dt'
PERMISSIONS_GROUPS_TABLE_NAME
public
mixed
PERMISSIONS_GROUPS_TABLE_NAME
= 'permissions_groups'
PERMISSIONS_RULES_TABLE_NAME
public
mixed
PERMISSIONS_RULES_TABLE_NAME
= 'permissions_rules'
PERMISSIONS_TABLE_NAME
public
mixed
PERMISSIONS_TABLE_NAME
= 'permissions'
Properties
$database
private
Context
$database
$translator
private
Translator
$translator
Methods
__construct()
public
__construct(Context $database, Translator $translator) : mixed
Parameters
- $database : Context
- $translator : Translator
Return values
mixed —addGroup()
Добавляет новую группу пользователей
public
addGroup(string $title, iteratable<string|int, mixed> $permissions[, DateTime $created_dt = null ]) : mixed
Parameters
- $title : string
-
Название группы
- $permissions : iteratable<string|int, mixed>
-
Array of permission keys
- $created_dt : DateTime = null
Return values
mixed —checkRule()
Проверка правила
public
checkRule(int $group_id, string $resource, string $privilege) : bool
Parameters
- $group_id : int
-
идентификатор группы
- $resource : string
-
Название ресурса
- $privilege : string
-
Привелегия
Return values
bool —deleteGroup()
Удалить группу пользователей
public
deleteGroup(int $id) : bool
Parameters
- $id : int
-
Group ID
Tags
Return values
bool —Is success
findAllGroups()
Возвращает все группы правил
public
findAllGroups() : Selection
Return values
Selection —findAllPairsGroups()
Возвращает все группы правил в виде массива
public
findAllPairsGroups() : array<string|int, mixed>
Return values
array<string|int, mixed> —[ 'id'=>'title']
findAllPermissions()
Возвращает все разрешения
public
final findAllPermissions() : array<string|int, mixed>
Return values
array<string|int, mixed> —[key=>title]
findPermissionsByGroup()
Возвращает все разрешения группы
public
findPermissionsByGroup(int $id) : array<string|int, mixed>
Parameters
- $id : int
-
Идентификатор группы
Return values
array<string|int, mixed> —Array of permission keys
getAvailableStructureIds()
Возвращать доступные организации
public
getAvailableStructureIds(int $userId, array<string|int, mixed> $structureIds) : array<string|int, mixed>|array<string|int, int>|array<string|int, string>
Parameters
- $userId : int
-
Идентификатор пользователя
- $structureIds : array<string|int, mixed>
-
Идентификатор организации
Tags
Return values
array<string|int, mixed>|array<string|int, int>|array<string|int, string> —getGroup()
Возвращает группу разрешений
public
getGroup(int $id) : ActiveRow|null
Parameters
- $id : int
-
Идентификатор группы
Return values
ActiveRow|null —registerPermission()
Регистрирует разрешение
public
final registerPermission(string $resource, string $privilege, string $title) : bool
Parameters
- $resource : string
-
Ресурс на котором нужно выполнить действие
- $privilege : string
-
Привиления
- $title : string
-
Название для отображения в интерфейсе
Tags
Return values
bool —unregisterPermission()
Удаление разрешения
public
final unregisterPermission([string $resource = '' ][, string $privilege = '' ]) : int
Parameters
- $resource : string = ''
-
Ресурс
- $privilege : string = ''
-
Првилегия
Return values
int —updateGroup()
Обновление группы пользователей
public
updateGroup(int $id, string $title, iteratable<string|int, mixed> $permissions) : bool
Parameters
- $id : int
-
Group ID
- $title : string
-
Group title
- $permissions : iteratable<string|int, mixed>
-
Array of permission keys
Return values
bool —Is success
IsPermissionNotExist()
Проверяет найдено ли такое разрешение или нет
private
IsPermissionNotExist(string $resource, string $privilege) : bool
Parameters
- $resource : string
-
Ресурс
- $privilege : string
-
Привелегия
Return values
bool —makeKey()
Формирует строку $1|$2
private
makeKey(string $resource, string $privilege) : string
Parameters
- $resource : string
- $privilege : string
Return values
string —makeListIndex()
Формирует строку
private
makeListIndex(array<string|int, mixed> $row) : string
Parameters
- $row : array<string|int, mixed>
-
Массив параметров строки
Return values
string —makeListItem()
Формирует массив из строк с название русерса и резрешением
private
makeListItem( $row) : array<string|int, mixed>
Parameters
Return values
array<string|int, mixed> —makeSQLValues()
private
makeSQLValues(int $group_id, array<string|int, mixed> $permissions) : array<string|int, mixed>
Parameters
- $group_id : int
- $permissions : array<string|int, mixed>
Return values
array<string|int, mixed> —parseKey()
private
parseKey(string $key) : array<string|int, mixed>
Parameters
- $key : string