From a5fe2742b8e90e7bb2ee4a3a9df3ea64afd6eaff Mon Sep 17 00:00:00 2001 From: xaver <xaver@ispconfig3> Date: Fri, 09 Sep 2011 14:09:31 -0400 Subject: [PATCH] Fixed #1390 - Added 3ware controller (was my script i use 3ware) --- interface/lib/classes/plugin.inc.php | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) diff --git a/interface/lib/classes/plugin.inc.php b/interface/lib/classes/plugin.inc.php index 450efd0..910cc57 100644 --- a/interface/lib/classes/plugin.inc.php +++ b/interface/lib/classes/plugin.inc.php @@ -86,7 +86,6 @@ $_SESSION['s']['plugin_cache'][$event_name][] = array('plugin' => $plugin_name, 'function' => $function_name); if($this->debug) $app->log("Plugin '$plugin_name' has registered the function '$function_name' for the event '$event_name'",LOGLEVEL_DEBUG); - } /* @@ -135,25 +134,31 @@ //* Internal function to load the plugin and call the event function in the plugin. private function callPluginEvent($event_name,$data) { global $app; - + //* execute the functions for the events if(is_array($_SESSION['s']['plugin_cache'][$event_name])) { foreach($_SESSION['s']['plugin_cache'][$event_name] as $rec) { $plugin_name = $rec['plugin']; $function_name = $rec['function']; $plugin_file = ISPC_LIB_PATH.FS_DIV.'plugins'.FS_DIV.$plugin_name.'.inc.php'; + + if(is_file($plugin_file)) { if(!isset($app->loaded_plugins[$plugin_name])) { include_once($plugin_file); $app->loaded_plugins[$plugin_name] = new $plugin_name; } + if($this->debug) $app->log("Called method: '$function_name' in plugin '$plugin_name' for event '$event_name'",LOGLEVEL_DEBUG); // call_user_method($function_name,$app->loaded_plugins[$plugin_name],$event_name,$data); + call_user_func(array($app->loaded_plugins[$plugin_name],$function_name),$event_name,$data); + } } } + } // end functiom callPluginEvent -- Gitblit v1.9.1