• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/Access/Permission/Catalog/IblockCatalogPermissionsSaver.php
  • Класс: BitrixCatalogAccessPermissionCatalogIblockCatalogPermissionsSaver
  • Вызов: IblockCatalogPermissionsSaver::getDefaultIblockRights
private function getDefaultIblockRights(): array
{
	if (!isset($this->defaultRights))
	{
		$iblockTasks = self::getIblockRightsLetterToTaskId();

		$this->defaultRights = [
			'G2' => $iblockTasks['R'],
		];

		$rows = GroupTable::getList([
			'select' => [
				'ID',
				'STRING_ID',
			],
			'filter' => [
				'@STRING_ID' => [
					'CRM_SHOP_ADMIN',
					'CRM_SHOP_MANAGER',
				],
			],
		]);
		$crmGroups = array_column($rows->fetchAll(), 'ID', 'STRING_ID');
		$crmGroupsRights = [
			'CRM_SHOP_ADMIN' => $iblockTasks['X'],
			'CRM_SHOP_MANAGER' => $iblockTasks['W'],
		];

		foreach ($crmGroupsRights as $groupCode => $rightCode)
		{
			if (isset($crmGroups[$groupCode]))
			{
				$this->defaultRights['G' . $crmGroups[$groupCode]] = $rightCode;
			}
		}
	}

	return $this->defaultRights;
}