Index: branches/5.2.x/core/kernel/event_handler.php =================================================================== diff -u -N -r15137 -r15250 --- branches/5.2.x/core/kernel/event_handler.php (.../event_handler.php) (revision 15137) +++ branches/5.2.x/core/kernel/event_handler.php (.../event_handler.php) (revision 15250) @@ -1,6 +1,6 @@ getEventMethod($event); + + $this->$event_name($event); + } + + /** + * Returns method name, that should called to process given event. + * When no such method exists and exception is thrown. + * + * @param kEvent $event + * @return string + * @throws Exception + */ + public function getEventMethod(kEvent $event) + { $event_name = $event->Name; if ( array_key_exists($event_name, $this->eventMethods) ) { $event_name = $this->eventMethods[$event_name]; } if ( method_exists($this, $event_name) ) { - $this->$event_name($event); + return $event_name; } - else { - throw new Exception('Event ' . $event->Name . ' not implemented in class ' . get_class($this) . ''); - } + + throw new Exception('Event "' . $event->Name . '" not implemented in class "' . get_class($this) . '"'); } /**