From c7f10f30da5e739adcf72c6bd8664f404f61b20d Mon Sep 17 00:00:00 2001 From: Tomas Cohen Arazi Date: Mon, 7 Aug 2017 16:07:40 -0300 Subject: [PATCH] Bug 18624: Minor refactoring to ease testing Signed-off-by: Tomas Cohen Arazi --- Koha/SearchEngine/Elasticsearch/QueryBuilder.pm | 27 +++++++++++++------------ 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm b/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm index fbd4370..2fe9236 100644 --- a/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm +++ b/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm @@ -47,7 +47,7 @@ use Modern::Perl; use URI::Escape; use C4::Context; -use Data::Dumper; # TODO remove +use Koha::Exceptions; =head2 build_query @@ -409,6 +409,16 @@ appropriate search object. =cut +our $koha_to_index_name = { + mainmainentry => 'Heading-Main', + mainentry => 'Heading', + match => 'Match', + 'match-heading' => 'Match-heading', + 'see-from' => 'Match-heading-see-from', + thesaurus => 'Subject-heading-thesaurus', + any => '' +}; + sub build_authorities_query_compat { my ( $self, $marclist, $and_or, $excluding, $operator, $value, $authtypecode, $orderby ) @@ -418,24 +428,15 @@ sub build_authorities_query_compat { # extensible hash form that is understood by L. my @searches; - my %koha_to_index_name = ( - mainmainentry => 'Heading-Main', - mainentry => 'Heading', - match => 'Match', - 'match-heading' => 'Match-heading', - 'see-from' => 'Match-heading-see-from', - thesaurus => 'Subject-heading-thesaurus', - any => '', - ); - # Make sure everything exists foreach my $m (@$marclist) { - confess "Invalid marclist field provided: $m" unless exists $koha_to_index_name{$m}; + Koha::Exceptions::WrongParameter->throw("Invalid marclist field provided: $m") + unless exists $koha_to_index_name->{$m}; } for ( my $i = 0 ; $i < @$value ; $i++ ) { push @searches, { - where => $koha_to_index_name{$marclist->[$i]}, + where => $koha_to_index_name->{$marclist->[$i]}, operator => $operator->[$i], value => $value->[$i], }; -- 2.7.4