/** * On every controller startup * * @param unknown_type $controller */ public function initialize(&$controller, $settings) { App::import('Vendor', 'Eventful.Startup'); // bootstrap $this->Controller = $controller; $this->CakeEvents = CakeEvents::getInstance(); $listeners = $this->CakeEvents->loadListeners('controllers'); foreach ($listeners as $class => $params) { extract($params); $this->listeners[$class] = $this->CakeEvents->addListener($className, $eventType, $pluginDir); } }
/** * @param ShellDispatcher $Dispatcher */ public function __construct($Dispatcher) { parent::__construct($Dispatcher); App::import('Vendor', 'Eventful.Startup'); // bootstrap $this->Dispatcher = $Dispatcher; $this->CakeEvents = CakeEvents::getInstance(); $listeners = $this->CakeEvents->loadListeners('shells'); foreach ($listeners as $class => $params) { extract($params); $this->listeners[$class] = $this->CakeEvents->addListener($className, $eventType, $pluginDir); } }
/** * Wrapper for default event dispatching * * @param object $model * @param string $event * @param array $data (optional) * @access public */ function dispatchEvent($model, $event, $data = array()) { $cake_events = CakeEvents::getInstance(); return $cake_events->dispatchEvent($event, am($data, array('Model' => $model))); }