From 54b98da6afae73d4d1a4596ad78e1766c6ffd3a6 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Mon, 25 Nov 2019 13:35:25 +0100 Subject: [PATCH] Bug 23970: Search by "publication date" only works if used in first field The changes made in the following commit: commit 0d2e83bca5b91376e9262b6cb0b993f09b919018 Bug 14636: Item search - fix search and sort by publication date for MARC21 was put at the wrong place. It was inside a "if $i == 1" test that impacts the first field only. Test plan: 0/ Use a MARC21 installation 1/ Search items by publication date, use twice the field using different values. For instance: publication date: 2005 OR publication date: 2006 => Without this patch you only get results for 2005 => With this patch applied you get results for both years. --- catalogue/itemsearch.pl | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/catalogue/itemsearch.pl b/catalogue/itemsearch.pl index 090192e231..4cb76d8b4e 100755 --- a/catalogue/itemsearch.pl +++ b/catalogue/itemsearch.pl @@ -143,10 +143,11 @@ if (scalar keys %params > 0) { my $q = shift @q; my $op = shift @op; if (defined $q and $q ne '') { + if (C4::Context->preference("marcflavour") ne "UNIMARC" && $field eq 'publicationyear') { + $field = 'copyrightdate'; + } + if ($i == 0) { - if (C4::Context->preference("marcflavour") ne "UNIMARC" && $field eq 'publicationyear') { - $field = 'copyrightdate'; - } $f = { field => $field, query => $q, -- 2.11.0