Skip to main content
Version: Next

Events

Thelia dispatches many events during its workflows, such as account creation and the order process. You can listen to any of these events to add or replace logic, and you can dispatch your own events for other modules to listen to. The Symfony documentation covers the Event Dispatcher component in detail.

To listen to an event, create an event subscriber: a class that implements EventSubscriberInterface and declares a getSubscribedEvents method to choose which events to listen to.

<?php

namespace MyModule\EventListener;

use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Symfony\Component\HttpFoundation\RequestStack;
use Thelia\Core\Event\TheliaEvents;

class LogoutListener implements EventSubscriberInterface
{
protected $requestStack;

public function __construct(RequestStack $requestStack)
{
$this->requestStack = $requestStack;
}


public static function getSubscribedEvents(): array
{
// return the subscribed events, their methods and priorities
return [
TheliaEvents::CUSTOMER_LOGOUT => ['onCustomerLogout', 30]
];
}

public function onCustomerLogout()
{
// Do what you want at customer logout
}
}

Native events​

Thelia native events are all listed in TheliaEvents class

Propel events​

Propel dispatches several events during a model's lifecycle:

Constant nameDescription
PRE_SAVEBefore persisting the object
POST_SAVEAfter persisting the object
PRE_INSERTBefore inserting to database
POST_INSERTAfter inserting to database
PRE_UPDATEBefore updating the object in database
POST_UPDATEAfter updating the object in database
PRE_DELETEBefore deleting the object in database
POST_DELETEAfter deleting the object in database

Each constant lives on the class named after the model with an Event suffix. For example, to listen for a product update, use ProductEvent::POST_UPDATE.

<?php

namespace MyModule\EventListener;

use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Symfony\Component\HttpFoundation\RequestStack;
use Thelia\Model\Event\ProductEvent;

class ProductListener implements EventSubscriberInterface
{
public static function getSubscribedEvents(): array
{
// return the subscribed events, their methods and priorities
return [
ProductEvent::POST_UPDATE => ['postProductUpdate', 30]
];
}

public function postProductUpdate(ProductEvent $event)
{
$productModel = $event->getModel();
// Do what you want with the product
}
}

Every event list​

Address​

Detail

sent for address creation.
ADDRESS_CREATE = 'action.createAddress'

ADDRESS_UPDATE = 'action.updateAddress'

ADDRESS_DELETE = 'action.deleteAddress'

sent when an address is tag as default.
ADDRESS_DEFAULT = 'action.defaultAddress'


  • AddressCreateOrUpdateEvent -> $address1 $address2 $address3 $cellphone $city $company $country $firstname $isDefault $label $lastname $phone $state $title $zipcode

Admin​

Detail

Sent before the logout of the administrator.
ADMIN_LOGOUT = 'action.admin_logout'

Sent once the administrator is successfully logged in.
ADMIN_LOGIN = 'action.admin_login'


Administrator​

Detail

ADMINISTRATOR_CREATE = 'action.createAdministrator'

ADMINISTRATOR_UPDATE = 'action.updateAdministrator'

ADMINISTRATOR_DELETE = 'action.deleteAdministrator'

ADMINISTRATOR_UPDATEPASSWORD = 'action.generatePassword'

ADMINISTRATOR_CREATEPASSWORD = 'action.createPassword'


  • AdministratorEvent -> $administrator
  • AdministratorUpdatePasswordEvent -> $admin

Area​

Detail

AREA_CREATE = 'action.createArea'

AREA_UPDATE = 'action.updateArea'

AREA_DELETE = 'action.deleteArea'

AREA_REMOVE_COUNTRY = 'action.area.removeCountry'

AREA_POSTAGE_UPDATE = 'action.area.postageUpdate'

AREA_ADD_COUNTRY = 'action.area.addCountry'


  • AreaAddCountryEvent -> $area $countryIds
  • AreaRemoveCountryEvent -> $area $countryIds $countryIds; $stateId

Attributes​

Detail

ATTRIBUTE_CREATE = 'action.createAttribute'

ATTRIBUTE_UPDATE = 'action.updateAttribute'

ATTRIBUTE_DELETE = 'action.deleteAttribute'

ATTRIBUTE_UPDATE_POSITION = 'action.updateAttributePosition'

ATTRIBUTE_REMOVE_FROM_ALL_TEMPLATES = 'action.addAttributeToAllTemplate'

ATTRIBUTE_ADD_TO_ALL_TEMPLATES = 'action.removeAttributeFromAllTemplate'


  • AttributeAvCreateEvent -> no constructor found in this file
  • AttributeAvDeleteEvent -> $attributeAv_id
  • ⚠️ Warning

AttributeAvEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Attribute/AttributeAvEvent.php

  • AttributeAvUpdateEvent -> $attributeAv_id
  • AttributeCreateEvent -> no constructor found in this file
  • AttributeDeleteEvent -> $attribute_id
  • ⚠️ Warning

AttributeEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Attribute/AttributeEvent.php

  • AttributeUpdateEvent -> $attribute_id

Attributes values​

Detail

ATTRIBUTE_AV_CREATE = 'action.createAttributeAv'

ATTRIBUTE_AV_UPDATE = 'action.updateAttributeAv'

ATTRIBUTE_AV_DELETE = 'action.deleteAttributeAv'

ATTRIBUTE_AV_UPDATE_POSITION = 'action.updateAttributeAvPosition'


  • AttributeAvCreateEvent -> no constructor found in this file
  • AttributeAvDeleteEvent -> $attributeAv_id
  • ⚠️ Warning

AttributeAvEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Attribute/AttributeAvEvent.php

  • AttributeAvUpdateEvent -> $attributeAv_id
  • AttributeCreateEvent -> no constructor found in this file
  • AttributeDeleteEvent -> $attribute_id
  • ⚠️ Warning

AttributeEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Attribute/AttributeEvent.php

  • AttributeUpdateEvent -> $attribute_id

Brands​

Detail

BRAND_CREATE = 'action.createBrand'

BRAND_UPDATE = 'action.updateBrand'

BRAND_DELETE = 'action.deleteBrand'

BRAND_UPDATE_POSITION = 'action.updateBrandPosition'

BRAND_TOGGLE_VISIBILITY = 'action.toggleBrandVisibility'

BRAND_UPDATE_SEO = 'action.updateBrandSeo'

VIEW_BRAND_ID_NOT_VISIBLE = 'action.viewBrandIdNotVisible'


  • BrandCreateEvent -> no constructor found in this file
  • BrandDeleteEvent -> $brand_id
  • ⚠️ Warning

BrandEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Brand/BrandEvent.php

  • BrandToggleVisibilityEvent -> no constructor found in this file
  • BrandUpdateEvent -> $brandId

Cache​

Detail

sent for clearing cache.
CACHE_CLEAR = 'thelia.cache.clear'


  • CacheEvent -> $dir $onKernelTerminate

Cart​

Detail

CART_PERSIST = 'cart.persist'

CART_RESTORE_CURRENT = 'cart.restore.current'

CART_CREATE_NEW = 'cart.create.new'

sent when a new existing cat id duplicated. This append when current customer is different from current cart
The old cart is already deleted from the database when this event is dispatched.
CART_DUPLICATE = 'cart.duplicate'

Sent when the cart is duplicated, but not yet deleted from the database.
CART_DUPLICATED = 'cart.duplicated'

Sent when a cart item is duplicated.
CART_ITEM_DUPLICATE = 'cart.item.duplicate'

sent when a new item is added to current cart.
AFTER_CARTADDITEM = 'cart.after.addItem'

sent for searching an item in the cart.
CART_FINDITEM = 'cart.findItem'

sent when a cart item is modify.
AFTER_CARTUPDATEITEM = 'cart.updateItem'

sent for addArticle action.
CART_ADDITEM = 'action.addArticle'

sent on modify article action.
CART_UPDATEITEM = 'action.updateArticle'

CART_DELETEITEM = 'action.deleteArticle'

CART_CLEAR = 'action.clear'

CART_ITEM_CREATE_BEFORE = 'action.cart.item.create.before'

CART_ITEM_UPDATE_BEFORE = 'action.cart.item.update.before'


  • CartCreateEvent -> no constructor found in this file
  • CartDuplicationEvent -> $duplicatedCart $originalCart
  • CartEvent -> $cart
  • CartItemDuplicationItem -> $newItem $oldItem
  • CartItemEvent -> $cartItem
  • CartPersistEvent -> $cart
  • CartRestoreEvent -> no constructor found in this file

Categories​

Detail

CATEGORY_CREATE = 'action.createCategory'

CATEGORY_UPDATE = 'action.updateCategory'

CATEGORY_DELETE = 'action.deleteCategory'

CATEGORY_TOGGLE_VISIBILITY = 'action.toggleCategoryVisibility'

CATEGORY_UPDATE_POSITION = 'action.updateCategoryPosition'

CATEGORY_ADD_CONTENT = 'action.categoryAddContent'

CATEGORY_REMOVE_CONTENT = 'action.categoryRemoveContent'

CATEGORY_UPDATE_SEO = 'action.updateCategorySeo'

VIEW_CATEGORY_ID_NOT_VISIBLE = 'action.viewCategoryIdNotVisible'


  • CategoryAddContentEvent -> $category $content_id
  • ⚠️ Warning

CategoryAssociatedContentEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Category/CategoryAssociatedContentEvent.php

  • CategoryCreateEvent -> no constructor found in this file
  • CategoryDeleteContentEvent -> $category $content_id
  • CategoryDeleteEvent -> $categoryId
  • ⚠️ Warning

CategoryEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Category/CategoryEvent.php

  • CategoryToggleVisibilityEvent -> no constructor found in this file
  • CategoryUpdateEvent -> $category_id

Clone​

Detail

PRODUCT_CLONE = 'action.cloneProduct'

FILE_CLONE = 'action.cloneFile'

PSE_CLONE = 'action.clonePSE'


Configuration​

Detail

CONFIG_CREATE = 'action.createConfig'

CONFIG_SETVALUE = 'action.setConfigValue'

CONFIG_UPDATE = 'action.updateConfig'

CONFIG_DELETE = 'action.deleteConfig'


  • ConfigCreateEvent -> no constructor found in this file
  • ConfigDeleteEvent -> $config_id
  • ⚠️ Warning

ConfigEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Config/ConfigEvent.php

  • ConfigUpdateEvent -> $config_id

Contact​

Detail

sent for submit contact form.
since 2.4
CONTACT_SUBMIT = 'thelia.contact.submit'


  • ContactEvent -> $form

Content​

Detail

CONTENT_CREATE = 'action.createContent'

CONTENT_UPDATE = 'action.updateContent'

CONTENT_DELETE = 'action.deleteContent'

CONTENT_TOGGLE_VISIBILITY = 'action.toggleContentVisibility'

