Refactoring: In Rückgabewert vom Paginated-DB-Helfer 'cur' in 'page' umbenennen
authorMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 23 Nov 2012 11:15:39 +0000 (12:15 +0100)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 23 Nov 2012 11:15:39 +0000 (12:15 +0100)
Dient Konsistenz der Eingangs- und Ausgangsparameter.

Dadurch entfällt auch das Hin- und Herbenennen im
Paginated-Controller-Helfer/im L-Plugin.

SL/Controller/Helper/Paginated.pm
SL/DB/Helper/Paginated.pm
SL/Template/Plugin/L.pm
templates/webpages/common/paginate.html

index 1683aad..15997b8 100644 (file)
@@ -61,16 +61,10 @@ sub get_current_paginate_params {
                         :     $spec->{PAGINATE_ARGS}            ? do { my $sub = $spec->{PAGINATE_ARGS}; %{ $self->$sub() } }
                         :                                         ();
   my $calculated_params = "SL::DB::Manager::$spec->{MODEL}"->paginate(%paginate_params, args => \%paginate_args);
-  %paginate_params      = (
-    page         => min($paginate_params{page}, $calculated_params->{max}),
-    per_page     => $paginate_params{per_page},
-    num_pages    => $calculated_params->{max},
-    common_pages => $calculated_params->{common},
-  );
 
-  # $::lxdebug->dump(0, "get_current_paginate_params: ", \%paginate_params);
+  # $::lxdebug->dump(0, "get_current_paginate_params: ", $calculated_params);
 
-  return %paginate_params;
+  return %{ $calculated_params };
 }
 
 sub disable_pagination {
index a0ad02c..27daffe 100644 (file)
@@ -17,12 +17,12 @@ sub paginate {
 
   $ret->{per_page}        = per_page($self, %params);
   $ret->{max}             = ceil($self->get_all_count(%args), $ret->{per_page}) || 1;
-  $ret->{cur}             = $page < 1 ? 1
+  $ret->{page}            = $page < 1 ? 1
                           : $page > $ret->{max} ? $ret->{max}
                           : $page;
-  $ret->{common}          = make_common_pages($ret->{cur}, $ret->{max});
+  $ret->{common}          = make_common_pages($ret->{page}, $ret->{max});
 
-  $params{args}{page}     = $ret->{cur};
+  $params{args}{page}     = $ret->{page};
   $params{args}{per_page} = $ret->{per_page};
   delete $params{args}{limit};
   delete $params{args}{offset};
index 95d2254..c590082 100644 (file)
@@ -689,11 +689,7 @@ sub paginate_controls {
   my %paginate_params = $controller->get_current_paginate_params;
 
   my %template_params = (
-    pages             => {
-      cur             => $paginate_params{page},
-      max             => $paginate_params{num_pages},
-      common          => $paginate_params{common_pages},
-    },
+    pages             => \%paginate_params,
     url_maker         => sub {
       my %url_params                                    = _hashify(@_);
       $url_params{ $paginate_spec->{FORM_PARAMS}->[0] } = delete $url_params{page};
index 0899729..c833904 100644 (file)
@@ -8,11 +8,11 @@
 [%- END %]
 [%- IF pages.max > 1 %]
 <div class='paginate'>
-[%- IF pages.cur > 1 %]<a class='paginate-prev' href='[% build_url(page=pages.cur - 1) %]'>&laquo; [% 'prev' | $T8 %]</a> [% ELSE %]<b>&laquo;</b> [% END %]
+[%- IF pages.page > 1 %]<a class='paginate-prev' href='[% build_url(page=pages.page - 1) %]'>&laquo; [% 'prev' | $T8 %]</a> [% ELSE %]<b>&laquo;</b> [% END %]
 [%- FOR p = pages.common %]
   [%- NEXT UNLESS p.visible %]
   [%- IF p.active %]<a class='paginate-page' href="[% build_url(page=p.page) %]">[% p.page %]</a> [% ELSE %]<b>[% p.page %]</b> [%- END %]
 [%- END %]
-[%- IF pages.cur < pages.max %]<a class='paginate-next' href='[% build_url(page=pages.cur + 1) %]'>[% 'next' | $T8 %] &raquo;</a>[% ELSE %]<b>&raquo;</b>[%- END %]
+[%- IF pages.page < pages.max %]<a class='paginate-next' href='[% build_url(page=pages.page + 1) %]'>[% 'next' | $T8 %] &raquo;</a>[% ELSE %]<b>&raquo;</b>[%- END %]
 </div>
 [%- END %]