From c1c47b235a8668527acc1954051c50fe19804e97 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Mon, 2 Jul 2012 23:48:30 -0700 Subject: [PATCH] fix ticket searches, RT#13852 --- rt/lib/RT/Tickets.pm | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/rt/lib/RT/Tickets.pm b/rt/lib/RT/Tickets.pm index 4e2415b37..bfc8e568c 100755 --- a/rt/lib/RT/Tickets.pm +++ b/rt/lib/RT/Tickets.pm @@ -2229,6 +2229,7 @@ sub _FreesideFieldLimit { # if it's compound, create a join from cust_main or cust_svc to that # table, using custnum or svcnum, and Limit on that table instead. + my @_SQLLimit = (); foreach my $a (@alias) { if ( $table2 ) { $a = $self->Join( @@ -2258,7 +2259,8 @@ sub _FreesideFieldLimit { # will produce a subclause: "cust_main_1.custnum IS NOT NULL OR # cust_main_2.custnum IS NOT NULL" (or "IS NULL AND..." for a negative # query). - $self->_SQLLimit( + #$self->_SQLLimit( + push @_SQLLimit, { %rest, ALIAS => $a, FIELD => $pkey, @@ -2267,8 +2269,15 @@ sub _FreesideFieldLimit { QUOTEVALUE => 0, ENTRYAGGREGATOR => $is_negative ? 'AND' : 'OR', SUBCLAUSE => 'fs_limit', - ); + }; + } + + $self->_OpenParen; + foreach my $_SQLLimit (@_SQLLimit) { + $self->_SQLLimit( %$_SQLLimit); } + $self->_CloseParen; + } #Freeside -- 2.11.0