• Модуль: rpa
  • Путь к файлу: ~/bitrix/modules/rpa/lib/controller/base.php
  • Класс: BitrixRpaControllerBase
  • Вызов: Base::processPermissions
protected function processPermissions(PermissionContainable $model, array $fields): PermissionResult
{
	$result = new PermissionResult();

	if (isset($fields['PERMISSIONS']))
	{
		if (!is_array($fields['PERMISSIONS']))
		{
			$fields['PERMISSIONS'] = [];
		}
		$permissions = $fields['PERMISSIONS'];
		$converter = new Converter(Converter::TO_UPPER | Converter::KEYS | Converter::TO_SNAKE);
		foreach ($permissions as $key => $permission)
		{
			$permissions[$key] = $converter->process($permission);
		}
		$processor = new PermissionProcessor($model->getPermissions());
		$result = $processor->process($permissions);
	}
	else
	{
		// no need to save
		$result->setSaved();
	}

	return $result;
}