CONTENT_UPDATE_POSITION = 'action.updateContentPosition'

CONTENT_UPDATE_SEO = 'action.updateContentSeo'

CONTENT_ADD_FOLDER = 'action.contentAddFolder'

CONTENT_REMOVE_FOLDER = 'action.contentRemoveFolder'

VIEW_CONTENT_ID_NOT_VISIBLE = 'action.viewContentIdNotVisible'


  • ContentAddFolderEvent -> $content $folderId
  • ContentCreateEvent -> no constructor found in this file
  • ContentDeleteEvent -> $content_id
  • ⚠️ Warning

ContentEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Content/ContentEvent.php

  • ContentRemoveFolderEvent -> no constructor found in this file
  • ContentToggleVisibilityEvent -> no constructor found in this file
  • ContentUpdateEvent -> $content_id

Core​

Detail

sent at the beginning.
BOOT = 'thelia.boot'

Kernel View Check Handle.
VIEW_CHECK = 'thelia.view_check'


Country​

Detail

COUNTRY_CREATE = 'action.state.create'

COUNTRY_UPDATE = 'action.state.update'

COUNTRY_DELETE = 'action.state.delete'

COUNTRY_TOGGLE_DEFAULT = 'action.toggleCountryDefault'

COUNTRY_TOGGLE_VISIBILITY = 'action.state.toggleVisibility'


  • CountryCreateEvent -> no constructor found in this file
  • CountryDeleteEvent -> $country_id
  • ⚠️ Warning

CountryEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Country/CountryEvent.php

  • CountryToggleDefaultEvent -> $country_id
  • CountryToggleVisibilityEvent -> no constructor found in this file
  • CountryUpdateEvent -> $country_id

Coupon​

Detail

Sent when creating a Coupon.
COUPON_CREATE = 'action.create_coupon'

Sent when editing a Coupon.
COUPON_UPDATE = 'action.update_coupon'

Sent when deleting a Coupon.
COUPON_DELETE = 'action.delete_coupon'

Sent when attempting to use a Coupon.
COUPON_CONSUME = 'action.consume_coupon'

Sent when all coupons in the current session should be cleared.
COUPON_CLEAR_ALL = 'action.clear_all_coupon'

Sent when attempting to update Coupon Condition.
COUPON_CONDITION_UPDATE = 'action.update_coupon_condition'


  • CouponConsumeEvent -> $code $discount $freeShipping $isValid
  • CouponCreateOrUpdateEvent -> $code $description $effects $expirationDate $freeShippingForCountries $freeShippingForMethods $isAvailableOnSpecialOffers $isCumulative $isEnabled $isRemovingPostage $locale $maxUsage $perCustomerUsageCount $serviceId $shortDescription $startDate $title
  • CouponDeleteEvent -> $coupon

Currencies​

Detail

CURRENCY_CREATE = 'action.createCurrency'

CURRENCY_UPDATE = 'action.updateCurrency'

CURRENCY_DELETE = 'action.deleteCurrency'

CURRENCY_SET_DEFAULT = 'action.setDefaultCurrency'

CURRENCY_SET_VISIBLE = 'action.setVisibleCurrency'

CURRENCY_UPDATE_RATES = 'action.updateCurrencyRates'

CURRENCY_UPDATE_POSITION = 'action.updateCurrencyPosition'

CHANGE_DEFAULT_CURRENCY = 'action.changeDefaultCurrency'


  • CurrencyChangeEvent -> $currency $request
  • CurrencyCreateEvent -> no constructor found in this file
  • CurrencyDeleteEvent -> $currencyId
  • ⚠️ Warning

CurrencyEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Currency/CurrencyEvent.php

  • CurrencyUpdateEvent -> $currencyId
  • CurrencyUpdateRateEvent -> no constructor found in this file

Customer​

Detail

Sent before the logout of the customer.
CUSTOMER_LOGOUT = 'action.customer_logout'

Sent once the customer is successfully logged in.
CUSTOMER_LOGIN = 'action.customer_login'

sent on customer account creation.
CUSTOMER_CREATEACCOUNT = 'action.createCustomer'

sent on customer account update.
CUSTOMER_UPDATEACCOUNT = 'action.updateCustomer'

sent on customer account update profile.
CUSTOMER_UPDATEPROFILE = 'action.updateProfileCustomer'

sent on customer removal.
CUSTOMER_DELETEACCOUNT = 'action.deleteCustomer'

sent when a customer need a new password.
LOST_PASSWORD = 'action.lostPassword'

Send the account ccreation confirmation email.
SEND_ACCOUNT_CONFIRMATION_EMAIL = 'action.customer.sendAccountConfirmationEmail'


  • CustomerCreateOrUpdateEvent -> $address1 $address2 $address3 $cellphone $city $company $country $discount $email $firstname $langId $lastname $password $phone $ref $reseller $sponsor $state $title $zipcode
  • ⚠️ Warning

CustomerEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Customer/CustomerEvent.php

  • CustomerLoginEvent -> no constructor found in this file

Customer title​

Detail

CUSTOMER_TITLE_CREATE = 'action.title.create'

CUSTOMER_TITLE_UPDATE = 'action.title.update'

CUSTOMER_TITLE_DELETE = 'action.title.delete'


  • CustomerCreateOrUpdateEvent -> $address1 $address2 $address3 $cellphone $city $company $country $discount $email $firstname $langId $lastname $password $phone $ref $reseller $sponsor $state $title $zipcode
  • ⚠️ Warning

CustomerEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Customer/CustomerEvent.php

  • CustomerLoginEvent -> no constructor found in this file

  • CustomerTitleEvent -> no constructor found in this file

Delivery​

Detail

MODULE_DELIVERY_GET_POSTAGE = 'thelia.module.delivery.postage'

MODULE_DELIVERY_GET_PICKUP_LOCATIONS = 'thelia.module.delivery.pickupLocations'


  • DeliveryPostageEvent -> $address $cart $country $module $state
  • PickupLocationEvent -> $address $addressModel $city $country $maxRelays $moduleIds $orderWeight $radius $state $zipCode

Document​

Detail

Sent on document processing.
DOCUMENT_PROCESS = 'action.processDocument'

Sent on image cache clear request.
DOCUMENT_CLEAR_CACHE = 'action.clearDocumentCache'

Save given documents.
DOCUMENT_SAVE = 'action.saveDocument'

Save given documents.
DOCUMENT_UPDATE = 'action.updateDocument'

DOCUMENT_UPDATE_POSITION = 'action.updateDocumentPosition'

DOCUMENT_TOGGLE_VISIBILITY = 'action.toggleDocumentVisibility'

Delete given document.
DOCUMENT_DELETE = 'action.deleteDocument'


  • DocumentEvent -> no constructor found in this file

Export​

Detail

EXPORT_CHANGE_POSITION = 'export.change.position'

EXPORT_CATEGORY_CHANGE_POSITION = 'export.category.change.position'

EXPORT_BEGIN = 'export.begin'

EXPORT_FINISHED = 'export.finished'

EXPORT_SUCCESS = 'export.success'


Features​

Detail

FEATURE_CREATE = 'action.createFeature'

FEATURE_UPDATE = 'action.updateFeature'

FEATURE_DELETE = 'action.deleteFeature'

FEATURE_UPDATE_POSITION = 'action.updateFeaturePosition'

FEATURE_REMOVE_FROM_ALL_TEMPLATES = 'action.addFeatureToAllTemplate'

FEATURE_ADD_TO_ALL_TEMPLATES = 'action.removeFeatureFromAllTemplate'


  • FeatureAvCreateEvent -> no constructor found in this file
  • FeatureAvDeleteEvent -> $featureAv_id
  • ⚠️ Warning

FeatureAvEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Feature/FeatureAvEvent.php

  • FeatureAvUpdateEvent -> $featureAv_id
  • FeatureCreateEvent -> no constructor found in this file
  • FeatureDeleteEvent -> $feature_id
  • ⚠️ Warning

FeatureEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Feature/FeatureEvent.php

  • FeatureUpdateEvent -> $feature_id

Features values​

Detail

FEATURE_AV_CREATE = 'action.createFeatureAv'

FEATURE_AV_UPDATE = 'action.updateFeatureAv'

FEATURE_AV_DELETE = 'action.deleteFeatureAv'

FEATURE_AV_UPDATE_POSITION = 'action.updateFeatureAvPosition'

sent when Thelia try to generate a rewritten url.
GENERATE_REWRITTENURL = 'action.generate_rewritenurl'

GENERATE_PDF = 'thelia.generatePdf'


  • FeatureAvCreateEvent -> no constructor found in this file
  • FeatureAvDeleteEvent -> $featureAv_id
  • ⚠️ Warning

FeatureAvEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Feature/FeatureAvEvent.php

  • FeatureAvUpdateEvent -> $featureAv_id
  • FeatureCreateEvent -> no constructor found in this file
  • FeatureDeleteEvent -> $feature_id
  • ⚠️ Warning

FeatureEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Feature/FeatureEvent.php

  • FeatureUpdateEvent -> $feature_id

Folder​

Detail

FOLDER_CREATE = 'action.createFolder'

FOLDER_UPDATE = 'action.updateFolder'

FOLDER_DELETE = 'action.deleteFolder'

FOLDER_TOGGLE_VISIBILITY = 'action.toggleFolderVisibility'

FOLDER_UPDATE_POSITION = 'action.updateFolderPosition'

FOLDER_UPDATE_SEO = 'action.updateFolderSeo'

VIEW_FOLDER_ID_NOT_VISIBLE = 'action.viewFolderIdNotVisible'


  • FolderCreateEvent -> no constructor found in this file
  • FolderDeleteEvent -> $folder_id
  • ⚠️ Warning

FolderEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Folder/FolderEvent.php

  • FolderToggleVisibilityEvent -> no constructor found in this file
  • FolderUpdateEvent -> $folder_id

Form​

Detail

FORM_BEFORE_BUILD = 'thelia.form.before_build'

FORM_AFTER_BUILD = 'thelia.form.after_build'


Hook​

Detail

Hook.
HOOK_CREATE = 'thelia.hook.action.create'

HOOK_UPDATE = 'thelia.hook.action.update'

HOOK_DELETE = 'thelia.hook.action.delete'

HOOK_TOGGLE_NATIVE = 'thelia.hook.action.toggleNative'

HOOK_TOGGLE_ACTIVATION = 'thelia.hook.action.toggleActivation'

HOOK_CREATE_ALL = 'thelia.hook.action.createAll'

HOOK_DEACTIVATION = 'thelia.hook.action.deactivation'

MODULE_HOOK_CREATE = 'thelia.moduleHook.action.create'

MODULE_HOOK_UPDATE = 'thelia.moduleHook.action.update'

