
Events and plugins
MiniShop3 uses the MODX event system to extend functionality. Plugins let you hook into cart, order, product and customer processing without changing the source code.
Getting started
- Working with plugins — how to get parameters, abort an operation, modify data, pass data between plugins
Events by category
Cart
| Event | Description |
|---|---|
| msOnBeforeGetCart | Before getting cart |
| msOnGetCart | After getting cart |
| msOnBeforeAddToCart | Before adding product |
| msOnAddToCart | After adding product |
| msOnBeforeChangeInCart | Before changing quantity |
| msOnChangeInCart | After changing quantity |
| msOnBeforeChangeOptionsInCart | Before changing options |
| msOnChangeOptionInCart | After changing options |
| msOnBeforeRemoveFromCart | Before removing product |
| msOnRemoveFromCart | After removing product |
| msOnBeforeEmptyCart | Before clearing cart |
| msOnEmptyCart | After clearing cart |
| msOnGetStatusCart | Getting cart status |
Order
| Event | Description |
|---|---|
| msOnBeforeAddToOrder | Before adding field to order |
| msOnAddToOrder | After adding field |
| msOnBeforeValidateOrderValue | Before field validation |
| msOnValidateOrderValue | After field validation |
| msOnErrorValidateOrderValue | Validation error |
| msOnBeforeRemoveFromOrder | Before removing field |
| msOnRemoveFromOrder | After removing field |
| msOnSubmitOrder | Order submission |
| msOnBeforeCreateOrder | Before creating order |
| msOnCreateOrder | After creating order |
Cost
| Event | Description |
|---|---|
| msOnBeforeGetCartCost | Before cart cost calculation |
| msOnGetCartCost | After cart cost calculation |
| msOnBeforeGetDeliveryCost | Before delivery cost calculation |
| msOnGetDeliveryCost | After delivery cost calculation |
| msOnBeforeGetPaymentCost | Before payment fee calculation |
| msOnGetPaymentCost | After payment fee calculation |
Order status
| Event | Description |
|---|---|
| msOnBeforeChangeOrderStatus | Before status change |
| msOnChangeOrderStatus | After status change |
Customer
| Event | Description |
|---|---|
| msOnBeforeGetOrderCustomer | Before getting customer |
| msOnGetOrderCustomer | After getting customer |
| msOnBeforeAddToCustomer | Before adding field |
| msOnAddToCustomer | After adding field |
| msOnBeforeValidateCustomerValue | Before field validation |
| msOnValidateCustomerValue | After field validation |
| msOnErrorValidateCustomerValue | Validation error |
| msOnBeforeCreateCustomer | Before creating customer |
| msOnCreateCustomer | After creating customer |
| msOnBeforeAddCustomerAddress | Before adding address |
| msOnAddCustomerAddress | After adding address |
Products (catalog)
| Event | Description |
|---|---|
| msOnGetProductPrice | Product price modification |
| msOnGetProductWeight | Product weight modification |
| msOnGetProductFields | Product fields modification |
Order products
| Event | Description |
|---|---|
| msOnBeforeCreateOrderProduct | Before adding product to order |
| msOnCreateOrderProduct | After adding product |
| msOnBeforeUpdateOrderProduct | Before updating product |
| msOnUpdateOrderProduct | After updating product |
| msOnBeforeRemoveOrderProduct | Before removing product |
| msOnRemoveOrderProduct | After removing product |
Order model (xPDO)
| Event | Description |
|---|---|
| msOnBeforeSaveOrder | Before save (xPDO) |
| msOnSaveOrder | After save (xPDO) |
| msOnBeforeRemoveOrder | Before remove (xPDO) |
| msOnRemoveOrder | After remove (xPDO) |
| msOnBeforeUpdateOrder | Before update (manager) |
| msOnUpdateOrder | After update (manager) |
Notifications
| Event | Description |
|---|---|
| msOnBeforeSendNotification | Before sending notification |
| msOnAfterSendNotification | After sending notification |
| msOnRegisterNotificationChannels | Channel registration |
Vendors
| Event | Description |
|---|---|
| msOnBeforeVendorCreate | Before creating vendor |
| msOnVendorCreate | After creating |
| msOnBeforeVendorUpdate | Before updating |
| msOnVendorUpdate | After updating |
| msOnBeforeVendorDelete | Before deleting |
| msOnVendorDelete | After deleting |
Import
| Event | Description |
|---|---|
| msOnBeforeImport | Before import start |
| msOnAfterImport | After import complete |
| msOnImportRow | When processing a row |
Manager
| Event | Description |
|---|---|
| msOnManagerCustomCssJs | Loading scripts and styles |
Changes from miniShop2
| miniShop2 | MiniShop3 | Changes |
|---|---|---|
product | msProduct | Parameter renamed |
msOnGetOrderCost | Split into 3 events | msOnGetCartCost, msOnGetDeliveryCost, msOnGetPaymentCost |
| — | controller | New parameter in all controller events |
| — | msOnBeforeValidateCustomerValue | New event |
| — | msOnCreateCustomer | New event |
| — | msOnAddCustomerAddress | New event |
| — | msOnBeforeSendNotification | New event |
| — | msOnImportRow | New event |
