Есть каталог товаров, в настройках "catalog.section" прописано по сколько товаров каждого раздела выводить на страницу, выявилась проблема:
если человек листает раздел до 6 страницы (к примеру) и на этой странице на товаре нажимает "положить в корзину", то скрипт отрабатывает (в корзину товар помещается), однако посетителя выбрасывает на 1 страницу раздела - что ему, естественно, неудобно. Схожая картина наблюдается в случае, если на той же 6 странице щелкнуть на товаре и перейти в его детальное описание, там присутствует кнопка "вернуться в раздел" - она также ведет на 1 страницу раздела.
В параметрах компонента стоит "url, ведущий на страницу раздела - /catalog/#SECTION_ID#/ - что поменять в консерватории, чтобы отсылать именно на ту страницу раздела, где было "событие"?
Или в templates.php нужно копать?
function add(id)
{
//document.getElementById("action"
.value = "ADD2BASKET";
document.forms["order"+id].action.value = "ADD2BASKET";
document.forms["order"+id].submit()
}
<div class="order-form">
<fo rm name="order<?=$arElement["ID"]?>" id="order<?=$arElement["ID"]?>" action="<?=$APPLICATION->GetCurPage()?>" method="post" enctype="multipart/form-data">
<input type="hidden" name="action" value="ADD2BASKET" />
<input type="hidden" name="id" value="<?=$arElement["ID"]?>" />
<input class="inputtext" type="text" name="col" id="col" maxlength="10" value="1" size="3" on KeyPress="if ((event.keyCode < 4 8) || (event.keyCode > 57)) event.returnValue = false" /> <?=$arElement["DISPLAY_PROPERTIES"]["CML2_BASE_UNIT"]["DISPLAY_VALUE"];?>
<?if($arElement["CAN_BUY"]
:?>
[url=jav * ascript:buy(<?=$arElement[]
"><?echo GetMessage("CATALOG_BUY"
?>[/url]<br>[url=jav * ascript:add(<?=$arElement[]
"><?echo GetMessage("CATALOG_ADD"
?>[/url]
<?elseif((count($arElement["PRICES"]
> 0) || is_array($arElement["PRICE_MATRIX"]
):?>
<?=GetMessage("CATALOG_NOT_AVAILABLE"
?>
<?endif?>
</form>
</div>