Кэш браузера влияет на работу плагина Minishop2?

Проблема в том, что при очищенном кеше браузера, значение переменной не передается.

Короткое видео: https://www.youtube.com/embed/zNARHAGA0Rk

Тестовый сайт: http://s15513.h10.modhost.pro/

Плагин Minishop2 сделал по инструкции.

<?php
if(!class_exists('msDeliveryInterface')) {
    require_once dirname(dirname(dirname(__FILE__))) . '/model/minishop2/msdeliveryhandler.class.php';
}

class msDeliveryHandlerMsk extends msDeliveryHandler implements msDeliveryInterface{

    public function getCost(msOrderInterface $order, msDelivery $delivery, $cost = 0) {

        $freedeliverysumm = 3000;
        $cart = $order->ms2->cart->status();
        $cart_cost = $cart['total_cost'];

        if($cart_cost > $freedeliverysumm){
            $this->modx->setPlaceholder('sinastry','Сумма больше 3000');
            return $cost;
        }else{
            $delivery_cost = parent::getCost($order, $delivery, $cost);
            $this->modx->setPlaceholder('sinastry','Сумма меньше 3000');
            return $delivery_cost;
        }
    }
}
Не понимаю в чем проблема?
Александр Наумов
22 марта 2018, 15:26
modx.pro
1 164
0

Комментарии: 7

Виталий Серый
22 марта 2018, 19:41
0
Как вызывается плейсхолдер на странице?
Володя
23 марта 2018, 09:48
0
Мне кажется странным идея выставлять плейсхолдер в обработчике доставки что срабатывает по ajax и затем ловить его на странице.
    Александр Наумов
    23 марта 2018, 10:50
    0
    Задача, при достижении конкретной суммы показывать дополнительные поля при оформлении заказа.
    Может, конечно, нужно делать это как-то иначе, но пока я не придумал ничего лучше.
    Алексей Ерохин
    23 марта 2018, 11:15
    0
    Вам нужно перейти на сторону js и там в callback к Order.getcost.success написать эту же проверку, и результат вставлять куда вам нужно с помощью jquery
    Александр Наумов
    15 апреля 2018, 18:47
    0
    А если сделать плагином MODX на сабытие msOnSubmitOrder, как сказано здесь, вот только у меня почему-то не работает, может в Minishop2, что-то изменилось?

    if ($modx->event->name == 'msOnSubmitOrder'){
        if($cart = $order->ms2->cart->status()) {
            if($cart['total_cost'] < 3000) {
    		$modx->toPlaceholder('sinastry','Сумма меньше 3000');
            } else {
     		$modx->toPlaceholder('sinastry','Сумма больше 3000');
    	}
        }
    }
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      7