Бесплатная доставка все равно считается в админке

Сделал бесплатную доставку от 5000 р
class msDeliveryHandler_free5000 extends msDeliveryHandler{

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

        $add_price = 0;

        if($cost < 5000){
            $add_price = $delivery->get('price');
        }

        return $cost + $add_price;

    }

}
В варианте доставки: msDeliveryHandler_free5000




При оформлении заказа все отлично, стандартная цена 300р и от 5000р бесплатно.

Но зайдя в заказы в админке — стоит стоимость доставкии 300р + письмо приходящее клиенту тоже стоит со стандартной ценой доставки.






Как решить проблему?
exxage
23 июня 2014, 10:21
modx.pro
2
1 130
+1

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

Алексей Ерохин
23 июня 2014, 15:38
2
0
public function getCost(msOrderInterface $order, msDelivery $delivery, $cost = 0) {
        $cart = $this->ms2->cart->status();
        if ($cart['total_cost']<5000) {
            $add_price = $delivery->get('price');
            if (preg_match('/%$/', $add_price)) {
                $add_price = str_replace('%', '', $add_price);
                $add_price = $cost / 100 * $add_price;
            }
            $cost += $add_price;
        }
        return $cost;
    }
    exxage
    23 июня 2014, 15:53
    0
    Был бы я женщиной — я б вам дала. Огромное спасибо!
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    2