...Человеческий поиск в разработке...
- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/security/controller/querybuilder/compatible.php
- Класс: Bitrix\Crm\Security\Controller\QueryBuilder\Compatible
- Вызов: Compatible::registerPermissionSet
protected function registerPermissionSet(array &$items, array $newItem): array { $qty = count($items); if ($qty === 0) { $items[] = $newItem; return $newItem; } $user = $newItem['USER']; $openedOnly = $newItem['OPENED_ONLY']; $departments = $newItem['DEPARTMENTS']; $departmentQty = count($departments); for ($i = 0; $i < $qty; $i++) { if ($user === $items[$i]['USER'] && $openedOnly === $items[$i]['OPENED_ONLY'] && $departmentQty === count($items[$i]['DEPARTMENTS']) && ($departmentQty === 0 || count(array_diff($departments, $items[$i]['DEPARTMENTS'])) === 0)) { $items[$i]['SCOPES'] = array_merge($items[$i]['SCOPES'], $newItem['SCOPES']); return $items[$i]; } } $items[] = $newItem; return $newItem; }