• Модуль: socialnetwork
  • Путь к файлу: ~/bitrix/modules/socialnetwork/lib/item/helper.php
  • Класс: BitrixSocialnetworkItemHelper
  • Вызов: Helper::getBlogPostEventId
static function getBlogPostEventId(array $params = []): string
{
	global $USER_FIELD_MANAGER;

	if (!Loader::includeModule('blog'))
	{
		throw new SystemException(Loc::getMessage('SOCIALNETWORK_ITEM_HELPER_BLOG_MODULE_NOT_INSTALLED'), 'SONET_CONTROLLER_LIVEFEED_BLOGPOST_MODULE_BLOG_NOT_INSTALLED');
	}

	$postId = (isset($params['postId']) && (int)$params['postId'] > 0 ? (int)$params['postId'] : 0);
	if ($postId <= 0)
	{
		throw new SystemException('Empty post ID', 'SONET_CONTROLLER_LIVEFEED_BLOGPOST_EMPTY_POST_ID');
	}

	$eventId = BitrixBlogIntegrationSocialnetworkLog::EVENT_ID_POST;
	$postUserFields = $USER_FIELD_MANAGER->getUserFields('BLOG_POST', $postId, LANGUAGE_ID);

	if (
		isset($postUserFields['UF_BLOG_POST_IMPRTNT']['VALUE'])
		&& (int)$postUserFields['UF_BLOG_POST_IMPRTNT']['VALUE'] > 0
	)
	{
		$eventId = BitrixBlogIntegrationSocialnetworkLog::EVENT_ID_POST_IMPORTANT;
	}
	elseif (
		isset($postUserFields['UF_BLOG_POST_VOTE']['VALUE'])
		&& (int)$postUserFields['UF_BLOG_POST_VOTE']['VALUE'] > 0
	)
	{
		$eventId = BitrixBlogIntegrationSocialnetworkLog::EVENT_ID_POST_VOTE;
	}
	elseif (
		isset($postUserFields['UF_GRATITUDE']['VALUE'])
		&& (int)$postUserFields['UF_GRATITUDE']['VALUE'] > 0
	)
	{
		$eventId = BitrixBlogIntegrationSocialnetworkLog::EVENT_ID_POST_GRAT;
	}

	return $eventId;
}