From e5cc1e78fd74ab24c43f4cac57454b94791fce76 Mon Sep 17 00:00:00 2001
From: Robin Sheat <robin@catalyst.net.nz>
Date: Fri, 13 Aug 2010 16:15:21 +1200
Subject: [PATCH] [SIGNED-OFF] Bug 4852 - rewrite the query to include limits if using ccl=
Content-Type: text/plain; charset="utf-8"


Signed-off-by: Jared Camins-Esakov <jcamins@bywatersolutions.com>
---
 C4/Search.pm |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/C4/Search.pm b/C4/Search.pm
index a469948..45ebb24 100644
--- a/C4/Search.pm
+++ b/C4/Search.pm
@@ -1043,7 +1043,13 @@ sub buildQuery {
 # for handling ccl, cql, pqf queries in diagnostic mode, skip the rest of the steps
 # DIAGNOSTIC ONLY!!
     if ( $query =~ /^ccl=/ ) {
-        return ( undef, $', $', "q=ccl=$'", $', '', '', '', '', 'ccl' );
+        my $q=$';
+        # This is needed otherwise ccl= and &limit won't work together, and
+        # this happens when selecting a subject on the opac-detail page
+        if (@limits) {
+            $q .= ' and '.join(' and ', @limits);
+        }
+        return ( undef, $q, $q, "q=ccl=$q", $q, '', '', '', '', 'ccl' );
     }
     if ( $query =~ /^cql=/ ) {
         return ( undef, $', $', "q=cql=$'", $', '', '', '', '', 'cql' );
-- 
1.7.2.3