summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/helpers/module.php9
1 files changed, 8 insertions, 1 deletions
diff --git a/core/helpers/module.php b/core/helpers/module.php
index 0d43c248..190cec73 100644
--- a/core/helpers/module.php
+++ b/core/helpers/module.php
@@ -26,6 +26,7 @@
class module_Core {
public static $module_names = array();
public static $modules = array();
+ public static $var_cache = array();
static function get_version($module_name) {
return ORM::factory("module")->where("name", $module_name)->find()->version;
@@ -217,11 +218,17 @@ class module_Core {
* @return the value
*/
static function get_var($module_name, $name, $default_value=null) {
+ if (isset(self::$var_cache[$module_name][$name])) {
+ return self::$var_cache[$module_name][$name];
+ }
+
$var = ORM::factory("var")
->where("module_name", $module_name)
->where("name", $name)
->find();
- return $var->loaded ? $var->value : $default_value;
+
+ self::$var_cache[$module_name][$name] = $var->loaded ? $var->value : $default_value;
+ return self::$var_cache[$module_name][$name];
}
/**