- Модуль: socialnetwork
- Путь к файлу: ~/bitrix/modules/socialnetwork/classes/general/log_destination.php
- Класс: CSocNetLogDestination
- Вызов: CSocNetLogDestination::formatCrmEmailEntity
static function formatCrmEmailEntity($fields, $params = array())
{
static $siteNameFormat = false;
$result = array();
$userParams = array();
if (
is_array($params)
&& isset($params["TYPE"])
&& in_array($params["TYPE"], array('CONTACT', 'COMPANY', 'LEAD'))
)
{
if ($siteNameFormat === false)
{
$siteNameFormat = (
!empty($params["NAME_TEMPLATE"])
? $params["NAME_TEMPLATE"]
: CSite::GetNameFormat(false)
);
}
$prefix = '';
if ($params["TYPE"] === 'CONTACT')
{
$prefix = 'C_';
$imageField = 'PHOTO';
$userParams = array(
'name' => $fields['NAME'],
'lastName' => $fields['LAST_NAME']
);
$name = CUser::FormatName(
$siteNameFormat,
$fields,
true,
true
);
}
elseif ($params["TYPE"] === 'COMPANY')
{
$prefix = 'CO_';
$imageField = 'LOGO';
$name = $fields['TITLE'];
$userParams = array(
'name' => '',
'lastName' => $fields['TITLE']
);
}
elseif ($params["TYPE"] === 'LEAD')
{
$prefix = 'L_';
$imageField = false;
$name = $fields['TITLE'];
$userParams = array(
'name' => $fields['NAME'],
'lastName' => $fields['LAST_NAME']
);
$username = CUser::FormatName(
$siteNameFormat,
$fields,
true,
true
);
if (!empty($username))
{
$name .= ', '.$username;
}
}
if (
$imageField
&& isset($fields[$imageField])
)
{
$arFileTmp = CFile::ResizeImageGet(
$fields[$imageField],
array('width' => 100, 'height' => 100),
BX_RESIZE_IMAGE_EXACT,
false
);
}
else
{
$arFileTmp = array();
}
$result = array(
'id' => $prefix.$fields["ID"],
'crmEntity' => $prefix.$fields["ID"],
'entityId' => $fields['ID'],
'name' => $name,
'avatar' => (
empty($arFileTmp['src'])
? ''
: $arFileTmp['src']
),
'desc' => (!empty($params['EMAIL']) ? $params['EMAIL'] : ''),
'email' => (!empty($params['EMAIL']) ? $params['EMAIL'] : ''),
'isExtranet' => 'N',
'isEmail' => 'Y',
'isCrmEmail' => 'Y',
'params' => $userParams
);
}
return $result;
}