жизненный цикл запроса в modx (ajax запрос minishop2)

Господа, подскажите, ведь наверняка для многих это элементарный вопрос.
Не могу отследить как происходит жизненный цикл приложения, в данном случае когда происходит какое-либо изменение в корзине minishop2.

То что вижу я — 1. За изменениями на страницах следит assets/components/minishop2/js/web/default.js
В момент изменения инупта (ну или в других ситуациях) событие change вызывает отправку формы. У формы есть поле ms_action значение которого представляет собой строку из пары параметров к примеру «cart/change»
2. default.js отправляет аякс запросом данные на assets/components/minishop2/action.php Который по сути лишь проверяет что данные есть и подключает основной index.php
3. В index.php происходит вызов метода handlerRequest у объекта modx. И вот дальнейшее для меня пока тайна.
Страница на официальной документации поражает глубиной раскрытия материала и содержит всего две строки.
docs.modx.com/revolution/2.x/developing-in-modx/other-development-resources/class-reference/modx/modx.handlerequest

На мой взгляд строка cart/change в стандартном понимании MVC должна представлять из себя название контроллера и вызываемый в нем экшен. Однако я нигде не вижу отдельного класса Cart, чей объект мог бы быть создан и вызван его метод. В директории core/components/minishop2/model/minishop2/ есть к примеру класс core/components/minishop2/model/minishop2/msdeliveryhandler.class.php но нет класса корзины.
Для эксперимента, я удаляю assets/components/minishop2/js/web/default.js и начинаю сам слать аякс запросы на assets/components/minishop2/action.php и если использую уже существующие пары cart/clean или order/getcost то получаю вполне вменяемые ответы.
var data={};
        data['name']=name;
        data['ms2_action']='order/getcost';
        $.ajax({
            url: 'assets/components/minishop2/action.php',
            type: 'POST',
         data: data,
        })
но никакого своего «экшена» добавить не могу, даже если в точности копирую уже имеющийся в классе метод и только изменяюю название, то получаю ответ
success	false
message	Неизвестная ошибка
data	[]
Если кто-то найдет время доходчиво описать, как же это все работает, то спасибо.
Александр Мельник
07 марта 2019, 18:21
modx.pro
851
0

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

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