Кэш браузера влияет на работу плагина Minishop2?
        Проблема в том, что при очищенном кеше браузера, значение переменной не передается.
Короткое видео: https://www.youtube.com/embed/zNARHAGA0Rk
Тестовый сайт: http://s15513.h10.modhost.pro/
Плагин 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;
        }
    }
}Не понимаю в чем проблема?    Комментарии: 7
                Как вызывается плейсхолдер на странице?            
                    
                В чанке tpl.msOrder
                    {$_modx->getPlaceholder('sinastry')}            
                Мне кажется странным идея выставлять плейсхолдер в обработчике доставки что срабатывает по ajax и затем ловить его на странице.            
                    
                Задача, при достижении конкретной суммы показывать дополнительные поля при оформлении заказа.
Может, конечно, нужно делать это как-то иначе, но пока я не придумал ничего лучше.
                    Может, конечно, нужно делать это как-то иначе, но пока я не придумал ничего лучше.
                Вам нужно перейти на сторону js и там в callback к Order.getcost.success написать эту же проверку, и результат вставлять куда вам нужно с помощью jquery            
                    
                Спасибо за совет!            
                    
                А если сделать плагином 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');
	}
    }
}            
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.