/** * perform a given event * @param jEvent $event the event itself * @return void */ function performEvent($event) { $methodName = 'on' . $event->getName(); $this->{$methodName}($event); }
/** * send a notification to all modules * @param $event string the event name * @return jEvent */ public static function notify($eventname, $params = array()) { $event = new jEvent($eventname, $params); if (!isset(self::$hashListened[$eventname])) { self::loadListenersFor($eventname); } $methodName = 'on' . $event->getName(); $list =& self::$hashListened[$eventname]; foreach (array_keys($list) as $key) { $list[$key]->{$methodName}($event); } return $event; }