Не получается реализовать механизм замены кнопки "Купить" на кнопку "В корзине", реализовываю с помощью js подстановки в component_epilog.php:
CModule::IncludeModule('sale');
$arProductsInBasketHide = array();
$arProductsInBasketShow = array();
$resBasket = CSaleBasket::GetList(
array(),
array(
"FUSER_ID" => CSaleBasket::GetBasketUserID(),
"LID" => SITE_ID,
"ORDER_ID" => "NULL"
)
);
while ($arBasketProd = $resBasket->GetNext()) {
$arProductsInBasketHide[] = "div[add='add_hide_".$arBasketProd['PRODUCT_ID']."']";
$arProductsInBasketShow[] = "div[add='add_show_".$arBasketProd['PRODUCT_ID']."']";
}
echo '<sc ript>jQuery(document).ready(function(){jQuery("'.implode(', ', $arProductsInBasketHide).'").hide()});</scr ipt>'; //замена кнопок
echo '<scr ipt>jQuery(document).ready(function(){jQuery("'.implode(', ', $arProductsInBasketShow).'").show()});</s cript>';
С кодом js все окей, все работает. НО только для авторизированных пользователей, для неавторизированных выдает один и тот же результат на разных компьютерах. Т.е. component_epilog не отрабатывается, а результат берется откуда-то из кеша.
Пробовал разные варианты и в catalog.item и в catalog.section код добавлять, не помогает.
CModule::IncludeModule('sale');
$arProductsInBasketHide = array();
$arProductsInBasketShow = array();
$resBasket = CSaleBasket::GetList(
array(),
array(
"FUSER_ID" => CSaleBasket::GetBasketUserID(),
"LID" => SITE_ID,
"ORDER_ID" => "NULL"
)
);
while ($arBasketProd = $resBasket->GetNext()) {
$arProductsInBasketHide[] = "div[add='add_hide_".$arBasketProd['PRODUCT_ID']."']";
$arProductsInBasketShow[] = "div[add='add_show_".$arBasketProd['PRODUCT_ID']."']";
}
echo '<sc ript>jQuery(document).ready(function(){jQuery("'.implode(', ', $arProductsInBasketHide).'").hide()});</scr ipt>'; //замена кнопок
echo '<scr ipt>jQuery(document).ready(function(){jQuery("'.implode(', ', $arProductsInBasketShow).'").show()});</s cript>';
С кодом js все окей, все работает. НО только для авторизированных пользователей, для неавторизированных выдает один и тот же результат на разных компьютерах. Т.е. component_epilog не отрабатывается, а результат берется откуда-то из кеша.
Пробовал разные варианты и в catalog.item и в catalog.section код добавлять, не помогает.