- Модуль: lists
- Путь к файлу: ~/bitrix/modules/lists/classes/general/lists.php
- Класс: CLists
- Вызов: CLists::SetSocnetPermission
static function SetSocnetPermission($iblock_id, $arRoles)
{
global $DB, $CACHE_MANAGER;
$iblock_id = intval($iblock_id);
$arToDB = CLists::GetDefaultSocnetPermission();
foreach($arToDB as $role => $permission)
if(isset($arRoles[$role]))
$arToDB[$role] = mb_substr($arRoles[$role], 0, 1);
$arToDB["A"] = "X"; //Group owner always in charge
$arToDB["T"] = "D"; //Banned
$arToDB["Z"] = "D"; //and Request never get to list
$DB->Query("
delete from b_lists_socnet_group
where IBLOCK_ID = ".$iblock_id."
", false, "FILE: ".__FILE__."
LINE: ".__LINE__);
foreach($arToDB as $role => $permission)
{
$DB->Query("
insert into b_lists_socnet_group
(IBLOCK_ID, SOCNET_ROLE, PERMISSION)
values
(".$iblock_id.", '".$role."', '".$permission."')
", false, "FILE: ".__FILE__."
LINE: ".__LINE__);
}
if(CACHED_b_lists_permission !== false)
$CACHE_MANAGER->Clean("b_lists_perm".$iblock_id);
}