Коллеги, приветствую,
на странице оформления заказа /personal/order/make/ мне необходимо сделать проверку и убрать из списка товаров ненужный для заказа товар.
Взято за основу решение [URL=https://bazarow.ru/blog-note/13200/]https://bazarow.ru/blog-note/13200/[/URL] (убрать из корзины все товары, если есть купон на скидку)
Обработчик в компоненте sale.order.ajax в result_modifier.php, ниже пример кода
use Bitrix\Sale;
$basket = Sale\Basket::loadItemsForFUser(Sale\Fuser::getId(), SITE_ID);
$orderBasket = $basket->getBasketItems();
$productId=454;
foreach($orderBasket as $basketItem) {
if($basketItem->getField('PRODUCT_ID') == $productId) {
$basketItem->delete();
}
}
$basket->save();
данный код отрабатывает и корректно удаляет элемент с ID=454 только при перезагрузке текущей страницы или любом ajax-событии, например, при изменении способа доставки или оплаты. Но при первой загрузке страницы не работает и выдает данные как есть.
Как правильно реализовать удаление ненужного товара на странице оформления заказа при первой загрузке страницы?
на странице оформления заказа /personal/order/make/ мне необходимо сделать проверку и убрать из списка товаров ненужный для заказа товар.
Взято за основу решение [URL=https://bazarow.ru/blog-note/13200/]https://bazarow.ru/blog-note/13200/[/URL] (убрать из корзины все товары, если есть купон на скидку)
Обработчик в компоненте sale.order.ajax в result_modifier.php, ниже пример кода
use Bitrix\Sale;
$basket = Sale\Basket::loadItemsForFUser(Sale\Fuser::getId(), SITE_ID);
$orderBasket = $basket->getBasketItems();
$productId=454;
foreach($orderBasket as $basketItem) {
if($basketItem->getField('PRODUCT_ID') == $productId) {
$basketItem->delete();
}
}
$basket->save();
данный код отрабатывает и корректно удаляет элемент с ID=454 только при перезагрузке текущей страницы или любом ajax-событии, например, при изменении способа доставки или оплаты. Но при первой загрузке страницы не работает и выдает данные как есть.
Как правильно реализовать удаление ненужного товара на странице оформления заказа при первой загрузке страницы?