Получить адрес заказчика в плагине
Приветствую.
Задача простая: при создании юзером заказа прочитать в плагине поля адреса и в соответствии с ними выставить статус. Делаю так:
Без условия статус переключается. Как правильно добраться до поля «room» из плагина?..
Задача простая: при создании юзером заказа прочитать в плагине поля адреса и в соответствии с ними выставить статус. Делаю так:
if ($modx->event->name=='msOnCreateOrder') {
$miniShop2 = $modx->getService('miniShop2');
if( $msOrder->get('room')=='?') $miniShop2->changeOrderStatus($msOrder->get('id'),7);
echo $modx->toJSON(array(
'success' => true,
'message' => '',
'data' => array(),
));
exit;
}Без условия статус переключается. Как правильно добраться до поля «room» из плагина?..
Комментарии: 7
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Даже после выполнения функции:
Вопрос почему?
сделайте иначе, событие смените на msOnBeforeCreateOrder, пишите у такого заказа в поле properties например
все, больше тут ничего не делаем.
дальше создаем второй плагин на OnHandleRequest, в нем проверяйте переменную github.com/bezumkin/miniShop2/blob/f0bdf665dd61ea20e4cbf0f0bbcd74d212bf20b6/core/components/minishop2/elements/snippets/snippet.ms_get_order.php#L14
и есть ли переменная change_status в массиве properties, если есть меняем статус и удаляем нашу переменную.
немного сложнее, но думаю будет работаь.