function RestoreSecurity($arExcludeGroups = array()) { $arBackup = CControllerClient::GetBackup(); if (!is_array($arBackup)) { return true; } if (is_array($arBackup["security"])) { foreach ($arBackup["security"] as $group_code => $perms) { if (in_array($group_code, $arExcludeGroups)) { continue; } if (($group_id = CGroup::GetIDByCode($group_code)) > 0) { foreach ($perms as $module_id => $level) { CGroup::SetModulePermission($group_id, $module_id, $level); } if (isset($arBackup["security_subord_groups"][$group_code])) { CGroup::SetSubordinateGroups($group_id, $arBackup["security_subord_groups"][$group_code]); } } unset($arBackup["security"][$group_code]); unset($arBackup["security_subord_groups"][$group_code]); } if (count($arBackup["security"]) <= 0) { unset($arBackup["security"]); } CControllerClient::SetBackup($arBackup); } return true; }
public function getGroupId($code) { return \CGroup::GetIDByCode($code); }