Example #1
0
File: event.php Project: pihizi/qf
 protected static function &call_wrapper($selector, $method, &$params)
 {
     $retval = NULL;
     foreach (Event::extract_names($selector) as $name) {
         $e = Event::factory($name, FALSE);
         if ($e) {
             $e->stop_propagation = FALSE;
             $e->return_value = $retval;
             $e->debug = !!Config::get('debug.event:' . $name);
             call_user_func_array(array($e, $method), $params);
             $retval = $e->return_value;
             if ($e->stop_propagation) {
                 if ($retval === NULL) {
                     $retval = FALSE;
                 }
                 break;
             }
             $e->debug = FALSE;
         }
     }
     return $retval;
 }