Obviously, Koha global pagination function could be improved. This patch
do something which belongs to this function. A CPAN module like
Data::Page could help or be an inspiration... 3.4?

There is also room for improvement in they way resultset are
constructed. The whole set is retrieved and just a subset is displayed.
It impacts performances for libraries with a great number of patrons.
The right solution would be:

  - to find the resultset size with SELECT COUNT(*)
  - to retrieved the exact subset with LIMIT and OFFSET SQL arguments
---
 members/member.pl |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/members/member.pl b/members/member.pl
index 58485b6..e92ab43 100755
--- a/members/member.pl
+++ b/members/member.pl
@@ -147,7 +147,8 @@ $template->param( letters => \...@letters );
 
 $template->param(
     paginationbar => pagination_bar(
-        $base_url,  int( $count / $resultsperpage ) + 1,
+        $base_url,
+        int( $count / $resultsperpage ) + ($count % $resultsperpage ? 1 : 0),
         $startfrom, 'startfrom'
     ),
     startfrom => $startfrom,
-- 
1.7.1

_______________________________________________
Koha-patches mailing list
Koha-patches@lists.koha.org
http://lists.koha.org/mailman/listinfo/koha-patches

Reply via email to