• Модуль: socialnetwork
  • Путь к файлу: ~/bitrix/modules/socialnetwork/classes/general/log_tools.php
  • Класс: CSocNetLogTools
  • Вызов: CSocNetLogTools::FormatEvent_PhotoPhoto
static function FormatEvent_PhotoPhoto($arFields, $arParams, $bMail = false)
{
	if (
		$bMail
		&& $arFields["MAIL_LANGUAGE_ID"] <> ''
	)
		IncludeModuleLangFile(__FILE__, $arFields["MAIL_LANGUAGE_ID"]);

	$arResult = array(
		"EVENT" => $arFields,
		"CREATED_BY" => CSocNetLogTools::FormatEvent_GetCreatedBy($arFields, $arParams, $bMail),
		"ENTITY" => CSocNetLogTools::FormatEvent_GetEntity($arFields, $arParams, $bMail),
		"EVENT_FORMATTED" => array(),
	);

	$arResult["AVATAR_SRC"] = CSocNetLogTools::FormatEvent_CreateAvatar($arFields, $arParams);

	$album_tmp = GetMessage("SONET_GL_EVENT_TITLE_PHOTO_ALBUM");
	if ($arFields["PARAMS"] <> '')
	{
		$arTmp = unserialize(htmlspecialcharsback($arFields["PARAMS"]), [ 'allowed_classes' => false ]);
		if ($arTmp && array_key_exists("SECTION_NAME", $arTmp))
		{
			if (
				!$bMail
				&& array_key_exists("SECTION_URL", $arTmp)
				&& $arTmp["SECTION_URL"] <> ''
			)
			{
				if (
					$arFields["ENTITY_TYPE"] === SONET_ENTITY_GROUP
					&& (
						ModuleManager::isModuleInstalled('extranet')
						|| (mb_strpos($arTmp["SECTION_URL"], "#GROUPS_PATH#") !== false)
					)
				)
				{
					$arTmp["SECTION_URL"] = str_replace("#GROUPS_PATH#", COption::GetOptionString("socialnetwork", "workgroups_page", "/workgroups/", SITE_ID), $arTmp["SECTION_URL"]);
				}

				$album_tmp .= (
					($arParams["MOBILE"] ?? null) === "Y"
						? ' '.htmlspecialcharsbx($arTmp["SECTION_NAME"])
						: ' '.htmlspecialcharsbx($arTmp["SECTION_NAME"]).''
				);
			}
			else
			{
				$album_tmp .= ' '.htmlspecialcharsbx($arTmp["SECTION_NAME"]);
			}
		}
	}

	$title = str_replace(
		array("#ALBUM#", "#ENTITY#", "#CREATED_BY#"),
		array($album_tmp, $arResult["ENTITY"]["FORMATTED"], ($bMail ? $arResult["CREATED_BY"]["FORMATTED"] : "")),
		(
			($arParams["MOBILE"] ?? null) === "Y"
				? GetMessage("SONET_GL_EVENT_TITLE_PHOTOPHOTO_MOBILE")
				: GetMessage("SONET_GL_EVENT_TITLE_PHOTOPHOTO")
		)
	);

	$arResult["EVENT_FORMATTED"] = (
		($arParams["MOBILE"] ?? null) === "Y"
			? [
				"TITLE" => $title,
				"MESSAGE" => "",
			]
			: [
				"TITLE" => $title,
				"MESSAGE" => $arFields["MESSAGE"],
				"IS_MESSAGE_SHORT" => "Y",
			]
	);

	if (!$bMail)
	{
		$dbRight = CSocNetLogRights::GetList(array(), array("LOG_ID" => $arFields["ID"]));
		while ($arRight = $dbRight->Fetch())
		{
			$arRights[] = $arRight["GROUP_CODE"];
		}

		$arResult["EVENT_FORMATTED"]["DESTINATION"] = CSocNetLogTools::FormatDestinationFromRights($arRights, array_merge($arParams, array("CREATED_BY" => $arFields["USER_ID"])), $iMoreCount);
		if ((int)$iMoreCount > 0)
		{
			$arResult["EVENT_FORMATTED"]["DESTINATION_MORE"] = $iMoreCount;
		}
	}

	if (
		$bMail
		&& $arFields["MAIL_LANGUAGE_ID"] <> ''
	)
		IncludeModuleLangFile(__FILE__, LANGUAGE_ID);

	return $arResult;
}