- Модуль: socialnetwork
- Путь к файлу: ~/bitrix/modules/socialnetwork/lib/integration/im/chat/workgroup.php
- Класс: BitrixSocialnetworkIntegrationImChatWorkgroup
- Вызов: Workgroup::unlinkChat
static function unlinkChat($params)
{
$result = false;
if (
!array($params)
|| !isset($params['group_id'])
|| intval($params['group_id']) <= 0
|| !self::getUseChat()
|| !Loader::includeModule('im')
)
{
return $result;
}
$groupItem = ItemWorkgroup::getById($params['group_id']);
if (!$groupItem)
{
return $result;
}
$groupFields = $groupItem->getFields();
$chatMessageFields = array(
"MESSAGE" => str_replace('#GROUP_NAME#', $groupFields['NAME'], Loc::getMessage($groupItem->isProject() ? "SOCIALNETWORK_WORKGROUP_CHAT_UNLINKED_PROJECT" : "SOCIALNETWORK_WORKGROUP_CHAT_UNLINKED")),
"SYSTEM" => "Y"
);
$res = ChatTable::getList(array(
'select' => Array('ID'),
'filter' => array(
'=ENTITY_TYPE' => self::CHAT_ENTITY_TYPE,
'=ENTITY_ID' => $params['group_id']
)
));
while ($chat = $res->fetch())
{
if (ChatTable::update($chat['ID'], array(
'ENTITY_TYPE' => false,
'ENTITY_ID' => false
))->isSuccess())
{
return CIMChat::addMessage(array_merge(
$chatMessageFields, array(
"TO_CHAT_ID" => $chat['ID']
)
));
}
}
$result = true;
return $result;
}