summaryrefslogtreecommitdiff
path: root/core/helpers/module.php
diff options
context:
space:
mode:
Diffstat (limited to 'core/helpers/module.php')
-rw-r--r--core/helpers/module.php10
1 files changed, 10 insertions, 0 deletions
diff --git a/core/helpers/module.php b/core/helpers/module.php
index fc76c033..afba658a 100644
--- a/core/helpers/module.php
+++ b/core/helpers/module.php
@@ -54,4 +54,14 @@ class module_Core {
public static function installed() {
return ORM::factory("module")->find_all();
}
+
+ public static function event($name, &$data=null) {
+ foreach (self::installed() as $module) {
+ $class = "{$module->name}_event";
+ $function = str_replace(".", "_", $name);
+ if (method_exists($class, $function)) {
+ call_user_func_array(array($class, $function), array($data));
+ }
+ }
+ }
}