- Модуль: im
- Путь к файлу: ~/bitrix/modules/im/classes/general/im_chat.php
- Класс: CIMChat
- Вызов: CIMChat::SetAccessToGeneralChat
static function SetAccessToGeneralChat($allowAll = true, $allowCodes = Array())
{
$prevAllow = COption::GetOptionString("im", "allow_send_to_general_chat_all");
$prevCodes = COption::GetOptionString("im", "allow_send_to_general_chat_rights");
if ($allowAll)
{
$allow = 'Y';
$codes = 'AU';
}
else
{
$allow = 'N';
if (is_array($allowCodes) && count($allowCodes) > 0)
{
$codes = implode(",", $allowCodes);
}
else
{
$codes = "";
}
}
COption::SetOptionString("im", "allow_send_to_general_chat_all", $allow);
COption::SetOptionString("im", "allow_send_to_general_chat_rights", $codes);
if ($prevAllow != $allow || $prevCodes != $codes)
{
if (CModule::IncludeModule('pull'))
{
CPullStack::AddShared(Array(
'module_id' => 'im',
'command' => 'generalChatAccess',
'params' => Array(
"status" => $prevAllow == 'Y' && $allow == 'N'? 'blocked': 'allowed'
),
'extra' => BitrixImCommon::getPullExtra()
));
}
}
return true;
}