• Модуль: 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();
}