Вход • Регистрация

Проверка содержимого корзины перед добавлением в нее товара

  • 16 сентября 2017 г.
  • Всем привет!

    Задача в следующем - нужно реализовать в магазине акцию 1+1=3. При добавлении в корзину товара нужно проверить товары в ней - посчитать количество, посмотреть хар-ки, и в зависимости от них добавить товар по обычной цене, или по акции - бесплатно.
    Как вижу реализацию - в обработчике клика по кнопке купить получить содержимое корзины через JS, проверить условия, и в зависимости от них изменить значение характеристики, влияющей на цену, которая лежит в скрытом поле. (скрытое поле добавляется только по клику на кнопку купить также через JS). Основной вопрос в том, как посредством JS получить содержимое корзины с ID и количеством каждой позиции. Через PHP как получить вроде понятно из доков, думал через AJAX-запрос обратить к PHP скрипту и получить нужную инфу, но не совсем пониманию как этот скрипт впилить в окружение DIAFAN, чтобы ему было все известно
    • 18 сентября 2017 г.
    • Что то типо этого

      Код
      $.ajax({ url: window.location.href, type: 'POST', dataType: 'json', data:{ module: 'shop', action: 'shop_load_rel', id_shop_product: id_shop_product }, success: function(response){
      var data_rel = prepare(response.data); if(data_rel != ''){ $('.block_shop_list_cart_right').css({'position':'absolute','opacity':'0'}); $('.wrap_block_shop_list_cart').append('<div class="block_shop_list_cart_rel"><h2>Сопутствующие товары</h2>' + data_rel + '</div>'); } } });
    • 20 сентября 2017 г.
    • На любую страницу сайта можете посылать ajax запрос с данными module: 'имя модуля' и action: 'название "действия" функции которая отработает' ну и дополнительные данные. А обработчик будет у вас в папке с модулем: названиемодуля.action.php, но так же данную самописную функцию нужно описать в контроллере модуля (названиемодуля.php в папке с модулем) в функции public function action()...

      Кстати если не ошибаюсь, вам проще уже на стадии оформления заказа, отдублировать товар и задать ему цену "0" т.к. в таблице с оформленными заказами (shop_order и shop_order_goods )записывается финальная цена без ссылок на таблицу shop_price

Новости

  • 25 марта, вторник
  • Мы обновили систему тарифов, учитывая опыт работы с клиентами и современные рыночные условия. Новая тарифная сетка разработана специально для того, чтобы лучше отвечать вашим потребностям. Резкого повышения цен не произошло. Более того, некоторые тарифы даже стали выгоднее и доступнее. 
  • 17 января
  • В преддверии 2025 года была выпущена сборка 7.2.5, которая не приносит радикальных изменений в функциональности, но способствует повышению стабильности работы системы и расширению возможностей облачного сервиса для создания сайтов.
  • 18 июня 2024 г.
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.

Форум