X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=includes%2Fhooks.inc;h=609eac31203b49b4a2efdac51f2aaf54d1161232;hb=716ddd8b68b285b432e47626939165d9f6c48f90;hp=6c6dda32bdc2a3e5922f44884f8b8b59e0a09931;hpb=a2ae0e35302270ae811db2e6acb44c16b186a970;p=fa-stable.git diff --git a/includes/hooks.inc b/includes/hooks.inc index 6c6dda32..609eac31 100644 --- a/includes/hooks.inc +++ b/includes/hooks.inc @@ -211,7 +211,6 @@ class hooks { return true; } return array($qoh, 'stockmankobg'); - return array($line_item->qty_dispatched, 'stockmankobg'); } } @@ -219,35 +218,39 @@ class hooks { /* Installs hooks provided by extension modules */ -function install_hooks() +function install_hooks($lang_code=null) { global $path_to_root, $Hooks, $installed_extensions; $Hooks = array(); - // include current language related $Hooks object if locale file exists - $lang_code = clean_file_name($_SESSION['language']->code); + if (!$lang_code) + $lang_code = $_SESSION['language']->code; + $lang_code = clean_file_name($lang_code); + if (file_exists($path_to_root . "/lang/" . $lang_code . "/locale.inc")) { include_once($path_to_root . "/lang/" . $lang_code . "/locale.inc"); - $code = $_SESSION['language']->code; + $code = $lang_code; $hook_class = 'hooks_'.$code; $Hooks[$code] = new $hook_class; unset($code, $hook_class); } // install hooks provided by active extensions - foreach($installed_extensions as $ext) { - $hook_class = 'hooks_'.$ext['package']; - if ($ext['active'] && class_exists($hook_class)) { - $Hooks[$ext['package']] = new $hook_class; - } + if (isset($installed_extensions) && !empty($installed_extensions)) { + foreach($installed_extensions as $ext) { + $hook_class = 'hooks_'.$ext['package']; + if ($ext['active'] && class_exists($hook_class)) { + $Hooks[$ext['package']] = new $hook_class; + } + } } } /* Non active hooks are not included in $Hooks array, so we can use special function to activate. */ -function activate_hooks($ext, $comp) +function activate_hooks($ext, $comp, $on=true) { global $Hooks; @@ -261,8 +264,10 @@ function activate_hooks($ext, $comp) } if (!$hooks) return false; - else + elseif ($on) return $hooks->activate_extension($comp, false); + else + return $hooks->deactivate_extension($comp, false); } /* Calls hook $method defined in extension $ext (if any)