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

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

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

	$content = "";
	$logItem = false;

	if (intval($itemId) > 0)
	{
		$logItem = BitrixSocialnetworkItemLog::getById($itemId);
	}

	if ($logItem)
	{
		$logFieldList = $logItem->getFields();

		$content .= LogIndex::getUserName($logFieldList["USER_ID"])." ";

		if (!empty($logFieldList["TITLE"]))
		{
			$content .= CTextParser::clearAllTags($logFieldList["TITLE"])." ";
		}

		if (
			!empty($logFieldList["PARAMS"])
			&& ($logEntryParams = unserialize($logFieldList["PARAMS"]))
			&& !empty($logEntryParams["ELEMENT_NAME"])
		)
		{
			$content .= CTextParser::clearAllTags($logEntryParams["ELEMENT_NAME"]);
		}

		if (
			!empty($logFieldList["MESSAGE"])
			&& Loader::includeModule('bizproc')
			&& ($documentData = CBPStateService::GetStateDocumentId($logFieldList["MESSAGE"]))
			&& ($documentData[0] == 'lists')
			&& (intval($documentData[2]) > 0)
			&& Loader::includeModule('iblock')
		)
		{
			$elementObject = CIBlockElement::getList(
				array(),
				array('ID' => intval($documentData[2])),
				false,
				false,
				array('SEARCHABLE_CONTENT')
			);
			if ($element = $elementObject->fetch())
			{
				$content .= " ".$element["SEARCHABLE_CONTENT"];
			}
		}
	}

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

	return $result;
}