MODULE_HOOK_DELETE = 'thelia.moduleHook.action.delete'

MODULE_HOOK_UPDATE_POSITION = 'thelia.moduleHook.action.updatePosition'

MODULE_HOOK_TOGGLE_ACTIVATION = 'thelia.moduleHook.action.toggleActivation'


  • BaseHookRenderEvent -> $arguments $code $templateVars
  • HookCreateAllEvent -> no constructor found in this file
  • HookCreateEvent -> no constructor found in this file
  • HookDeactivationEvent -> $hook_id
  • HookDeleteEvent -> $hook_id
  • HookEvent -> $hook
  • HookRenderBlockEvent -> $arguments $code $fields $templateVariables $templateVariables;
  • HookRenderEvent -> $arguments $code $templateVariables $templateVariables;
  • HookToggleActivationEvent -> $hook_id
  • HookToggleNativeEvent -> $hook_id
  • HookUpdateEvent -> $hook_id
  • ModuleHookCreateEvent -> no constructor found in this file
  • ModuleHookDeleteEvent -> $module_hook_id
  • ModuleHookEvent -> $moduleModuleHook
  • ModuleHookToggleActivationEvent -> no constructor found in this file
  • ModuleHookUpdateEvent -> no constructor found in this file

Image​

Detail

Sent on image processing.
IMAGE_PROCESS = 'action.processImage'

Sent just after creating the image object from the image file.
IMAGE_PREPROCESSING = 'action.preProcessImage'

Sent just before saving the processed image object on disk.
IMAGE_POSTPROCESSING = 'action.postProcessImage'

Sent on image cache clear request.
IMAGE_CLEAR_CACHE = 'action.clearImageCache'

Save given images.
IMAGE_SAVE = 'action.saveImages'

Save given images.
IMAGE_UPDATE = 'action.updateImages'

IMAGE_UPDATE_POSITION = 'action.updateImagePosition'

IMAGE_TOGGLE_VISIBILITY = 'action.toggleImageVisibility'

Delete given image.
IMAGE_DELETE = 'action.deleteImage'


  • ImageEvent -> no constructor found in this file

Import​

Detail

IMPORT_CHANGE_POSITION = 'import.change.position'

IMPORT_CATEGORY_CHANGE_POSITION = 'import.category.change.position'

IMPORT_BEGIN = 'import.begin'

IMPORT_FINISHED = 'import.finished'

IMPORT_SUCCESS = 'import.success'


Lang​

Detail

LANG_UPDATE = 'action.lang.update'

LANG_CREATE = 'action.lang.create'

LANG_DELETE = 'action.lang.delete'

LANG_DEFAULTBEHAVIOR = 'action.lang.defaultBehavior'

LANG_URL = 'action.lang.url'

LANG_TOGGLEDEFAULT = 'action.lang.toggleDefault'

LANG_TOGGLEACTIVE = 'action.lang.toggleActive'

LANG_TOGGLEVISIBLE = 'action.lang.toggleVisible'


  • LangCreateEvent -> no constructor found in this file
  • LangDefaultBehaviorEvent -> $defaultBehavior
  • LangDeleteEvent -> $lang_id
  • ⚠️ Warning

LangEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Lang/LangEvent.php

  • LangToggleActiveEvent -> no constructor found in this file
  • LangToggleDefaultEvent -> $lang_id
  • LangToggleVisibleEvent -> no constructor found in this file
  • LangUpdateEvent -> $id

Loop​

Detail

LOOP_EXTENDS_ARG_DEFINITIONS = 'loop.extends.arg_definitions'

LOOP_EXTENDS_INITIALIZE_ARGS = 'loop.extends.initialize_args'

LOOP_EXTENDS_BUILD_MODEL_CRITERIA = 'loop.extends.build_model_criteria'

LOOP_EXTENDS_BUILD_ARRAY = 'loop.extends.build_array'

LOOP_EXTENDS_PARSE_RESULTS = 'loop.extends.parse_results'


  • LoopExtendsArgDefinitionsEvent -> no constructor found in this file
  • LoopExtendsBuildArrayEvent -> $array $loop
  • LoopExtendsBuildModelCriteriaEvent -> $loop $modelCriteria
  • LoopExtendsEvent -> $loop
  • LoopExtendsInitializeArgsEvent -> $loop $loopParameters
  • LoopExtendsParseResultsEvent -> $loop $loopResult

Mailing system​

Detail

MAILING_SYSTEM_UPDATE = 'action.updateMailingSystem'


  • MailingSystemEvent -> no constructor found in this file

Messages​

Detail

MESSAGE_CREATE = 'action.createMessage'

MESSAGE_UPDATE = 'action.updateMessage'

MESSAGE_DELETE = 'action.deleteMessage'


  • MessageCreateEvent -> no constructor found in this file
  • MessageDeleteEvent -> $message_id
  • ⚠️ Warning

MessageEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Message/MessageEvent.php

  • MessageUpdateEvent -> $message_id

Meta data​

Detail

META_DATA_CREATE = 'thelia.metadata.create'

META_DATA_UPDATE = 'thelia.metadata.update'

META_DATA_DELETE = 'thelia.metadata.delete'


  • MetaDataCreateOrUpdateEvent -> $elementId $elementId; $elementKey $metaKey $value
  • MetaDataDeleteEvent -> $elementId $elementKey $metaKey
  • MetaDataEvent -> $metaData

Module​

Detail

