Всем доброго вечера. У меня в файле header.php шаблона вызывается компонент bitrix:search.title код вызова:
| Код |
|---|
<div class="search-header-wrapper">
<?$APPLICATION->IncludeComponent(
"bitrix:search.title",
"inline",
array(
"NUM_CATEGORIES" => "0",
"TOP_COUNT" => "5",
"CHECK_DATES" => "N",
"SHOW_OTHERS" => "N",
"PAGE" => "https://gazkomfort.ru/catalog/search.php",
"CATEGORY_0_TITLE" => GetMessage("SEARCH_GOODS") ,
"CATEGORY_0" => array(
0 => "iblock_catalog",
),
"CATEGORY_0_iblock_catalog" => array(
0 => "all",
),
"CATEGORY_OTHERS_TITLE" => GetMessage("SEARCH_OTHER"),
"SHOW_INPUT" => "Y",
"INPUT_ID" => "title-search-input",
"CONTAINER_ID" => "title-search",
"PRICE_CODE" => array(
0 => "BASE",
),
"SHOW_PREVIEW" => "Y",
"PREVIEW_WIDTH" => "75",
"PREVIEW_HEIGHT" => "75",
"CONVERT_CURRENCY" => "Y"
),
false
);?>
</div>
<div id="title-search" style="position: relative; top: 35px; width:415px;"></div>
|
Шаблон компонента:
| Код |
|---|
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
/** @var array $arParams */
/** @var array $arResult */
/** @global CMain $APPLICATION */
/** @global CUser $USER */
/** @global CDatabase $DB */
/** @var CBitrixComponentTemplate $this */
/** @var string $templateName */
/** @var string $templateFile */
/** @var string $templateFolder */
/** @var string $componentPath */
/** @var CBitrixComponent $component */
$this->setFrameMode(true);
$this->addExternalCss("/bitrix/css/main/bootstrap.css");
$this->addExternalCss("/bitrix/css/main/font-awesome.css");
$INPUT_ID = trim($arParams["~INPUT_ID"]);
if(strlen($INPUT_ID) <= 0)
$INPUT_ID = "title-search-input";
$INPUT_ID = CUtil::JSEscape($INPUT_ID);
$CONTAINER_ID = trim($arParams["~CONTAINER_ID"]);
if(strlen($CONTAINER_ID) <= 0)
$CONTAINER_ID = "title-search";
$CONTAINER_ID = CUtil::JSEscape($CONTAINER_ID);
//print_r($arResult);
if($arParams["SHOW_INPUT"] !== "N"):?>
<div id="search" class="gk-searchtitle">
<fo rm action="<?echo $arResult["FORM_ACTION"]?>">
<div class="gk-input-group">
<input id="title-search-input" type="text" name="q" value="<?=htmlspecialcharsbx($_REQUEST["q"])?>" placeholder="<?=GetMessage('INPUT_SEARCH_PLACEHOLDER')?>" autocomplete="off" class="gk-form-control"/>
<span class="gk-input-group-btn">
<button class="btn btn-default" type="submit" name="s"><i class="fa fa-search"></i></button>
</span>
</div>
</form>
</div>
<?endif?>
<sc ript>
BX.ready(function(){
new JCTitleSearch({
'AJAX_PAGE' : '<?echo CUtil::JSEscape(POST_FORM_ACTION_URI)?>',
'CONTAINER_ID': '<?echo $CONTAINER_ID?>',
'INPUT_ID': '<?echo $INPUT_ID?>',
'MIN_QUERY_LEN': 2
});
});
</sc ript>
|
Подскажите пожалуйста решение пары трудностей с ним.
1- Появляется всплывающие окно только на главной странице. На всех остальных даже не отправляется ajax запрос, прослеживаю это с помощью окна разработчика хрома, вкладка network
2- На главной, цена всех найденных товаров не конвертируется в рубли.
