From 63f45e7f13d255b3b9737963c1ddd705bb5a59dd Mon Sep 17 00:00:00 2001 From: Jared Hancock <jared@osticket.com> Date: Thu, 2 Jun 2016 22:18:36 -0700 Subject: [PATCH] search: Fix typeahead search on email address --- include/ajax.tickets.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/include/ajax.tickets.php b/include/ajax.tickets.php index 9b8afb978..57df9e013 100644 --- a/include/ajax.tickets.php +++ b/include/ajax.tickets.php @@ -46,7 +46,9 @@ class TicketsAjaxAPI extends AjaxController { ->values('user__default_email__address') ->annotate(array( 'number' => new SqlCode('null'), - 'tickets' => SqlAggregate::COUNT('ticket_id', true))) + 'tickets' => SqlAggregate::COUNT('ticket_id', true), + )) + ->order_by(SqlAggregate::SUM(new SqlCode('Z1.relevance')), QuerySet::DESC) ->limit($limit); $q = $_REQUEST['q']; @@ -55,18 +57,17 @@ class TicketsAjaxAPI extends AjaxController { return $this->encode(array()); global $ost; - $hits = $ost->searcher->find($q, $hits) - ->order_by(new SqlCode('__relevance__'), QuerySet::DESC); + $hits = $ost->searcher->find($q, $hits, false); if (preg_match('/\d{2,}[^*]/', $q, $T = array())) { $hits = Ticket::objects() ->values('user__default_email__address', 'number') ->annotate(array( 'tickets' => new SqlCode('1'), - '__relevance__' => new SqlCode(1) )) ->filter($visibility) ->filter(array('number__startswith' => $q)) + ->order_by('number') ->limit($limit) ->union($hits); } -- GitLab