заказа в minishop2 - заказ для определенного web-пользователя с определенным товаром. Для этого есть ресурс, который доступен на фронте при условии авторизации в админке. На него могут заходить либо админ, либо менеджер с урезанными правами в админке. Далее, на самом ресурсе выводится formIt + AjaxForm с выбором нужного юзера. При отправке формы срабатывает хук, который через api минишопа добавляет товар в корзину и создает заказ.
С оформлением заказа из-под админа всё в порядке, но если пытаюсь оформить заказ из-под менеджера, то заказ не создается, в логах пишется:
[success] =>
[message] => Can't submit an empty order
[data] => Array
(
)
Продебажил код, выяснилось, что затык в методе add класса msCartHandler - не срабатывает строка 181 (метод getObject) http://skrinshoter.ru/s/210422/4dPe4tMZ
не срабатывает именно для юзера с правами менеджера. Соответственно, товар не добавляется в корзину, заказ не может быть создан.
Понимаю, что дело в правах доступа, но не могу разобрать, в какую сторону смотреть. Вроде, необходимые права у него есть - http://skrinshoter.ru/s/210422/sbD7Ibg9
Может, кто-то сталкивался?
Попробуй в хуке в объект modx добавить админа $modx->user = $modx->getObject('modUser',1);
Спасибо, заработало! А в чем прикол, что с админом работает? По идее, для анонима должно же работать...
Не знаю, я твой код не видел, не факт, что затык именно в добавлении в корзину.
Обсуждают сегодня