• Модуль: forum
  • Путь к файлу: ~/bitrix/modules/forum/lib/integration/socialnetwork/logcomment.php
  • Класс: BitrixForumIntegrationSocialnetworkLogComment
  • Вызов: LogComment::onIndexGetContent
static function onIndexGetContent(Event $event)
{
	$result = new EventResult(
		EventResult::UNDEFINED,
		array(),
		'forum'
	);

	$eventId = $event->getParameter('eventId');
	$sourceId = $event->getParameter('sourceId');

	if (!in_array($eventId, self::getEventIdList()))
	{
		return $result;
	}

	$content = "";
	$message = false;

	if ((int)$sourceId > 0)
	{
		$select = array('*', 'UF_FORUM_MES_URL_PRV', 'SERVICE_TYPE');

		if (
			BitrixMainConfigOption::get('disk', 'successfully_converted', false)
			&& BitrixMainModuleManager::isModuleInstalled('disk')
		)
		{
			$select[] = 'UF_FORUM_MESSAGE_DOC';
		}

		$res = MessageTable::getList(array(
			'filter' => array(
				'=ID' => $sourceId
			),
			'select' => $select
		));
		$message = $res->fetch();
	}

	if ($message)
	{
		if (!empty($message['SERVICE_TYPE']))
		{
			return $result;
		}

		$content .= LogIndex::getUserName($message["AUTHOR_ID"])." ";
		$content .= forumTextParser::clearAllTags($message['POST_MESSAGE']);

		if (!empty($message['UF_FORUM_MESSAGE_DOC']))
		{
			$fileNameList = LogIndex::getDiskUFFileNameList($message['UF_FORUM_MESSAGE_DOC']);
			if (!empty($fileNameList))
			{
				$content .= ' '.implode(' ', $fileNameList);
			}
		}

		if (!empty($message['UF_FORUM_MES_URL_PRV']))
		{
			$metadata = BitrixMainUrlPreviewUrlMetadataTable::getRowById($message['UF_FORUM_MES_URL_PRV']);
			if (
				$metadata
				&& !empty($metadata['TITLE'])
			)
			{
				$content .= ' '.$metadata['TITLE'];
			}
		}
	}

	$result = new EventResult(
		EventResult::SUCCESS,
		array(
			'content' => $content,
		),
		'forum'
	);

	return $result;
}