- Модуль: iblock
- Путь к файлу: ~/bitrix/modules/iblock/lib/copy/implement/iblock.php
- Класс: BitrixIblockCopyImplementIblock
- Вызов: Iblock::getRights
private function getRights($iblockId, $rightMode, $socnetGroupId = 0)
{
$rights = [];
if ($socnetGroupId)
{
$rights = $this->getSocnetPermission($iblockId, $socnetGroupId);
}
if ($rightMode == "E")
{
$rightObject = new CIBlockRights($iblockId);
foreach ($rightObject->getRights() as $right)
{
if (mb_strpos($right["GROUP_CODE"], "SG") !== 0)
{
$rights["n".(count($rights))] = [
"GROUP_CODE" => $right["GROUP_CODE"],
"DO_CLEAN" => "N",
"TASK_ID" => $right["TASK_ID"],
];
}
}
}
else
{
$groupPermissions = CIBlock::getGroupPermissions($iblockId);
foreach ($groupPermissions as $groupId => $permission)
{
if ($permission > "W")
{
$rights["n".(count($rights))] = [
"GROUP_CODE" => "G".$groupId,
"IS_INHERITED" => "N",
"TASK_ID" => CIBlockRights::letterToTask($permission),
];
}
}
}
return $rights;
}