diff --git a/framework/control.class.php b/framework/control.class.php index 747a1e12f6..ae729ac382 100644 --- a/framework/control.class.php +++ b/framework/control.class.php @@ -666,8 +666,10 @@ class control extends baseControl { global $app; $moduleName = $app->getModuleName(); - $zenClass = $moduleName . 'Zen'; + $zenClass = 'ext' . $moduleName . 'Zen'; + if(is_callable("{$zenClass}::{$method}")) return call_user_func_array("{$zenClass}::{$method}", $arguments); + $zenClass = $moduleName . 'Zen'; if(is_callable("{$zenClass}::{$method}")) return call_user_func_array("{$zenClass}::{$method}", $arguments); $app->triggerError("the module {$moduleName} has no {$method} method", __FILE__, __LINE__, $exit = true); diff --git a/framework/model.class.php b/framework/model.class.php index d120e4b7c1..062cf998c9 100644 --- a/framework/model.class.php +++ b/framework/model.class.php @@ -367,9 +367,11 @@ class model extends baseModel public static function __callStatic($method, $arguments) { global $app; - $moduleName = $app->getModuleName(); - $taoClass = $moduleName . 'Tao'; + $moduleName = get_called_class(); + $taoClass = 'ext' . $moduleName . 'Tao'; + if(is_callable("{$taoClass}::{$method}")) return call_user_func_array("{$taoClass}::{$method}", $arguments); + $taoClass = $moduleName . 'Tao'; if(is_callable("{$taoClass}::{$method}")) return call_user_func_array("{$taoClass}::{$method}", $arguments); $app->triggerError("the module {$moduleName} has no {$method} method", __FILE__, __LINE__, $exit = true);