Добрый день, необходимо в демодизи в корзину добавить 2 дополнительных поля, к примеру чтобы было после выбора доставки, перед выбором оплаты шаг Дополнительная информация с полями 1 - информация, 2 галочка запаковать в пакет, как осуществить данное деяние? И чтобы в заказ передавались эти данные.
Обычно добавляю поля в тип данных "Заказ" в группу полей "Свойства доставки заказа".
Если используете кастомный метод для оформления заказа - в нем получаете значения полей и устанавливаете их для заказа
$info = getRequest('info');
$package = getRequest('package');
$order->setValue('info', $info);
$order->setValue('package', $package);
Если используете стандартный макрос, нужно смотреть в сторону события order-status-changed http://api.docs.umi-cms.ru/razrabotka_nestandartnogo_funkcionala/sobytijnaya_model_umicms/standartnye_tochki_vyzova/#sel=5:51,5:51
В этом событии проверяете статус заказа (для новых заказов он должен быть равен waiting). Что-то вроде
if($event->getMode() == "after" &&
$event->getParam("old-status-id") != $event->getParam("new-status-id") && $event->getParam("new-status-id") == order::getStatusByCode('waiting')) {
$order = $eventPoint->getRef('order');
/* Код, который записывает данные в объект заказа*/
}
Для примера можете посмотреть метод onStatusChanged файла classes/modules/emarket/__events.php