diff --git a/scp/queues.php b/scp/queues.php index 997fefa2678cae361a9654c6efecfaccf0199fe9..37fc13e3e2808fd252118ee10d20a12e0e983120 100644 --- a/scp/queues.php +++ b/scp/queues.php @@ -72,11 +72,13 @@ if ($_POST) { if ($queue->save()) $updated++; break; case 'delete': - if ($queue->delete()) $updated++; + if ($queue->getId() == $cfg->getDefaultTicketQueueId()) + $err = __('This queue is the default queue. Unable to delete. '); + elseif ($queue->delete()) $updated++; } } if (!$updated) { - Messages::error(__( + Messages::error($err ?: __( 'Unable to manage any of the selected queues')); } elseif ($_POST['count'] && $updated != $_POST['count']) { diff --git a/scp/tickets.php b/scp/tickets.php index 86fec81f28395a49905bcd3a342bfaf159be5d15..f09184143d8e193d199127bcb6348dbc9f69d5ba 100644 --- a/scp/tickets.php +++ b/scp/tickets.php @@ -23,6 +23,11 @@ require_once(INCLUDE_DIR.'class.json.php'); require_once(INCLUDE_DIR.'class.dynamic_forms.php'); require_once(INCLUDE_DIR.'class.export.php'); // For paper sizes + + +// Fetch ticket queues organized by root and sub-queues +$queues = CustomQueue::getHierarchicalQueues($thisstaff); + $page=''; $ticket = $user = null; //clean start. $redirect = false; @@ -113,18 +118,21 @@ if (!$ticket) { $queue = AdhocSearch::load($key); } - // Make the current queue sticky - $_SESSION[$queue_key] = $queue_id; - - if ((int) $queue_id && !$queue) { + if ((int) $queue_id && !$queue) $queue = SavedQueue::lookup($queue_id); - } - if (!$queue) { - $queue = SavedQueue::lookup($cfg->getDefaultTicketQueueId()); - } - // Set the queue_id for navigation to turn a top-level item bold - $_REQUEST['queue'] = $queue->getId(); + if (!$queue && ($qid=$cfg->getDefaultTicketQueueId())) + $queue = SavedQueue::lookup($qid); + + if (!$queue && $queues) + list($queue,) = $queues[0]; + + if ($queue) { + // Set the queue_id for navigation to turn a top-level item bold + $_REQUEST['queue'] = $queue->getId(); + // Make the current queue sticky + $_SESSION[$queue_key] = $queue->getId(); + } } // Configure form for file uploads @@ -450,9 +458,6 @@ if (isset($_GET['clear_filter'])) $nav->setTabActive('tickets'); $nav->addSubNavInfo('jb-overflowmenu', 'customQ_nav'); -// Fetch ticket queues organized by root and sub-queues -$queues = CustomQueue::getHierarchicalQueues($thisstaff); - // Start with all the top-level (container) queues foreach ($queues as $_) { list($q, $children) = $_;