- Модуль: im
- Путь к файлу: ~/bitrix/modules/im/lib/V2/Controller/Chat.php
- Класс: BitrixImV2ControllerChat
- Вызов: Chat::setAvatarIdAction
public function setAvatarIdAction(BitrixImV2Chat $chat, int $avatarId)
{
$chat->setAvatarId($avatarId);
$result = $chat->save();
if (!$result->isSuccess())
{
return $this->convertKeysToCamelCase($result->getErrors());
}
$avatarFile = CFile::ResizeImageGet(
$avatarId,
[],
BX_RESIZE_IMAGE_EXACT,
false,
false,
true
);
if (!empty($avatarFile['src']))
{
$imageUrl = $avatarFile['src'];
Event::add($chat->getRelations()->getUserIds(), [
'module_id' => 'im',
'command' => 'chatAvatar',
'params' => [
'chatId' => $chat->getChatId(),
'avatar' => $imageUrl,
],
'extra' => Common::getPullExtra()
]);
}
return $result->isSuccess();
}