/** * Trigger event, call listeners * * @access public * @return Event */ public function trigger() { if ($this->has($this->event->getMethod(), $this->event->getType())) { $data =& $this->on[$this->event->getMethod()][$this->event->getType()]; krsort($data); foreach ($data as $items) { foreach ($items as $priority => $action) { if (!$this->event->isPropagationStopped()) { $this->call($action); } } } } return $this->event; }