- Модуль: socialnetwork
- Путь к файлу: ~/bitrix/modules/socialnetwork/classes/general/user_perms.php
- Класс: CAllSocNetUserPerms
- Вызов: CAllSocNetUserPerms::SetPerm
static function SetPerm($userID, $feature, $perm)
{
$userID = intval($userID);
$feature = Trim($feature);
$perm = Trim($perm);
$dbResult = CSocNetUserPerms::GetList(
array(),
array(
"USER_ID" => $userID,
"OPERATION_ID" => $feature,
),
false,
false,
array("ID")
);
if ($arResult = $dbResult->Fetch())
$r = CSocNetUserPerms::Update($arResult["ID"], array("RELATION_TYPE" => $perm));
else
$r = CSocNetUserPerms::Add(array("USER_ID" => $userID, "OPERATION_ID" => $feature, "RELATION_TYPE" => $perm));
if (!$r)
{
$errorMessage = "";
if ($e = $GLOBALS["APPLICATION"]->GetException())
$errorMessage = $e->GetString();
if ($errorMessage == '')
$errorMessage = GetMessage("SONET_GF_ERROR_SET").".";
$GLOBALS["APPLICATION"]->ThrowException($errorMessage, "ERROR_SET_RECORD");
return false;
}
elseif ($feature == "viewprofile")
unset($GLOBALS["SONET_USER_PERMS_".$userID]);
return $r;
}