Exemple #1
0
 function MakeFilterUrl($prefix, $arFilter)
 {
     if (!is_array($arFilter)) {
         return "&" . urlencode($prefix) . "=" . urlencode($arFilter);
     } else {
         $url = "";
         foreach ($arFilter as $key => $value) {
             $url .= CSearchTitle::MakeFilterUrl($prefix . "[" . $key . "]", $value);
         }
         return $url;
     }
 }
Exemple #2
0
			,false
			,$arParams["ORDER"]
		))
		{
			while($ar = $obTitle->Fetch())
			{
				$j++;
				if($j > $arParams["TOP_COUNT"])
				{
					$params = array("q" => $arResult["alt_query"]? $arResult["alt_query"]: $arResult["query"]);

					$url = CHTTP::urlAddParams(
						str_replace("#SITE_DIR#", SITE_DIR, $arParams["PAGE"])
						,$params
						,array("encode"=>true)
					).CSearchTitle::MakeFilterUrl("f", $exFILTER);

					$arResult["CATEGORIES"][$i]["ITEMS"][] = array(
						"NAME" => GetMessage("CC_BST_MORE"),
						"URL" => htmlspecialcharsex($url),
					);
					break;
				}
				else
				{
					$arResult["CATEGORIES"][$i]["ITEMS"][] = array(
						"NAME" => $ar["NAME"],
						"URL" => htmlspecialcharsbx($ar["URL"]),
						"MODULE_ID" => $ar["MODULE_ID"],
						"PARAM1" => $ar["PARAM1"],
						"PARAM2" => $ar["PARAM2"],
     }
     $arResult["CATEGORIES"][$i] = array("TITLE" => htmlspecialcharsbx($category_title), "ITEMS" => array());
     $exFILTER = array(0 => CSearchParameters::ConvertParamsToFilter($arParams, "CATEGORY_" . $i));
     $exFILTER[0]["LOGIC"] = "OR";
     if ($arParams["CHECK_DATES"] === "Y") {
         $exFILTER["CHECK_DATES"] = "Y";
     }
     $arOthersFilter[] = $exFILTER;
     $j = 0;
     $obTitle = new CSearchTitle();
     if ($obTitle->Search($arResult["alt_query"] ? $arResult["alt_query"] : $arResult["query"], $arParams["TOP_COUNT"], $exFILTER, false, $arParams["ORDER"])) {
         while ($ar = $obTitle->Fetch()) {
             $j++;
             if ($j > $arParams["TOP_COUNT"]) {
                 $params = array("q" => $arResult["alt_query"] ? $arResult["alt_query"] : $arResult["query"]);
                 $url = CHTTP::urlAddParams(str_replace("#SITE_DIR#", SITE_DIR, $arParams["PAGE_2"]), $params, array("encode" => true)) . CSearchTitle::MakeFilterUrl("f", $exFILTER);
                 $arResult["CATEGORIES"][$i]["ITEMS"][] = array("NAME" => GetMessage("MORE_CATEGORY"), "URL" => htmlspecialcharsex($url), "MORE" => "Y");
                 break;
             } else {
                 $arResult["CATEGORIES"][$i]["ITEMS"][] = array("NAME" => $ar["NAME"], "URL" => htmlspecialcharsbx($ar["URL"]), "MODULE_ID" => $ar["MODULE_ID"], "PARAM1" => $ar["PARAM1"], "PARAM2" => $ar["PARAM2"], "ITEM_ID" => $ar["ITEM_ID"]);
             }
         }
     }
     if (!$j) {
         unset($arResult["CATEGORIES"][$i]);
     }
 }
 if ($arParams["SHOW_OTHERS"] === "Y" && $categoryfilter == "all") {
     $arResult["CATEGORIES"]["others"] = array("TITLE" => htmlspecialcharsbx($arParams["CATEGORY_OTHERS_TITLE"]), "ITEMS" => array());
     $j = 0;
     $obTitle = new CSearchTitle();