• Модуль: socialnetwork
  • Путь к файлу: ~/bitrix/modules/socialnetwork/classes/general/log_tools.php
  • Класс: CSocNetLogTools
  • Вызов: CSocNetLogTools::FormatEvent_GetEntity
static function FormatEvent_GetEntity($arFields, $arParams, $bMail)
{
	$arEntity = [];

	if (
		($arFields["ENTITY_TYPE"] ?? null) == SONET_SUBSCRIBE_ENTITY_USER
		&& intval($arFields["ENTITY_ID"]) > 0
	)
	{
		$suffix = (
			is_array($GLOBALS["arExtranetUserID"] ?? null)
			&& in_array($arFields["ENTITY_ID"], $GLOBALS["arExtranetUserID"])
				? GetMessage("SONET_LOG_EXTRANET_SUFFIX")
				: ""
		);

		if ($bMail)
		{
			if (
				$arFields["USER_NAME"] <> ''
				|| $arFields["USER_LAST_NAME"] <> ''
			)
				$arEntity["FORMATTED"] = $arFields["USER_NAME"]." ".$arFields["USER_LAST_NAME"].$suffix;
			else
				$arEntity["FORMATTED"] = $arFields["USER_LOGIN"].$suffix;
			$arEntity["TYPE_MAIL"] = GetMessage("SONET_GL_EVENT_ENTITY_U");
		}
		else
		{
			$arFieldsTooltip = array(
				"ID" => $arFields["ENTITY_ID"],
				"NAME" => $arFields["~USER_NAME"] ?? null,
				"LAST_NAME" => $arFields["~USER_LAST_NAME"] ?? null,
				"SECOND_NAME" => $arFields["~USER_SECOND_NAME"] ?? null,
				"LOGIN" => $arFields["~USER_LOGIN"] ?? null,
			);
			$arParams["NAME_TEMPLATE"] = $arParams["NAME_TEMPLATE"] ?? '' . $suffix;
			$arEntity["TOOLTIP_FIELDS"] = CSocNetLogTools::FormatEvent_FillTooltip($arFieldsTooltip, $arParams);
			$arEntity["FORMATTED"] = "";
		}
	}
	elseif (
		$arFields["ENTITY_TYPE"] == SONET_SUBSCRIBE_ENTITY_GROUP
		&& intval($arFields["ENTITY_ID"]) > 0
	)
	{
		$suffix = (
			(
				is_array($GLOBALS["arExtranetGroupID"] ?? null)
				&& in_array($arFields["ENTITY_ID"], $GLOBALS["arExtranetGroupID"])
			)
				? GetMessage("SONET_LOG_EXTRANET_SUFFIX")
				: ""
		);

		if ($bMail)
		{
			$arEntity["FORMATTED"] = $arFields["GROUP_NAME"].$suffix;
			$arEntity["TYPE_MAIL"] = GetMessage("SONET_GL_EVENT_ENTITY_G");
		}
		else
		{
			$url = CComponentEngine::MakePathFromTemplate(
				$arParams["PATH_TO_GROUP"] ?? null,
				array("group_id" => $arFields["ENTITY_ID"])
			);

			$arSocNetAllowedSubscribeEntityTypesDesc = CSocNetAllowed::GetAllowedEntityTypesDesc();
			$arEntity["FORMATTED"]["TYPE_NAME"] = $arSocNetAllowedSubscribeEntityTypesDesc[$arFields["ENTITY_TYPE"]]["TITLE_ENTITY"];

			$arEntity["FORMATTED"]["URL"] = $url;
			$arEntity["FORMATTED"]["NAME"] = $arFields["GROUP_NAME"];
		}
	}

	return $arEntity;
}