From 2e0573eccc1b16915059be85b613885fb23266ee Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Fri, 12 Feb 2021 19:25:10 +0000 Subject: [PATCH] Bug 27680: Allow traditional multi-params to work This patch allows the preceeding test to pass. Strictly, we want a comma delimited string for our _order_by parameter, but we cannot easily block a traditional multi-passed parameter. As such the 'nice' thing to do is handle it when such a thing is passed as it will pass through validation regardless. --- Koha/REST/Plugin/Query.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Koha/REST/Plugin/Query.pm b/Koha/REST/Plugin/Query.pm index c7ab65dc5a..93ce2c2c49 100644 --- a/Koha/REST/Plugin/Query.pm +++ b/Koha/REST/Plugin/Query.pm @@ -92,7 +92,7 @@ Generates the DBIC order_by attributes based on I<$params>, and merges into I<$a if ( defined $args->{params}->{_order_by} ) { my $order_by = $args->{params}->{_order_by}; - $order_by = [ split(/,/, $order_by) ] if ( index(',',$order_by) == -1); + $order_by = [ split(/,/, $order_by) ] if ( !reftype($order_by) && index(',',$order_by) == -1); if ( reftype($order_by) and reftype($order_by) eq 'ARRAY' ) { my @order_by = map { _build_order_atom({ string => $_, result_set => $result_set }) } @{ $order_by }; -- 2.20.1