Skip to content
Snippets Groups Projects
Commit c5cb8332 authored by Jared Hancock's avatar Jared Hancock
Browse files

Maintain search backend sort order

parent 32565aa9
No related branches found
No related tags found
No related merge requests found
...@@ -122,6 +122,7 @@ if($staffId && ($staffId==$thisstaff->getId())) { //My tickets ...@@ -122,6 +122,7 @@ if($staffId && ($staffId==$thisstaff->getId())) { //My tickets
//Search?? Somebody...get me some coffee //Search?? Somebody...get me some coffee
$deep_search=false; $deep_search=false;
$order_by=$order=null;
if($search): if($search):
$qstr.='&a='.urlencode($_REQUEST['a']); $qstr.='&a='.urlencode($_REQUEST['a']);
$qstr.='&t='.urlencode($_REQUEST['t']); $qstr.='&t='.urlencode($_REQUEST['t']);
...@@ -142,9 +143,12 @@ if($search): ...@@ -142,9 +143,12 @@ if($search):
require_once(INCLUDE_DIR.'ajax.tickets.php'); require_once(INCLUDE_DIR.'ajax.tickets.php');
$tickets = TicketsAjaxApi::_search(array('query'=>$queryterm)); $tickets = TicketsAjaxApi::_search(array('query'=>$queryterm));
if (count($tickets)) if (count($tickets)) {
$qwhere .= ' AND ticket.ticket_id IN ('. $ticket_ids = implode(',',db_input($tickets));
implode(',',db_input($tickets)).')'; $qwhere .= ' AND ticket.ticket_id IN ('.$ticket_ids.')';
$order_by = 'FIELD(ticket.ticket_id, '.$ticket_ids.')';
$order = ' ';
}
else else
// No hits -- there should be an empty list of results // No hits -- there should be an empty list of results
$qwhere .= ' AND false'; $qwhere .= ' AND false';
...@@ -154,9 +158,12 @@ if($search): ...@@ -154,9 +158,12 @@ if($search):
endif; endif;
if ($_REQUEST['advsid'] && isset($_SESSION['adv_'.$_REQUEST['advsid']])) { if ($_REQUEST['advsid'] && isset($_SESSION['adv_'.$_REQUEST['advsid']])) {
$ticket_ids = implode(',', db_input($_SESSION['adv_'.$_REQUEST['advsid']]));
$qstr.='advsid='.$_REQUEST['advsid']; $qstr.='advsid='.$_REQUEST['advsid'];
$qwhere .= ' AND ticket.ticket_id IN ('. implode(',', $qwhere .= ' AND ticket.ticket_id IN ('.$ticket_ids.')';
db_input($_SESSION['adv_'.$_REQUEST['advsid']])).')'; // Thanks, http://stackoverflow.com/a/1631794
$order_by = 'FIELD(ticket.ticket_id, '.$ticket_ids.')';
$order = ' ';
} }
$sortOptions=array('date'=>'effective_date','ID'=>'ticket.`number`', $sortOptions=array('date'=>'effective_date','ID'=>'ticket.`number`',
...@@ -168,7 +175,6 @@ $orderWays=array('DESC'=>'DESC','ASC'=>'ASC'); ...@@ -168,7 +175,6 @@ $orderWays=array('DESC'=>'DESC','ASC'=>'ASC');
//Sorting options... //Sorting options...
$queue = isset($_REQUEST['status'])?strtolower($_REQUEST['status']):$status; $queue = isset($_REQUEST['status'])?strtolower($_REQUEST['status']):$status;
$order_by=$order=null;
if($_REQUEST['sort'] && $sortOptions[$_REQUEST['sort']]) if($_REQUEST['sort'] && $sortOptions[$_REQUEST['sort']])
$order_by =$sortOptions[$_REQUEST['sort']]; $order_by =$sortOptions[$_REQUEST['sort']];
elseif($sortOptions[$_SESSION[$queue.'_tickets']['sort']]) { elseif($sortOptions[$_SESSION[$queue.'_tickets']['sort']]) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment