You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 17 Next »

Creating an event handler in Blesta consists of merely filling in a stubbed callback method, or returning an array of callbacks from a plugin's getEvents() method. Blesta offers a number of events that are automatically triggered when needed. The default handlers for these events may be found in the /installdir/components/events/default/ directory. You can paste your event handler code directly into any of the default handler methods, or more preferably, create a plugin to handle the event.

Events

EventTriggered WhenDefault Event HandlerParametersReturnsSince
Appcontroller.preActionA URI is requestedEventsAppControllerCallback::preAction()voidvoid3.0
Clients.createA client is createdEventsClientsCallback::create()
  • client - An object representing the client that was created.
void3.1
Emails.sendAn email template is sentEventsEmailsCallback::send()
  • action - The action that specifies the email group being sent
  • options - An array of options passed to Emails::send(), which may include:
    • to_client_id - The ID of the client the message was sent to
    • from_staff_id - The ID of the staff member the message was sent from
    • from - The from address override
    • from_name - The from name override
    • reply_to - The reply to address override
  • tags - A key/value pair of replacement tags for the email.

array

Key/value pairs to merge with tags.

3.1
Emails.sendCustomA non-template based email is sentEventsEmailsCallback::sendCustom()
  • options - An array of options passed to Emails::send(), which may include:
    • to_client_id - The ID of the client the message was sent to
    • from_staff_id - The ID of the staff member the message was sent from
    • reply_to - The reply to address override
  • tags - A key/value pair of replacement tags for the email.

array

Key/value pairs to merge with tags.

3.1
Invoices.addAn invoice is createdEventsInvoicesCallback::add()
  • invoice_id - The ID of the invoice created
void3.1
Invoices.editAn invoice is updatedEventsInvoicesCallback::edit()
  • invoice_id - The ID of the invoice updated
void3.1
Invoices.setClosedAn invoice is closedEventsInvoicesCallback::setClosed()
  • invoice_id - The ID of the invoice closed
void3.1
Transactions.addA transaction is createdEventsTransactionsCallback::add()
  • transaction_id - The ID of the transaction created
void3.1
Transactions.editA transaction is updatedEventsTransactionsCallback::edit()
  • transaction_id - The ID of the transaction updated
void3.1
Users.loginA user logs inEventsUsersCallback::login()
  • user_id - The ID of the user that successfully logged in
void3.1
Users.logoutA user logs outEventsUsersCallback::logout()
  • user_id - The ID of the user attempting to log out
void3.1
Navigation.getSearchOptionsStaff search options are displayedEventsNavigationCallback::getSearchOptions()
  • options - A key/value pair of search options where each key is the URI to redirect search queries to and the value is the name of the search option. When implemented, the event handler should modify the options parameter using EventObject::setParams().
  • base_uri - The base URI for the currently logged in user.
void3.0

Working with Events

Each event handler that is invoked when the event is triggered is passed an EventObject. You can modify the parameters or return value of this object and the modified event will be passed along to each subsequent handler, and finally returned to the trigger.

To fetch parameters from the EventObject invoke the getParams() method. Similarly, to set parameters use the setParams() method.

To set the return value from the EventObject invoke the setReturnVal() method. Similarly, to fetch the return value use the getReturnVal() method.

  • No labels