Bugzilla – Attachment 82839 Details for
Bug 21405
Pagination in authorities search broken for Zebra and broken for 10000+ results in ES
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 21405 - Fix authorities pagination for Zebra and ES
Bug-21405---Fix-authorities-pagination-for-Zebra-a.patch (text/plain), 3.05 KB, created by
Ere Maijala
on 2018-12-04 14:13:35 UTC
(
hide
)
Description:
Bug 21405 - Fix authorities pagination for Zebra and ES
Filename:
MIME Type:
Creator:
Ere Maijala
Created:
2018-12-04 14:13:35 UTC
Size:
3.05 KB
patch
obsolete
>From 7725e4f95042681b967f593990c333d69dcbeb60 Mon Sep 17 00:00:00 2001 >From: Nick Clemens <nick@bywatersolutions.com> >Date: Mon, 3 Dec 2018 13:05:49 +0000 >Subject: [PATCH] Bug 21405 - Fix authorities pagination for Zebra and ES > >Bug 20261 introduced an error because search_auth_compat responded >differently for ES and Zebra, now bug 19365 fixed the underlying >difference. This patch restores previous code to fix pagination. > >Additionally we add a fix for 10000+ results in ES and remove a double >import of C4::Auth > >To test: > 1 - Perform an authorities search with 1+ pages using Zebra > 2 - Page through results, note you are only offseeting by 1 each time > 3 - Perform an authorities search with 10,000+ results in ES > 4 - Click on the last page and get an error > 5 - Apply patch > 6 - Retry Zebra search > 7 - Results should paginate correctly > 8 - Clicking on last page should return last results > 9 - Retry ES results >10 - Results should paginate correct >11 - Clicking on last page should return last results > >Signed-off-by: Ere Maijala <ere.maijala@helsinki.fi> >--- > authorities/authorities-home.pl | 19 ++++++++++++------- > 1 file changed, 12 insertions(+), 7 deletions(-) > >diff --git a/authorities/authorities-home.pl b/authorities/authorities-home.pl >index 3f400722c3..9eb342228e 100755 >--- a/authorities/authorities-home.pl >+++ b/authorities/authorities-home.pl >@@ -22,7 +22,7 @@ use warnings; > > use CGI qw ( -utf8 ); > use URI::Escape; >-use C4::Auth; >+use POSIX qw( ceil ); > > use C4::Context; > use C4::Auth; >@@ -86,6 +86,7 @@ if ( $op eq "do_search" ) { > > my $startfrom = $query->param('startfrom') || 1; > my $resultsperpage = $query->param('resultsperpage') || 20; >+ my $offset = ( $startfrom - 1 ) * $resultsperpage + 1; > > my $builder = Koha::SearchEngine::QueryBuilder->new( > { index => $Koha::SearchEngine::AUTHORITIES_INDEX } ); >@@ -96,7 +97,7 @@ if ( $op eq "do_search" ) { > [$value], $authtypecode, $orderby > ); > my ( $results, $total ) = $searcher->search_auth_compat( >- $search_query, $startfrom, $resultsperpage >+ $search_query, $offset, $resultsperpage > ); > > ( $template, $loggedinuser, $cookie ) = get_template_and_user( >@@ -180,15 +181,19 @@ if ( $op eq "do_search" ) { > > $template->param( result => $results ) if $results; > >+ my $max_result_window = $searcher->max_result_window; >+ my $hits_to_paginate = ($max_result_window && $max_result_window < $total) ? $max_result_window : $total; >+ > $template->param( > pagination_bar => pagination_bar( >- $base_url, int( $total / $resultsperpage ) + 1, >+ $base_url, ceil( $hits_to_paginate / $resultsperpage ), > $startfrom, 'startfrom' > ), >- total => $total, >- from => $from, >- to => $to, >- isEDITORS => $authtypecode eq 'EDITORS', >+ total => $total, >+ hits_to_paginate => $hits_to_paginate, >+ from => $from, >+ to => $to, >+ isEDITORS => $authtypecode eq 'EDITORS', > ); > > } >-- >2.17.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 21405
:
79948
|
80157
|
80158
|
80159
|
82824
|
82830
|
82838
|
82839
|
82960