Bug 14076: Do not use CGI->param in list context - opac-authorities-home.pl
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Fri, 12 Feb 2016 11:49:28 +0000 (11:49 +0000)
committerFrédéric Demians <f.demians@tamil.fr>
Wed, 27 Apr 2016 14:38:45 +0000 (16:38 +0200)
See bug 15809 for more info on why we should not use CGI->param in list
context.

Note: I have not found any places where several values for the same
params are passed to this script but, just in case, this patch won't
change this ability.

Test plan:
Do an authority search at the OPAC
Test with several values of the form.
Confirm that the results are always the same before and after this
patch.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Brendan Gallagher brendan@bywatersolutions.com
(cherry picked from commit 3fa2b10150a9ea2db2897be1246cba3785c55e55)
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
(cherry picked from commit 182838a54498b4a00a4077779458cf005f5ec444)
Signed-off-by: Frédéric Demians <f.demians@tamil.fr>

opac/opac-authorities-home.pl

index 54c1444..fc4e71b 100755 (executable)
@@ -59,12 +59,13 @@ foreach my $thisauthtype (
 }
 
 if ( $op eq "do_search" ) {
-    my @marclist = ($query->param('marclist'));
-    my @and_or = ($query->param('and_or'));
-    my @excluding = ($query->param('excluding'),);
-    my @operator = ($query->param('operator'));
+    my @marclist = $query->multi_param('marclist');
+    my @and_or = $query->multi_param('and_or');
+    my @excluding = $query->multi_param('excluding');
+    my @operator = $query->multi_param('operator');
     my $orderby = $query->param('orderby');
-    my @value = ($query->param('value') || "",);
+    my @value = $query->multi_param('value');
+    $value[0] ||= q||;
 
     $resultsperpage = $query->param('resultsperpage');
     $resultsperpage = 20 if ( !defined $resultsperpage );