- Модуль: crmmobile
- Путь к файлу: ~/bitrix/modules/crmmobile/lib/Controller/EntityDetails.php
- Класс: BitrixCrmMobileControllerEntityDetails
- Вызов: EntityDetails::getEntityHeader
protected function getEntityHeader(Item $entity = null): ?array
{
if ($this->header === null)
{
$text = '';
$detailText = '';
$imageUrl = null;
if (!$entity)
{
$entity = $this->loadEntity();
}
if ($entity && !$entity->isNew())
{
if ($this->isCopyMode())
{
$typeName = mb_strtoupper(CCrmOwnerType::ResolveName($entity->getEntityTypeId()));
$text = Loc::getMessage("M_CRM_ENTITY_DETAILS_COPY_TEXT_{$typeName}");
if (!$text)
{
$text = Loc::getMessage('M_CRM_ENTITY_DETAILS_COPY_TEXT');
}
}
else
{
$text = (string)$entity->getHeading();
$detailText = $this->getHeaderDetailText($entity);
}
$logo = null;
$size = null;
if ($entity->getEntityTypeId() === CCrmOwnerType::Contact)
{
$logo = $entity->get(Contact::FIELD_NAME_PHOTO);
$size = ['width' => 200, 'height' => 200];
}
elseif ($entity->getEntityTypeId() === CCrmOwnerType::Company)
{
$logo = $entity->get(Company::FIELD_NAME_LOGO);
$size = ['width' => 300, 'height' => 300];
}
if (!empty($logo))
{
$imageUrl = CFile::ResizeImageGet(
$logo,
$size,
BX_RESIZE_IMAGE_EXACT,
false,
false,
true
);
$imageUrl = $imageUrl['src'] ?? null;
}
}
$this->header = [
'text' => $text,
'detailText' => $detailText,
'imageUrl' => $imageUrl,
];
}
return $this->header;
}