From d86085526813ce2149c1f29613622d6e4ab4ea4c Mon Sep 17 00:00:00 2001
From: Peter Rotich <peter@osticket.com>
Date: Fri, 15 Aug 2014 17:16:12 +0000
Subject: [PATCH] Bug: Fix navigation

Fix cases where first item added via addSubMenu got deleted.
---
 include/class.nav.php | 2 ++
 scp/tickets.php       | 7 ++++---
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/include/class.nav.php b/include/class.nav.php
index 6f72add47..bc4956f08 100644
--- a/include/class.nav.php
+++ b/include/class.nav.php
@@ -102,6 +102,8 @@ class StaffNav {
 
     function addSubMenu($item,$active=false){
 
+        // Triger lazy loading if submenus haven't been initialized
+        isset($this->submenus[$this->getPanel().'.'.$this->activetab]);
         $this->submenus[$this->getPanel().'.'.$this->activetab][]=$item;
         if($active)
             $this->activeMenu=sizeof($this->submenus[$this->getPanel().'.'.$this->activetab]);
diff --git a/scp/tickets.php b/scp/tickets.php
index 7fb3e3872..42dec382b 100644
--- a/scp/tickets.php
+++ b/scp/tickets.php
@@ -344,7 +344,8 @@ if($cfg->showAnsweredTickets()) {
                         (!$_REQUEST['status'] || $_REQUEST['status']=='open'));
 } else {
 
-    if($stats) {
+    if ($stats) {
+
         $nav->addSubMenu(array('desc'=>$open_name.' ('.number_format($stats['open']).')',
                                'title'=>__('Open Tickets'),
                                'href'=>'tickets.php',
@@ -389,13 +390,13 @@ if($thisstaff->showAssignedOnly() && $stats['closed']) {
                         ($_REQUEST['status']=='closed'));
 } else {
 
-    $nav->addSubMenu(array('desc'=>sprintf(__('Resolved (%s)'), number_format($stats['resolved'])),
+    $nav->addSubMenu(array('desc' => __('Resolved').' ('.number_format($stats['resolved']).')',
                            'title'=>__('Resolved Tickets'),
                            'href'=>'tickets.php?status=resolved',
                            'iconclass'=>'closedTickets'),
                         ($_REQUEST['status']=='resolved'));
 
-    $nav->addSubMenu(array('desc'=>sprintf(__('Closed Tickets (%s)'), number_format($stats['closed'])),
+    $nav->addSubMenu(array('desc' => __('Closed').' ('.number_format($stats['closed']).')',
                            'title'=>__('Closed Tickets'),
                            'href'=>'tickets.php?status=closed',
                            'iconclass'=>'closedTickets'),
-- 
GitLab