msShiptor

Расчет стоимости доставки агрегатором «Shiptor»
Автор дополнения
Володя Володин
Пакетов
40
Закачек
9 867
Автор дополнения
Пакетов
40
Закачек
9 867
Версия 1.0.9-beta
Дата выпуска 14.09.2017
Загрузки 13
Просмотры 912
Внимание, этот компонент требует версию PHP 5.4 или выше! Если ваш сайт использует PHP ниже требуемого, установка этого дополнения может его сломать.
Внимание, этот компонент требует версию MODX не ниже 2.4 !

msShiptor — расчет стоимости доставки, с учетом веса, габаритов и стоимости продуктов для перевозок
агрегатором служб доставки «Shiptor»




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


  • работа только с новым miniShop2 (version =>2.4.0-beta2)
  • сниппет локации города доставки
  • сниппет расчета стоимости корзины
  • сниппет расчета стоимости продукта

Демо: msshiptor.vgrish.ru



Типы доставки:


  • от адреса до терминала
  • от терминала до терминала
  • от терминала до адреса
  • от терминала до почтового отделения
  • от адреса до адреса
Установка:


После установки компонента доступны 3 метода доставки.



  • Самовывоз
  • Почта
  • Курьер


Включите необходимые вам методы.



msShiptor.Settlement — точки доставки

Сниппет msShiptor.Settlement — для выбора населенного пункта доставки. По умолчанию активен населенный пунк — Москва.
Можно вывести модалку/ поповер с выбором населенного пункта. Список стран доставки регулируется настройкой
delivery_country, по умолчанию RU,KZ,BY,AM



модальное окно с выбором населенного пункта


[[!msShiptor.Settlement?
	&tpl=`msShiptor.Settlement.modal`
	]]

Результат:


[[!msShiptor.Settlement?
&tpl=`msShiptor.Settlement.modal`
]]

поповер с выбором населенного пункта


[[!msShiptor.Settlement?
	&tpl=`msShiptor.Settlement.popover`
	]]

Результат:



[[!msShiptor.Settlement?
&tpl=`msShiptor.Settlement.popover`
]]

msShiptor.Order — расчет стоимости корзины

Сниппет msShiptor.Order — для расчет стоимости корзины.
Практически сниппет обертка, выполняет необходимые действия, данные выставляет в плейсходеры, затем запускает
поочередно сниппеты из списка elements. Последним необходимо указать родной сниппет msOrder.



  • tpl — Чанк оформления
  • elements — Список сниппетов через запятую, которые нужно запустить
  • yandexMapsJsCss — Подключить файлы yandex maps
  • bootstrapDialogJsCss — Подключить файлы bootstrap-dialo
  • bootstrapPopoverJsCss — Подключить файлы bootstrap-popover
  • bootstrapTabJsCss — Подключить файлы bootstrap-tabs
  • selectizeJsCss — Подключить файлы selectize
  • processBlocks — JSON строка содержащая блоки необходимые для обработки

пример вызова



[[!msShiptor.Order?
	&processBlocks=`{
	"error":"msShiptor.block.error",
	"method-select":"msShiptor.block.method.select",
	"method-info":"msShiptor.block.method.info",
	"courier-modal":"msShiptor.block.courier.modal"
	}`
	]]


сниппет msShiptor.Product.cost — расчет стоимости продукта
  • tpl — Чанк оформления
  • product — Идентификатор продукта
  • delivery — Идентификатор доставки

пример вызова



	<div class="msshiptor-product-cost-pickup"></div>
	[[!AjaxSnippet?
	&snippet=`msShiptor.Product.cost`
	&delivery=`14`
	&as_target=`.msshiptor-product-cost-pickup`
	]]]

Результат:





События
  • msShiptorOnGetProductOption — получение опций продукта


Информация о доставке

Вся информация о доставке пишется в поле properties заказа. Так же доступна в админке на странице заказов.





События
  • msShiptorOnGetProductOption — получение опций продукта
  • msShiptorOnBeforeRequest — перед отправкой запроса к api
  • msShiptorOnAfterRequest — после отправки запроса к api


Важно

— компонент предназначен для работы с новым miniShop2 версии >= 2.4.0-beta2
— работа компонента не тестировалась с другими компонентами доставки, возможны конфликты в работе.



Кастомизация

У методов доставки доступны следующие свойства



  • hidden — список полей которые необходимо скрыть при активной доставке. Например — index,region,city,street,building,room,delivery_address,msshiptor_methods_select
  • courier — список перевозчиков привязанных к доставке. Например — shiptor,b2c,boxberry,dpd,iml,pickpoint,cdek,shiptor-one-day,spsr,shiptor-oversize
  • category — список категорий перевозки привязанных к доставке. Например — delivery-point,delivery-point-to-delivery-point

Свойства можно отредактировать на одноименной вкладке





Чанки
  • msShiptor.Settlement.modal — чанк выбора населенного пункта в модальном окне
  • msShiptor.Settlement.popover — чанк выбора населенного пункта в поповере
  • msShiptor.order — чанк заказа магазина. Взят дефолтный чанки и добавлены блоки с дополнительной информацией.

    — msshiptor_error — вывод ошибки
    — msshiptor_methods_select — выбор метода доставки
    — msshiptor_methods_info — информация о выбранном методе доставки
  • msShiptor.block.error — чанк блока ошибки
  • msShiptor.block.method.select — чанк выбора метода доставки
  • msShiptor.block.method.info — чанк информации о выбранном методе доставки
  • msShiptor.block.point.info — чанк информации о выбранной точке доставки
  • msShiptor.block.courier.modal — чанк модального окна выбора курьера доставки
  • msShiptor.product.cost — чанк расчета стоиомсти доставки продукта
  • msShiptor.block.order.info — чанк информации о доставке заказа магазина

1.0.9-beta (14.09.2017)

  • Change "initialize,runProcessor" [msShiptor]

1.0.8-beta (25.05.2017)

  • Fix "SettlementPopover" [js]

1.0.7-beta (25.05.2017)

  • Fix "selector" [js]
  • Improved "initialize" [msShiptorTools]
  • Improved "msShiptorDeliveryHandler"

1.0.6-beta (24.05.2017)

  • Fix "formatPrice"

1.0.5-beta (24.05.2017)

  • Improved compatibility with PHP 7.1

1.0.4-beta (19.05.2017)

  • Add "calc cost"

1.0.3-beta (19.05.2017)

  • Change "icon"
  • Change "msShiptor.block.order.info"

1.0.2-beta (18.05.2017)

  • Improved "msShiptorTools"
  • Improved "chunks"

1.0.1-beta (10.05.2017)

  • Add "msShiptorOnBeforeRequest", "msShiptorOnAfterRequest" event

1.0.0-beta

  • Initial

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