Skip to content

Customer profile data

Customer profile data model

CustomerProfileData

CustomerProfileData (Ibexa\Bundle\Commerce\Eshop\Model\CustomerProfileData\CustomerProfileData) is the main class for the customer profile data entity. It contains addresses, SesUser, and optional data within a CustomerProfileDataMap.

Addresses are stored in Party objects. These Party classes are generated by the message generator.

SesUser

Ibexa\Bundle\Commerce\Eshop\Model\CustomerProfileData\SesUser is located under CustomerProfileData and contains information about the user account such as customer number, login name, email address.

Contact

Ibexa\Bundle\Commerce\Eshop\Model\CustomerProfileData\Contact is located under SesUser and contains information about the contact.

CustomerProfileDataController

Methods

Method Route Description
showDetailAction() ibexa.commerce.customer.detail Renders the profile detail page
addressBookAction() ibexa.commerce.address.book.list Renders the address book (a list with delivery addresses)
addressBookDeleteAction() ibexa.commerce.address.book.delete Removes the given delivery address from customer profile data
logoutAction() ibexa.commerce.customer.logout Unsets all profile data within the session, logs out the user and redirects to the previous page

Profile detail page

Customer profile data services

CustomerProfileDataServiceInterface

CustomerProfileDataServiceInterface (Ibexa\Bundle\Commerce\Eshop\Model\CustomerProfileData\CustomerProfileDataServiceInterface) is the general interface for any customer profile data service.

AbstractCustomerProfileDataService

AbstractCustomerProfileDataService (Ibexa\Bundle\Commerce\Eshop\Model\CustomerProfileData\AbstractCustomerProfileDataService) is the abstract service implementation for customer profile data. The service provides helper methods for derivative services.

Customer profile data events

CustomerProfileDataEventInterface

CustomerProfileDataEventInterface (Ibexa\Bundle\Commerce\Eshop\Model\CustomerProfileData\CustomerProfileDataEventInterface) is the general interface for any event that is thrown in customer profile data services.

AbstractCustomerProfileDataEvent

AbstractCustomerProfileDataEvent (Ibexa\Bundle\Commerce\Eshop\Model\CustomerProfileData\AbstractCustomerProfileDataEvent) is the abstract event for any customer profile data event and helper methods like setCustomerProfileData() to make a profile available for an event listener.

Customer profile data listeners

ListenerInterface

ListenerInterface (Ibexa\Bundle\Commerce\Eshop\Model\CustomerProfileData\ListenerInterface) defines the methods that all listeners must have (for example, the onPreFetch(), onPostFetch() events).