- Модуль: crm
- Путь к файлу: ~/bitrix/modules/crm/lib/Service/Timeline/Item/Activity/OpenLine.php
- Класс: Bitrix\Crm\Service\Timeline\Item\Activity\OpenLine
- Вызов: OpenLine::getLogo
public function getLogo(): ?Layout\Body\Logo
{
$logoCode = Layout\Common\Logo::CHANNEL_CHAT; // default icon
// logos map, see connector codes OpenLineManager::$supportedConnectors
$logoMap = [
'avito' => Layout\Common\Logo::CHANNEL_AVITO,
'imessage' => Layout\Common\Logo::CHANNEL_APPLE,
'facebook' => Layout\Common\Logo::CHANNEL_FACEBOOK,
'facebookmessenger' => Layout\Common\Logo::CHANNEL_FACEBOOK_CHAT,
'facebookcomments' => Layout\Common\Logo::CHANNEL_FACEBOOK_CHAT,
'fbinstagram' => Layout\Common\Logo::CHANNEL_INSTAGRAM_DIRECT,
'fbinstagramdirect' => Layout\Common\Logo::CHANNEL_INSTAGRAM_DIRECT,
'livechat' => Layout\Common\Logo::CHANNEL_CHAT,
'network' => Layout\Common\Logo::CHANNEL_BITRIX,
'ok' => Layout\Common\Logo::CHANNEL_ODNOKLASSNIKI,
'telegram' => Layout\Common\Logo::CHANNEL_TELEGRAM,
'telegrambot' => Layout\Common\Logo::CHANNEL_TELEGRAM,
'viber' => Layout\Common\Logo::CHANNEL_VIBER,
'vkgroup' => Layout\Common\Logo::CHANNEL_VK,
'vkgrouporder' => Layout\Common\Logo::CHANNEL_VK_ORDER,
'whatsappbytwilio' => Layout\Common\Logo::CHANNEL_WHATSAPP_BITRIX,
'whatsappbyedna' => Layout\Common\Logo::CHANNEL_EDNA,
];
$userCode = $this->getAssociatedEntityModel()->get('PROVIDER_PARAMS')['USER_CODE'];
if (isset($userCode))
{
$connectorType = OpenLineManager::getLineConnectorType($userCode);
if (isset($logoMap[$connectorType]))
{
$logoCode = $logoMap[$connectorType];
}
}
return Layout\Common\Logo::getInstance($logoCode)
->createLogo()
->setAction($this->getOpenChatAction())
;
}