Bug 11489: in OPAC search, display "no results" when the only search result is suppressed
authorKyle M Hall <kyle@bywatersolutions.com>
Tue, 7 Jan 2014 17:19:37 +0000 (10:19 -0700)
committerGalen Charlton <gmc@esilibrary.com>
Sat, 19 Apr 2014 16:22:00 +0000 (16:22 +0000)
If hidelostitems is enabled, and the result of an opac search is a single
lost item, then the OPAC will display a 404 error, rather than a
"no results" screen.

Test Plan:
1) Catalog a record/item such that it is the only result for some search
   e.g. Give it the title 'zxcvb'
2) Enable hidelostitems
3) Mark this item as lost
4) Perform an OPAC search that should result in a redirect to this record
5) Notice you a redirected to a 404 error
6) Apply this patch
7) Repeat step 4
8) Note you new get a "No results found!" page instead

Signed-off-by: Christopher Brannon <cbrannon@cdalibrary.org>
Signed-off-by: Michot <nmichot@voila.fr>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
opac/opac-search.pl

index 617d67e..a8eb7d5 100755 (executable)
@@ -556,6 +556,7 @@ for (my $i=0;$i<@servers;$i++) {
             @newresults = searchResults('opac', $query_desc, $hits, $results_per_page, $offset, $scan,
                                         $results_hashref->{$server}->{"RECORDS"});
         }
+    $hits = 0 unless @newresults;
 
         foreach my $res (@newresults) {
 
@@ -610,7 +611,7 @@ for (my $i=0;$i<@servers;$i++) {
         }
 
         if ($results_hashref->{$server}->{"hits"}){
-            $total = $total + $results_hashref->{$server}->{"hits"};
+            $total = $total + $hits;
         }
 
         # Opac search history