
События и плагины
MiniShop3 использует систему событий MODX для расширения функциональности. Плагины позволяют вмешиваться в процессы обработки корзины, заказов, товаров и покупателей без изменения исходного кода.
Начало работы
- Работа с плагинами — как получить параметры, прервать операцию, модифицировать данные, передать данные между плагинами
События по категориям
Корзина
| Событие | Описание |
|---|---|
| msOnBeforeGetCart | Перед получением корзины |
| msOnGetCart | После получения корзины |
| msOnBeforeAddToCart | Перед добавлением товара |
| msOnAddToCart | После добавления товара |
| msOnBeforeChangeInCart | Перед изменением количества |
| msOnChangeInCart | После изменения количества |
| msOnBeforeChangeOptionsInCart | Перед изменением опций |
| msOnChangeOptionInCart | После изменения опций |
| msOnBeforeRemoveFromCart | Перед удалением товара |
| msOnRemoveFromCart | После удаления товара |
| msOnBeforeEmptyCart | Перед очисткой корзины |
| msOnEmptyCart | После очистки корзины |
| msOnGetStatusCart | Получение статуса корзины |
Заказ
| Событие | Описание |
|---|---|
| msOnBeforeAddToOrder | Перед добавлением поля в заказ |
| msOnAddToOrder | После добавления поля |
| msOnBeforeValidateOrderValue | Перед валидацией поля |
| msOnValidateOrderValue | После валидации поля |
| msOnErrorValidateOrderValue | Ошибка валидации |
| msOnBeforeRemoveFromOrder | Перед удалением поля |
| msOnRemoveFromOrder | После удаления поля |
| msOnSubmitOrder | Отправка заказа |
| msOnBeforeCreateOrder | Перед созданием заказа |
| msOnCreateOrder | После создания заказа |
Стоимость
| Событие | Описание |
|---|---|
| msOnBeforeGetCartCost | Перед расчётом стоимости корзины |
| msOnGetCartCost | После расчёта стоимости корзины |
| msOnBeforeGetDeliveryCost | Перед расчётом стоимости доставки |
| msOnGetDeliveryCost | После расчёта стоимости доставки |
| msOnBeforeGetPaymentCost | Перед расчётом комиссии оплаты |
| msOnGetPaymentCost | После расчёта комиссии оплаты |
Статус заказа
| Событие | Описание |
|---|---|
| msOnBeforeChangeOrderStatus | Перед сменой статуса |
| msOnChangeOrderStatus | После смены статуса |
Покупатель
| Событие | Описание |
|---|---|
| msOnBeforeGetOrderCustomer | Перед получением покупателя |
| msOnGetOrderCustomer | После получения покупателя |
| msOnBeforeAddToCustomer | Перед добавлением поля |
| msOnAddToCustomer | После добавления поля |
| msOnBeforeValidateCustomerValue | Перед валидацией поля |
| msOnValidateCustomerValue | После валидации поля |
| msOnErrorValidateCustomerValue | Ошибка валидации |
| msOnBeforeCreateCustomer | Перед созданием покупателя |
| msOnCreateCustomer | После создания покупателя |
| msOnBeforeAddCustomerAddress | Перед добавлением адреса |
| msOnAddCustomerAddress | После добавления адреса |
Товары (каталог)
| Событие | Описание |
|---|---|
| msOnGetProductPrice | Модификация цены товара |
| msOnGetProductWeight | Модификация веса товара |
| msOnGetProductFields | Модификация полей товара |
Товары в заказе
| Событие | Описание |
|---|---|
| msOnBeforeCreateOrderProduct | Перед добавлением товара в заказ |
| msOnCreateOrderProduct | После добавления товара |
| msOnBeforeUpdateOrderProduct | Перед обновлением товара |
| msOnUpdateOrderProduct | После обновления товара |
| msOnBeforeRemoveOrderProduct | Перед удалением товара |
| msOnRemoveOrderProduct | После удаления товара |
Модель заказа (xPDO)
| Событие | Описание |
|---|---|
| msOnBeforeSaveOrder | Перед сохранением (xPDO) |
| msOnSaveOrder | После сохранения (xPDO) |
| msOnBeforeRemoveOrder | Перед удалением (xPDO) |
| msOnRemoveOrder | После удаления (xPDO) |
| msOnBeforeUpdateOrder | Перед обновлением (админка) |
| msOnUpdateOrder | После обновления (админка) |
Уведомления
| Событие | Описание |
|---|---|
| msOnBeforeSendNotification | Перед отправкой уведомления |
| msOnAfterSendNotification | После отправки уведомления |
| msOnRegisterNotificationChannels | Регистрация каналов |
Производители
| Событие | Описание |
|---|---|
| msOnBeforeVendorCreate | Перед созданием производителя |
| msOnVendorCreate | После создания |
| msOnBeforeVendorUpdate | Перед обновлением |
| msOnVendorUpdate | После обновления |
| msOnBeforeVendorDelete | Перед удалением |
| msOnVendorDelete | После удаления |
Импорт
| Событие | Описание |
|---|---|
| msOnBeforeImport | Перед началом импорта |
| msOnAfterImport | После завершения импорта |
| msOnImportRow | При обработке строки |
Админка
| Событие | Описание |
|---|---|
| msOnManagerCustomCssJs | Загрузка скриптов и стилей |
Изменения относительно miniShop2
| miniShop2 | MiniShop3 | Изменения |
|---|---|---|
product | msProduct | Переименован параметр |
msOnGetOrderCost | Разделено на 3 события | msOnGetCartCost, msOnGetDeliveryCost, msOnGetPaymentCost |
| — | controller | Новый параметр во всех событиях контроллеров |
| — | msOnBeforeValidateCustomerValue | Новое событие |
| — | msOnCreateCustomer | Новое событие |
| — | msOnAddCustomerAddress | Новое событие |
| — | msOnBeforeSendNotification | Новое событие |
| — | msOnImportRow | Новое событие |
