Download the PHP package ufo-engineering/ko-events without Composer
On this page you can find all versions of the php package ufo-engineering/ko-events. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ufo-engineering/ko-events
More information about ufo-engineering/ko-events
Files in ufo-engineering/ko-events
Package ko-events
Short Description Event system for Kohana framework
License MIT
Homepage https://github.com/ufo-engineering/kohana-events
Informations about the package ko-events
ko-events
This version was transformed (*with some changes
) from this package, special for using through composer https://packagist.org/packages/unxp/kohana-events
Event system for Kohana framework
Released on 2017-11-20
By ufo-engineering
Installation
composer require ufo-engineering/ko-events
Configuration
Copy ..vendor/ufo-engineering/ko-events/config/events.php
to application/config/events.php
.
All events and their handlers have to be registered in application/config/events.php
configuration file (by default).
But, if events.php
not exists, the library will try to get config from DB. You should execute
dump of config tables from this file events_tables.sql
. At the moment, if you choose DB for to store config data,
you should add specific data manually. So, for ordinary tasks, we recommended use config-file.
Configuration is devised into four parts for each environment, but you can add your own.
To register an event, put it's class name as an array key and it's handlers as values.
Example:
Usage
-
Create an event class ... application/classes/Event/Test.php
-
Create a handler class
- Fire event
All event handlers will be executed in the same order they are defined in events.php
file or DB.
By making handle
method to return false
, you can break the chain and no further handlers will be executed.
Extra
There is an extra class EventHandlerNotification
for handling event notification easily.
However it requires Kohana emails module from https://github.com/shadowhand/email or you can adapt email sending for your needs.
To use this helper, simply make your handlers to extend this class and implement formatSubject
and getReceivers
methods.
Example:
Tables
*with some changes:
1) added support of aliases
2) added DB config tables