X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=frontaccounting.php;h=3324d6bb4bdcd14b978305979626d659b296863c;hb=39150665d5955716247c6c6e06adbcc2cad037a9;hp=4ae88cbb1f6f5c681576b116dbded1075cd3b057;hpb=1fd87dc710616d751781444f3b141cf1fd57ed86;p=fa-stable.git diff --git a/frontaccounting.php b/frontaccounting.php index 4ae88cbb..3324d6bb 100644 --- a/frontaccounting.php +++ b/frontaccounting.php @@ -20,14 +20,14 @@ if (!isset($path_to_root) || isset($_GET['path_to_root']) || isset($_POST['path_ include_once($path_to_root . '/applications/generalledger.php'); include_once($path_to_root . '/applications/setup.php'); include_once($path_to_root . '/installed_extensions.php'); - if (count($installed_extensions) > 0) + + foreach ($installed_extensions as $ext) { - foreach ($installed_extensions as $ext) - { - if ($ext['type'] == 'module') - include_once($path_to_root."/".$ext['path']."/".$ext['filename']); - } - } + if (@($ext['active'] && isset($ext['tabs']))) // supressed warnings before 2.2 upgrade + foreach($ext['tabs'] as $tab) { + include_once($path_to_root.'/'.$ext['path'].'/'.$tab['url']); + } + } class front_accounting { @@ -38,6 +38,7 @@ if (!isset($path_to_root) || isset($_GET['path_to_root']) || isset($_POST['path_ // GUI var $menu; //var $renderer; + function front_accounting() { //$this->renderer =& new renderer(); @@ -64,7 +65,9 @@ if (!isset($path_to_root) || isset($_GET['path_to_root']) || isset($_POST['path_ function display() { global $path_to_root; - include($path_to_root . "/themes/".user_theme()."/renderer.php"); + + include_once($path_to_root . "/themes/".user_theme()."/renderer.php"); + $this->init(); $rend = new renderer(); $rend->wa_header(); @@ -72,6 +75,7 @@ if (!isset($path_to_root) || isset($_GET['path_to_root']) || isset($_POST['path_ $rend->display_applications($this); //$rend->menu_footer($this->menu); $rend->wa_footer(); + $this->renderer =& $rend; } function init() { @@ -87,27 +91,25 @@ if (!isset($path_to_root) || isset($_GET['path_to_root']) || isset($_POST['path_ $this->add_application(new manufacturing_app()); $this->add_application(new dimensions_app()); $this->add_application(new general_ledger_app()); - if (count($installed_extensions) > 0) + + // Do not use global array directly here, or you suffer + // from buggy php behaviour (unexpected loop break + // because of same var usage in class constructor). + $extensions = $installed_extensions; + foreach ($extensions as $ext) { - // Do not use global array directly here, or you suffer - // from buggy php behaviour (unexpected loop break - // because of same var usage in class constructor). - $extensions = $installed_extensions; - foreach ($extensions as $ext) - { - if (@($ext['active'] && $ext['type'] == 'module')) // supressed warnings before 2.2 upgrade - { - $_SESSION['get_text']->add_domain($_SESSION['language']->code, - $ext['path']."/lang"); - $class = $ext['tab']."_app"; + if (@($ext['active'] && isset($ext['tabs']))) { // supressed warnings before 2.2 upgrade + $_SESSION['get_text']->add_domain($_SESSION['language']->code, + $ext['path']."/lang"); + foreach($ext['tabs'] as $tab) { + $class = $tab['tab_id']."_app"; if (class_exists($class)) $this->add_application(new $class()); - $_SESSION['get_text']->add_domain($_SESSION['language']->code, - $path_to_root."/lang"); } } - } - + } + $_SESSION['get_text']->add_domain($_SESSION['language']->code, + $path_to_root."/lang", $_SESSION['language']->version); $this->add_application(new setup_app()); } }