X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=includes%2Fhooks.inc;h=d2096c17004362352f2c95020d1fad6f45955396;hb=cf776631b028241405a5b2c41d0c03da456880f7;hp=1621d8f48cbc6a9c371101d74b7ff9be9636ede4;hpb=fa43a9c974d05b77517a0d8e3e510ef4a088632e;p=fa-stable.git diff --git a/includes/hooks.inc b/includes/hooks.inc index 1621d8f4..d2096c17 100644 --- a/includes/hooks.inc +++ b/includes/hooks.inc @@ -203,9 +203,9 @@ class hooks { * more than one in the cart. */ /* Default behavior check if there is enough quantity on hand and change the css - * class if needed */ + * class if needed */ static function default_get_dispatchable_quantity($line_item, $location, $date, $qoh) { - global $SysPrefs; + global $SysPrefs; if ($SysPrefs->allow_negative_stock() || ($line_item->qty_dispatched <= $qoh)) { return true; @@ -226,9 +226,10 @@ function install_hooks() $Hooks = array(); // include current language related $Hooks object if locale file exists - if (file_exists($path_to_root . "/lang/".$_SESSION['language']->code."/locale.inc")) + $lang_code = clean_file_name($_SESSION['language']->code); + if (file_exists($path_to_root . "/lang/" . $lang_code . "/locale.inc")) { - include_once($path_to_root . "/lang/".$_SESSION['language']->code."/locale.inc"); + include_once($path_to_root . "/lang/" . $lang_code . "/locale.inc"); $code = $_SESSION['language']->code; $hook_class = 'hooks_'.$code; $Hooks[$code] = new $hook_class; @@ -236,17 +237,17 @@ function install_hooks() } // 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; - } + $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; @@ -260,8 +261,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)