• Модуль: xdimport
  • Путь к файлу: ~/bitrix/modules/xdimport/lib/integration/socialnetwork/logcomment.php
  • Класс: BitrixXDImportIntegrationSocialnetworkLogComment
  • Вызов: LogComment::getAvatarUrl
static function getAvatarUrl(array $params = []): string
{
	static $cache = [];

	$result = '';

	$fileId = (isset($params['fileId']) ? (int)$params['fileId'] : 0);
	if ($fileId <= 0)
	{
		return $result;
	}

	if (isset($cache[$fileId]))
	{
		return $cache[$fileId];
	}

	if (!Loader::includeModule('im'))
	{
		return $result;
	}

	$avatarSize = (isset($params['avatarSize']) ? (int)$params['avatarSize'] : 100);

	$imageResized = CFile::resizeImageGet(
		$fileId,
		[
			'width' => $avatarSize,
			'height' => $avatarSize
		],
		BX_RESIZE_IMAGE_EXACT
	);

	if (!$imageResized)
	{
		return $result;
	}

	if (strpos($imageResized['src'], 'http') !== 0)
	{
		$imageResized['src'] = BitrixImCommon::getPublicDomain() . $imageResized['src'];
	}

	$cache[$fileId] = $imageResized['src'];
	$result = $cache[$fileId];

	return $result;
}