Все привет.
Задача: вывести на главной странице интернет-магазина блок "Лови Момент" 5 случайных товаров, и установить каждому скидку 20%, только при покупки из блока, и только на этой странице. При обновлении страницы товары меняются, другим 5 приписывается ссылка, а для начальных обнуляется.
Что делаю:
1. вывожу 5 случайных элементов инфоблока.
2. При нажатии Купить через AJAX POST запрос вызываем файл basket.php
Пытаюсь добавить $arDiscount при вызове Add2BasketByProductID - но скидка не добавляется в корзину. В Phpmyadmin вижу заполнены поля DISCOUNT_NAME, DISCOUNT_VALUE.
Помогите, пожайлуста.
Задача: вывести на главной странице интернет-магазина блок "Лови Момент" 5 случайных товаров, и установить каждому скидку 20%, только при покупки из блока, и только на этой странице. При обновлении страницы товары меняются, другим 5 приписывается ссылка, а для начальных обнуляется.
Что делаю:
1. вывожу 5 случайных элементов инфоблока.
Скрытый текст |
---|
// вывод 5 случайных элемента каталога $arSelect = array("ID", "NAME", "DETAIL_PAGE_URL", "PROPERTY_ARTNUMBER","PROPERTY_OLD_SITE_PICTURE","CATALOG_PRICE_1" ; $rs = CIBlockElement::GetList ( Array("RAND" => "ASC" , Array("IBLOCK_ID" => 3), false, Array ("nTopCount" => 5, "ID", "OLD_SITE_PICTURE" , $arSelect ); while($ar_fields = $rs->GetNext()) { $arPrice = CPrice::GetBasePrice($ar_fields["ID"] ; $PictureOldSiteName = $ar_fields["PROPERTY_OLD_SITE_PICTURE_VALUE"]; if($ar_fields["DETAIL_PICTURE"] { $PicSrc = $ar_fields["DETAIL_PICTURE"]; } elseif((file_exists($_SERVER['DOCUMENT_ROOT']."/products_pictures/".$PictureOldSiteName)) && (!empty($PictureOldSiteName))){ $PicSrc = '/products_pictures/'.$PictureOldSiteName; } else{ $PicSrc = '/bitrix/components/bitrix/eshop.sale.basket.basket/templates/.default/images/no-photo.png'; } ?> <div class="item"> <div> <img src="<?=$PicSrc?>" alt="<?=$ar_fields["NAME"]?>"> </div> <h3><?=$ar_fields["NAME"]?></h3> <span class="offer">Только сегодня цена: <?//foreach($arItem["PRICES"] as $code=>$arPrice): if($arPrice["CAN_ACCESS"] :?> <span class="red"><?=$arPrice["PRICE"]?> руб.</span> <br> <span class="strike offerindent"><?=$arPrice["PRICE"]?> руб.</span> <? endif; // endforeach; ?> </span> </div> <?}?> |
Скрытый текст |
---|
<? require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php" ; ?> <? CModule::IncludeModule("sale" ; CModule::IncludeModule("catalog" ; if($_POST["ajaxaddid"] && $_POST["ajaxaction"] == 'add'){ //Add2BasketByProductID($_POST["ajaxaddid"], 1, array()); if($_POST["size"] && $_POST["color"] { Add2BasketByProductID($_POST["ajaxaddid"], 1, array(), array( array("NAME" => "Размер", "VALUE" => $_POST["size"] , array("NAME" => "Цвет", "VALUE" => $_POST["color"] , )); } elseif($_POST["size"] && !$_POST["color"] { Add2BasketByProductID($_POST["ajaxaddid"], 1, array(), array( array("NAME" => "Размер", "VALUE" => $_POST["size"] )); } elseif(!$_POST["size"] && $_POST["color"] { Add2BasketByProductID($_POST["ajaxaddid"], 1, array(), array( array("NAME" => "Цвет", "VALUE" => $_POST["color"] )); } else{ $arDiscount = array( "LID" => s1, "DELAY" => "N", "CAN_BUY" => "Y", "MODULE" => "catalog", "NOTES" => "", "DISCOUNT_PRICE" => 20, "DISCOUNT_VALUE" => 20, "DISCOUNT_NAME" => "Лови момент", ); Add2BasketByProductID($_POST["ajaxaddid"], 1,$arDiscount, array()); } } /* Goods removal at pressing on to remove in a small basket */ if($_POST["ajaxdeleteid"] && $_POST["ajaxaction"] == 'delete'){ CSaleBasket: elete($_POST["ajaxdeleteid"] ; } /* Changes of quantity of the goods after receipt of inquiry from a small basket */ if($_POST["ajaxbasketcountid"] && $_POST["ajaxbasketcount"] && $_POST["ajaxaction"] == 'update'){ $arFields = array( "QUANTITY" => $_POST["ajaxbasketcount"] ); CSaleBasket::Update($_POST["ajaxbasketcountid"], $arFields); } ?> <? $APPLICATION->IncludeComponent("my-site:sale.basket.basket.small", "my-basket", array( "PATH_TO_BASKET" => "/personal/cart/", "PATH_TO_ORDER" => "/personal/order.php" ), false ); ?> |
Помогите, пожайлуста.