/** * Filters a value by calling all listeners of a given event. * * @param RokCommon_Event $event A RokCommon_Event instance * @param mixed $value The value to be filtered * * @return RokCommon_Event The RokCommon_Event instance */ public function filter(RokCommon_Event $event, $value) { if (isset($this->listeners[$event->getName()])) { foreach ($this->listeners[$event->getName()] as $priority_listeners) { foreach ($priority_listeners as $listener) { $value = call_user_func_array($listener, array($event, $value)); } } $event->setReturnValue($value); } return $event; }