• Модуль: lists
  • Путь к файлу: ~/bitrix/modules/lists/classes/general/livefeed.php
  • Класс: CListsLiveFeed
  • Вызов: CListsLiveFeed::OnAfterSonetLogEntryAddComment
static function OnAfterSonetLogEntryAddComment($comment)
{
	if ($comment["EVENT_ID"] != "lists_new_element_comment")
	{
		return;
	}

	$logQuery = CSocNetLog::getList(
		array(),
		array(
			"ID" => $comment["LOG_ID"],
			"EVENT_ID" => "lists_new_element"
		),
		false,
		false,
		array("ID", "SOURCE_ID", "URL", "TITLE", "USER_ID", "PARAMS")
	);

	if (($log = $logQuery->fetch()) && (intval($log["SOURCE_ID"]) > 0))
	{
		$params = unserialize($log["PARAMS"], ['allowed_classes' => false]);
		$title = $log["TITLE"]." - ".$params["ELEMENT_NAME"];

		$userIdsToNotify = self::getUserIdsFromRights($log['ID']);

		foreach ($userIdsToNotify as $userId)
		{
			CListsLiveFeed::notifyComment(
				[
					"LOG_ID" => $comment["LOG_ID"],
					"MESSAGE_ID" => $comment["SOURCE_ID"],
					"TO_USER_ID" => $userId,
					"FROM_USER_ID" => $comment["USER_ID"],
					"URL" => $log["URL"],
					"TITLE" => $title
				]
			);
		}
	}
}