From dcb7200453b53533dbdec1d1b1c57655fe68daea Mon Sep 17 00:00:00 2001 From: Alex Arnaud Date: Thu, 1 Oct 2020 15:01:02 +0000 Subject: [PATCH] Bug 26537: use QueryBuilder in unimarc_field_4XX plugin to make query Signed-off-by: Owen Leonard --- cataloguing/value_builder/unimarc_field_4XX.pl | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cataloguing/value_builder/unimarc_field_4XX.pl b/cataloguing/value_builder/unimarc_field_4XX.pl index 9462daff5ec..58b6bf6a0b4 100755 --- a/cataloguing/value_builder/unimarc_field_4XX.pl +++ b/cataloguing/value_builder/unimarc_field_4XX.pl @@ -35,6 +35,7 @@ use Koha::ItemTypes; use Koha::SearchEngine; use Koha::SearchEngine::Search; +use Koha::SearchEngine::QueryBuilder; sub plugin_parameters { my ( $dbh, $record, $tagslib, $i ) = @_; @@ -325,7 +326,10 @@ sub plugin { my $orderby; my $op = 'AND'; $search = 'kw:' . $search . " $op mc-itemtype:" . $itype if $itype; + my $limits = $itype ? ["mc-itype,phr:$itype"] : []; + my $builder = Koha::SearchEngine::QueryBuilder->new({index => $Koha::SearchEngine::BIBLIOS_INDEX}); my $searcher = Koha::SearchEngine::Search->new( { index => $Koha::SearchEngine::BIBLIOS_INDEX } ); + my ($builderror, $es_query)= $builder->build_query_compat( undef, [$search], ['kw'], $limits, ['relevance']); my ( $errors, $results, $total_hits ) = $searcher->simple_search_compat( $search, $startfrom * $resultsperpage, $resultsperpage ); @@ -417,7 +421,7 @@ sub plugin { if ( $total_hits < $from + $resultsperpage ) { $to = $total_hits; } else { - $to = $from + $resultsperpage; + $to = $startfrom * $resultsperpage + $resultsperpage ; } # my $link="/cgi-bin/koha/cataloguing/value_builder/unimarc4XX.pl?op=do_search&q=$search_desc&resultsperpage=$resultsperpage&startfrom=$startfrom&search=$search"; -- 2.39.5