sent when a module is activated or deactivated.
MODULE_TOGGLE_ACTIVATION = 'thelia.module.toggleActivation'

sent when module position is changed.
MODULE_UPDATE_POSITION = 'thelia.module.action.updatePosition'

module.
MODULE_CREATE = 'thelia.module.create'

MODULE_UPDATE = 'thelia.module.update'

MODULE_DELETE = 'thelia.module.delete'

MODULE_INSTALL = 'thelia.module.install'


  • ModuleDeleteEvent -> $assume_delete $module_id
  • ModuleEvent -> $module
  • ModuleInstallEvent -> $module
  • ModuleToggleActivationEvent -> $assume_deactivate $module_id

Newsletter​

Detail

sent for subscribing to the newsletter.
NEWSLETTER_SUBSCRIBE = 'thelia.newsletter.subscribe'

NEWSLETTER_UPDATE = 'thelia.newsletter.update'

NEWSLETTER_UNSUBSCRIBE = 'thelia.newsletter.unsubscribe'

NEWSLETTER_CONFIRM_SUBSCRIPTION = 'thelia.newsletter.confirmSubscription'


  • NewsletterEvent -> $email $locale

Order​

Detail

Order linked event.
ORDER_SET_DELIVERY_ADDRESS = 'action.order.setDeliveryAddress'

ORDER_SET_DELIVERY_MODULE = 'action.order.setDeliveryModule'

ORDER_SET_POSTAGE = 'action.order.setPostage'

ORDER_SET_INVOICE_ADDRESS = 'action.order.setInvoiceAddress'

ORDER_SET_PAYMENT_MODULE = 'action.order.setPaymentModule'

ORDER_PAY = 'action.order.pay'

ORDER_PAY_GET_TOTAL = 'action.order.pay.getTotal'

ORDER_BEFORE_PAYMENT = 'action.order.beforePayment'

ORDER_CART_CLEAR = 'action.order.cartClear'

ORDER_CREATE_MANUAL = 'action.order.createManual'

ORDER_UPDATE_STATUS = 'action.order.updateStatus'

ORDER_GET_STOCK_UPDATE_OPERATION_ON_ORDER_STATUS_CHANGE = 'action.order.getStockUpdateOperationOnOrderStatusChange'

ORDER_SEND_CONFIRMATION_EMAIL = 'action.order.sendOrderConfirmationEmail'

ORDER_SEND_NOTIFICATION_EMAIL = 'action.order.sendOrderNotificationEmail'

ORDER_UPDATE_DELIVERY_REF = 'action.order.updateDeliveryRef'

ORDER_UPDATE_TRANSACTION_REF = 'action.order.updateTransactionRef'

ORDER_UPDATE_ADDRESS = 'action.order.updateAddress'

ORDER_PRODUCT_BEFORE_CREATE = 'action.orderProduct.beforeCreate'

ORDER_PRODUCT_AFTER_CREATE = 'action.orderProduct.afterCreate'


  • GetStockUpdateOperationOnOrderStatusChangeEvent -> $newOrderStatus $order
  • OrderAddressEvent -> $address1 $address2 $address3 $cellphone $city $company $country $firstname $lastname $phone $state $title $zipcode
  • OrderEvent -> $order
  • OrderManualEvent -> $cart $currency $customer $lang $order
  • OrderPayTotalEvent -> no constructor found in this file
  • OrderPaymentEvent -> $order
  • OrderProductEvent -> $id $order

Order status​

Detail

ORDER_STATUS_CREATE = 'action.createOrderStatus'

ORDER_STATUS_UPDATE = 'action.updateOrderStatus'

ORDER_STATUS_DELETE = 'action.deleteOrderStatus'

ORDER_STATUS_UPDATE_POSITION = 'action.updateOrderStatusPosition'


  • GetStockUpdateOperationOnOrderStatusChangeEvent -> $newOrderStatus $order

  • OrderAddressEvent -> $address1 $address2 $address3 $cellphone $city $company $country $firstname $lastname $phone $state $title $zipcode

  • OrderEvent -> $order

  • OrderManualEvent -> $cart $currency $customer $lang $order

  • OrderPayTotalEvent -> no constructor found in this file

  • OrderPaymentEvent -> $order

  • OrderProductEvent -> $id $order

  • OrderStatusCreateEvent -> no constructor found in this file

  • OrderStatusDeleteEvent -> no constructor found in this file

  • OrderStatusEvent -> no constructor found in this file

  • OrderStatusUpdateEvent -> $id

Payment​

Detail

MODULE_PAY = 'thelia.module.pay'

MODULE_PAYMENT_IS_VALID = 'thelia.module.payment.is_valid'

MODULE_PAYMENT_MANAGE_STOCK = 'thelia.module.payment.manage_stock'


  • BasePaymentEvent -> $module
  • IsValidPaymentEvent -> $cart $module
  • ManageStockOnCreationEvent -> $module

Product​

Detail

PRODUCT_CREATE = 'action.createProduct'

PRODUCT_UPDATE = 'action.updateProduct'

PRODUCT_DELETE = 'action.deleteProduct'

PRODUCT_TOGGLE_VISIBILITY = 'action.toggleProductVisibility'

PRODUCT_UPDATE_POSITION = 'action.updateProductPosition'

PRODUCT_UPDATE_SEO = 'action.updateProductSeo'

PRODUCT_ADD_CONTENT = 'action.productAddContent'

PRODUCT_REMOVE_CONTENT = 'action.productRemoveContent'

