From 2f74cf27ad6fbb852df78bcccca1fb645c8a57e0 Mon Sep 17 00:00:00 2001 From: Marius Burkard <m.burkard@pixcept.de> Date: Wed, 02 Mar 2016 07:19:30 -0500 Subject: [PATCH] Merge branch 'stable-3.1' --- interface/web/nav.php | 50 +++++++++++++++++++++++++++++++++++--------------- 1 files changed, 35 insertions(+), 15 deletions(-) diff --git a/interface/web/nav.php b/interface/web/nav.php index 909392f..8a49edd 100644 --- a/interface/web/nav.php +++ b/interface/web/nav.php @@ -28,8 +28,8 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -require_once('../lib/config.inc.php'); -require_once('../lib/app.inc.php'); +require_once '../lib/config.inc.php'; +require_once '../lib/app.inc.php'; $app->uses('tpl'); @@ -45,38 +45,58 @@ /* * If the dashboard is in the list of modules it always has to be the first! */ + /* asort($modules); if (in_array('dashboard', $modules)) { $key = array_search('dashboard', $modules); unset($modules[$key]); $modules = array_merge(array('dashboard'), $modules); } + */ if(is_array($modules)) { foreach($modules as $mt) { if(is_file($mt.'/lib/module.conf.php')) { if(!preg_match("/^[a-z]{2,20}$/i", $mt)) die('module name contains unallowed chars.'); - include_once($mt.'/lib/module.conf.php'); + if($mt == 'dns'){ + $dns_servers = $app->db->queryOneRecord("SELECT COUNT(*) as cnt FROM server WHERE dns_server = 1 AND active = 1"); + if($dns_servers['cnt'] == 0) continue; + } + if($mt == 'mail'){ + $mail_servers = $app->db->queryOneRecord("SELECT COUNT(*) as cnt FROM server WHERE mail_server = 1 AND active = 1"); + if($mail_servers['cnt'] == 0) continue; + } + if($mt == 'sites'){ + $web_servers = $app->db->queryOneRecord("SELECT COUNT(*) as cnt FROM server WHERE web_server = 1 AND active = 1"); + if($web_servers['cnt'] == 0) continue; + } + + include_once $mt.'/lib/module.conf.php'; $language = (isset($_SESSION['s']['user']['language']))?$_SESSION['s']['user']['language']:$conf['language']; $app->load_language_file('web/'.$mt.'/lib/'.$language.'.lng'); $active = ($module['name'] == $_SESSION['s']['module']['name']) ? 1 : 0; - $topnav[] = array( 'title' => $app->lng($module['title']), - 'active' => $active, - 'module' => $module['name']); + $topnav[$module['order'].'-'.$module['name']] = array( 'title' => $app->lng($module['title']), + 'active' => $active, + 'module' => $module['name']); } } + ksort($topnav); } } else { //* Loading Login Module - include_once('login/lib/module.conf.php'); + /* + include_once 'login/lib/module.conf.php'; $_SESSION['s']['module'] = $module; - $topnav[] = array( 'title' => 'Login', - 'active' => 1); + $topnav[] = array( 'title' => 'Login', + 'active' => 1); $module = null; unset($module); + */ + header('Location: /login/'); + die(); } //* Topnavigation - $app->tpl->setLoop('nav_top',$topnav); + $app->tpl->setLoop('nav_top', $topnav); } @@ -84,9 +104,9 @@ if(isset($_GET['nav']) && $_GET['nav'] == 'side') { if(isset($_SESSION['s']['module']['name']) && is_file($_SESSION['s']['module']['name'].'/lib/custom_menu.inc.php')) { - include_once($_SESSION['s']['module']['name'].'/lib/custom_menu.inc.php'); + include_once $_SESSION['s']['module']['name'].'/lib/custom_menu.inc.php'; } else { - + $app->tpl->newTemplate('sidenav.tpl.htm'); //* translating module navigation @@ -106,8 +126,8 @@ } else { $nav_translated = null; } - $app->tpl->setLoop('nav_left',$nav_translated); - + $app->tpl->setLoop('nav_left', $nav_translated); + } } @@ -115,4 +135,4 @@ $app->tpl_defaults(); $app->tpl->pparse(); -?> \ No newline at end of file +?> -- Gitblit v1.9.1