ms2DeliveryCost

Предварительный расчет цены доставки для каждого пункта доставки
Версия 1.0.1-pl
Дата выпуска 15.04.2018
Загрузки 118
Просмотры 5 263
Внимание, этот компонент требует версию PHP 5.6 или выше! Если ваш сайт использует PHP ниже требуемого, установка этого дополнения может его сломать.
Полное описание на MODX.PRO



Описание


Компонент осуществляет предварительный расчет стоимости доставки каждого пункта до его выбора. Работает со всеми службами доставки для minishop2, а также умеет обновлять список доставок при изменении обязательных полей

Особенности:


Особенности компонента заключаются в том, что изначально он отдает самый обычный список пунктов доставки, затем проверяет заполнены ли необходимые поля и только в случае их заполнения подгружает уже список пунктов доставок с рассчитанной ценой. При изменении этих полей компонент также перезагружает список пунктов доставки, по этому вы всегда будите иметь актуальную цену на каждом пункте.
Также компонент умеет рассчитывать как цену только доставки, так и цену всего заказа учитывая стоимость заказа

Установка:

1) Устанавливаем компонент
2) Переходим в чанк оформления заказа, по умолчанию tpl.msOrder
3) Заменяем кусок вывода пунктов доставки сниппетом ms2DeliveryCost:


//с полями по умолчанию
{'!ms2DeliveryCost' | snippet: [
    'cost' => 0,
    'tpl' => 'tpl.ms2DeliveryCost',
    'required' => 'city,index',
]}
либо
{'!ms2DeliveryCost' | snippet}
4) Готово!

Параметры сниппета:
1) tpl — чанк вывода по умолчанию tpl.ms2DeliveryCost
2) cost — сумма заказа, если расчет нужно делать с учетом всего заказа подставляем сюда плейсхолдер totatlCost, по умолчанию 0
3) jsPath — путь до кастомного js, если вас не устраивает родной
4) required — name полей которые нужно проверять перед тем как загрузить методы доставки с рассчитанной ценой. По умолчанию city,index

Параметры чанка
В чанк приходит два массива order и costs, order содержит текущие поля заказа, а costs содержит все остальное:
cost — стоимость доставки перебираемого метода (приходит false если не заполнены необходимые поля)
delivery — текущий перебираемый метод доставки
payments — массив доступных способов оплаты для перебираемого метода доставки

Последние обсуждения в сообществе MODX.pro