MiniShop2 иногда не меняется доставка

Приветствую, Василий! Кажется баг попался…
У меня одна доставка стоит одну цену, другая — другую.
Но иногда, при смене доставки — она не меняется…

Я переключаю доставку, отправляется запрос (все запросы идут на assets/components/minishop2/action.php):
key delivery
ms2_action order/add
value 2

Затем тут же посылается второй запрос:
ctx web
id 2
ms2_action order/getrequired
который, вообще-то не имеет никакого отношения к багу…

И третий:

ctx web
ms2_action order/getcost

А вот тут как повезет, то придут цена с новой доставкой, то останется со старой…
Видимо, толи где-то или кешируется, или, что врядли, но фиг знает, может первый асинхронный запрос выполнялся дольше?..

Я сделал дамп переменной в файле:
/core/components/minishop2/model/minishop2/msorderhandler.class.php
public function getCost(){}
var_dump($this->order['delivery']);
И там хранится то старая доставка (не сменилась), то новая… Как повезет.

Это баг? Где можно откопать причины данной проблемы?

Кстати, вставил в файл: /assets/components/minishop2/action.php
Строку:
header("Cache-Control: no-store, no-cache, must-revalidate");
чтобы проверить, что это не кеш браузера…
Peter Zenin
25 ноября 2013, 01:34
modx.pro
1 061
0

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

Peter Zenin
25 ноября 2013, 14:00
0
Да, это асинхронные запросы…
Первый посылает указание сменить способ доставки, второй — получить новую цену.
Только вот иногда второй запрос приходит раньше первого…

Буду переделывать пока сам.

1 вариант — сделать чтоб за один запрос все отдавалось и менялось, второй попроще — всунуть второй запрос непосредственно после первого запроса.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    1