From 59bbfcef4fb48ac470a54e6c42c92eb71e5f33d5 Mon Sep 17 00:00:00 2001 From: "Michael Kaufmann (d00p)" Date: Mon, 8 Nov 2010 07:11:00 +0000 Subject: [PATCH] - show next logical order number when creating new ticket category, fixes #464 --- admin_tickets.php | 4 +++- lib/classes/ticket/class.ticket.php | 14 ++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/admin_tickets.php b/admin_tickets.php index 188681c8..b140fc17 100644 --- a/admin_tickets.php +++ b/admin_tickets.php @@ -473,7 +473,8 @@ elseif($page == 'categories' if($order < 1 || $order >= 1000) { - $order = 1; + // use the latest available + $order = ticket::getHighestOrderNumber($db) + 1; } if($category == '') @@ -489,6 +490,7 @@ elseif($page == 'categories' } else { + $order = ticket::getHighestOrderNumber($db) + 1; eval("echo \"" . getTemplate("ticket/tickets_newcategory") . "\";"); } } diff --git a/lib/classes/ticket/class.ticket.php b/lib/classes/ticket/class.ticket.php index 910937a9..6103c308 100644 --- a/lib/classes/ticket/class.ticket.php +++ b/lib/classes/ticket/class.ticket.php @@ -442,6 +442,20 @@ class ticket return null; } + /** + * get the highest order number + * + * @param object $_db database-object + * + * @return int highest order number + */ + static public function getHighestOrderNumber($_db = null) + { + $sql = "SELECT MAX(`logicalorder`) as `highestorder` FROM `" . TABLE_PANEL_TICKET_CATS . "`;"; + $result = $_db->query_first($sql); + return (isset($result['highestorder']) ? (int)$result['highestorder'] : 1); + } + /** * returns the last x archived tickets */