85 $this->listener = array();
87 $sql =
"SELECT * FROM il_event_handling".
88 " WHERE type = ".$ilDB->quote(
"listen",
"text");
89 $res = $ilDB->query($sql);
90 while(
$row = $ilDB->fetchAssoc(
$res))
92 $this->listener[
$row[
"id"]][] = $row[
"component"];
103 function raise($a_component, $a_event, $a_parameter =
"")
105 if (is_array($this->listener[$a_component]))
107 foreach ($this->listener[$a_component] as
$listener)
110 $last_slash = strripos($listener,
'/');
111 $comp = substr($listener,0,$last_slash);
112 $class =
'il'.substr($listener,$last_slash + 1).
'AppEventListener';
113 $file =
"./".$listener.
"/classes/class.".$class.
".php";
116 #$comp = explode("/", $listener);
117 #$class = "il".$comp[1]."AppEventListener";
118 #$file = "./".$listener."/classes/class.".$class.".php";
124 call_user_func(array($class,
'handleEvent'), $a_component, $a_event, $a_parameter);
130 include_once(
"./Services/Component/classes/class.ilPluginAdmin.php");
132 foreach ($plugins as $pl)
136 $plugin->handleEvent($a_component, $a_event, $a_parameter);