PRODUCT_UPDATE_CONTENT_POSITION = 'action.updateProductContentPosition'

PRODUCT_ADD_PRODUCT_SALE_ELEMENT = 'action.addProductSaleElement'

PRODUCT_DELETE_PRODUCT_SALE_ELEMENT = 'action.deleteProductSaleElement'

PRODUCT_UPDATE_PRODUCT_SALE_ELEMENT = 'action.updateProductSaleElement'

PRODUCT_COMBINATION_GENERATION = 'action.productCombinationGeneration'

PRODUCT_SET_TEMPLATE = 'action.productSetTemplate'

PRODUCT_ADD_ACCESSORY = 'action.productAddProductAccessory'

PRODUCT_REMOVE_ACCESSORY = 'action.productRemoveProductAccessory'

PRODUCT_UPDATE_ACCESSORY_POSITION = 'action.updateProductAccessoryPosition'

PRODUCT_FEATURE_UPDATE_VALUE = 'action.updateProductFeatureValue'

PRODUCT_FEATURE_DELETE_VALUE = 'action.deleteProductFeatureValue'

PRODUCT_ADD_CATEGORY = 'action.addProductCategory'

PRODUCT_REMOVE_CATEGORY = 'action.deleteProductCategory'

VIRTUAL_PRODUCT_ORDER_HANDLE = 'action.virtualProduct.handleOrder'

VIRTUAL_PRODUCT_ORDER_DOWNLOAD_RESPONSE = 'action.virtualProduct.downloadResponse'

VIEW_PRODUCT_ID_NOT_VISIBLE = 'action.viewProductIdNotVisible'


  • ProductAddAccessoryEvent -> $accessory_id $product
  • ProductAddCategoryEvent -> $category_id $product
  • ProductAddContentEvent -> $content_id $product
  • ⚠️ Warning

ProductAssociatedContentEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Product/ProductAssociatedContentEvent.php

  • ProductCloneEvent -> $lang $originalProduct $ref
  • ProductCombinationGenerationEvent -> $combinations $currency_id $product
  • ProductCreateEvent -> no constructor found in this file
  • ProductDeleteAccessoryEvent -> $accessory_id $product
  • ProductDeleteCategoryEvent -> $category_id $product
  • ProductDeleteContentEvent -> $content_id $product
  • ProductDeleteEvent -> $product_id
  • ⚠️ Warning

ProductEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Product/ProductEvent.php

  • ProductSetTemplateEvent -> $currency_id $product $template_id

  • ProductToggleVisibilityEvent -> no constructor found in this file

  • ProductUpdateEvent -> $product_id

  • VirtualProductOrderDownloadResponseEvent -> $orderProduct

  • VirtualProductOrderHandleEvent -> $order $pseId

  • ProductSaleElementCreateEvent -> $attribute_av_list $currency_id $product

  • ProductSaleElementDeleteEvent -> $currency_id $product_sale_element_id

  • ProductSaleElementEvent -> $product_sale_element

  • ProductSaleElementUpdateEvent -> $product $product_sale_element_id

Product templates​

Detail

TEMPLATE_CREATE = 'action.createTemplate'

TEMPLATE_UPDATE = 'action.updateTemplate'

TEMPLATE_DELETE = 'action.deleteTemplate'

TEMPLATE_DUPLICATE = 'action.duplicateTemplate'

TEMPLATE_ADD_ATTRIBUTE = 'action.templateAddAttribute'

TEMPLATE_DELETE_ATTRIBUTE = 'action.templateDeleteAttribute'

TEMPLATE_ADD_FEATURE = 'action.templateAddFeature'

TEMPLATE_DELETE_FEATURE = 'action.templateDeleteFeature'

TEMPLATE_CHANGE_FEATURE_POSITION = 'action.templateChangeAttributePosition'

TEMPLATE_CHANGE_ATTRIBUTE_POSITION = 'action.templateChangeFeaturePosition'


  • ProductAddAccessoryEvent -> $accessory_id $product
  • ProductAddCategoryEvent -> $category_id $product
  • ProductAddContentEvent -> $content_id $product
  • ⚠️ Warning

ProductAssociatedContentEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Product/ProductAssociatedContentEvent.php

  • ProductCloneEvent -> $lang $originalProduct $ref
  • ProductCombinationGenerationEvent -> $combinations $currency_id $product
  • ProductCreateEvent -> no constructor found in this file
  • ProductDeleteAccessoryEvent -> $accessory_id $product
  • ProductDeleteCategoryEvent -> $category_id $product
  • ProductDeleteContentEvent -> $content_id $product
  • ProductDeleteEvent -> $product_id
  • ⚠️ Warning

ProductEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Product/ProductEvent.php

  • ProductSetTemplateEvent -> $currency_id $product $template_id

  • ProductToggleVisibilityEvent -> no constructor found in this file

  • ProductUpdateEvent -> $product_id

  • VirtualProductOrderDownloadResponseEvent -> $orderProduct

  • VirtualProductOrderHandleEvent -> $order $pseId

  • ProductSaleElementCreateEvent -> $attribute_av_list $currency_id $product

  • ProductSaleElementDeleteEvent -> $currency_id $product_sale_element_id

  • ProductSaleElementEvent -> $product_sale_element

  • ProductSaleElementUpdateEvent -> $product $product_sale_element_id

  • TemplateAddAttributeEvent -> $attribute_id $template

  • TemplateAddFeatureEvent -> $feature_id $template

  • TemplateCreateEvent -> no constructor found in this file

  • TemplateDeleteAttributeEvent -> $attribute_id $template

  • TemplateDeleteEvent -> $template_id

  • TemplateDeleteFeatureEvent -> $feature_id $template

  • TemplateDuplicateEvent -> $locale $sourceTemplateId

  • ⚠️ Warning

TemplateEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Template/TemplateEvent.php

  • TemplateUpdateEvent -> $template_id

Profile​

Detail

PROFILE_CREATE = 'action.createProfile'

PROFILE_UPDATE = 'action.updateProfile'

PROFILE_DELETE = 'action.deleteProfile'

PROFILE_RESOURCE_ACCESS_UPDATE = 'action.updateProfileResourceAccess'

PROFILE_MODULE_ACCESS_UPDATE = 'action.updateProfileModuleAccess'


  • FileCreateOrUpdateEvent -> $parentId

  • FileDeleteEvent -> $fileToDelete

  • FileToggleVisibilityEvent -> $object_id $query

  • ProfileEvent -> $profile

Sales​

Detail

SALE_CREATE = 'action.createSale'

SALE_UPDATE = 'action.updateSale'

SALE_DELETE = 'action.deleteSale'

SALE_TOGGLE_ACTIVITY = 'action.toggleSaleActivity'

SALE_CLEAR_SALE_STATUS = 'action.clearSaleStatus'

UPDATE_PRODUCT_SALE_STATUS = 'action.updateProductSaleStatus'

CHECK_SALE_ACTIVATION_EVENT = 'action.checkSaleActivationEvent'


  • ProductSaleStatusUpdateEvent -> no constructor found in this file
  • SaleActiveStatusCheckEvent -> no constructor found in this file
  • SaleClearStatusEvent -> no constructor found in this file
  • SaleCreateEvent -> no constructor found in this file
  • SaleDeleteEvent -> $saleId
  • ⚠️ Warning

SaleEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/Sale/SaleEvent.php

  • SaleToggleActivityEvent -> no constructor found in this file
  • SaleUpdateEvent -> $saleId

Shipping zone​

Detail

SHIPPING_ZONE_ADD_AREA = 'action.shippingZone.addArea'

SHIPPING_ZONE_REMOVE_AREA = 'action.shippingZone.removeArea'


  • ShippingZoneAddAreaEvent -> $area_id $shipping_zone_id
  • ShippingZoneRemoveAreaEvent -> no constructor found in this file

State​

Detail

STATE_CREATE = 'action.createState'

STATE_UPDATE = 'action.updateState'

STATE_DELETE = 'action.deleteState'

STATE_TOGGLE_VISIBILITY = 'action.toggleCountryVisibility'


  • StateCreateEvent -> no constructor found in this file
  • StateDeleteEvent -> $state_id
  • ⚠️ Warning

StateEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/State/StateEvent.php

  • StateToggleVisibilityEvent -> no constructor found in this file
  • StateUpdateEvent -> $state_id

Tax​

Detail

TAX_CREATE = 'action.createTax'

TAX_UPDATE = 'action.updateTax'

TAX_DELETE = 'action.deleteTax'

TAX_GET_TYPE_SERVICE = 'action.getTaxService'


  • TaxEvent -> $tax
  • TaxRuleEvent -> $taxRule

Tax rules​

Detail

TAX_RULE_CREATE = 'action.createTaxRule'

TAX_RULE_UPDATE = 'action.updateTaxRule'

TAX_RULE_DELETE = 'action.deleteTaxRule'

TAX_RULE_SET_DEFAULT = 'action.setDefaultTaxRule'

TAX_RULE_TAXES_UPDATE = 'action.updateTaxesTaxRule'


  • TaxEvent -> $tax
  • TaxRuleEvent -> $taxRule

Translation​

Detail

TRANSLATION_GET_STRINGS = 'action.translation.get_strings'

TRANSLATION_WRITE_FILE = 'action.translation.write_file'


  • TranslationEvent -> no constructor found in this file

No classified​

Detail

noCategory :

  • ⚠️ Warning

AccessoryEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/AccessoryEvent.php

  • ActionEvent -> no constructor found in this file
  • CachedFileEvent -> no constructor found in this file
  • DefaultActionEvent -> no constructor found in this file
  • ExportEvent -> $archiver $export $serializer
  • GenerateRewrittenUrlEvent -> $locale $object
  • ImportEvent -> $import $serializer
  • IsAdminEnvEvent -> $request
  • LostPasswordEvent -> $email
  • PdfEvent -> $content $encoding $fontName $format $lang $marges $orientation $unicode
  • SessionEvent -> $cacheDir $debug $env
  • contains -> no constructor found in this file
  • TheliaFormEvent -> $form
  • ToggleVisibilityEvent -> $object_id
  • UpdateFilePositionEvent -> $mode $object_id $position $position; $query
  • ⚠️ Warning

UpdatePositionEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/UpdatePositionEvent.php

  • UpdateSeoEvent -> $locale $meta_description $meta_keywords $meta_title $object_id $url
  • ViewCheckEvent -> $view $view_id

FeatureProduct :

  • FeatureProductDeleteEvent -> $feature_id $product_id
  • ⚠️ Warning

FeatureProductEvent is deprecated, please use thelia/core/lib/Thelia/Core/Event/FeatureProduct/FeatureProductEvent.php

  • FeatureProductUpdateEvent -> $feature_id $feature_value $is_text_value $product_id