X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/d5cb059bfa6c56fb74bf2a89c5625cb0b442e48e..fa7a37a2e2d294b1dfe6ef5b89e5acb0f8c4eb3b:/SL/Controller/Helper/GetModels/Paginated.pm diff --git a/SL/Controller/Helper/GetModels/Paginated.pm b/SL/Controller/Helper/GetModels/Paginated.pm index 7a6b80b0c..871f4b5c1 100644 --- a/SL/Controller/Helper/GetModels/Paginated.pm +++ b/SL/Controller/Helper/GetModels/Paginated.pm @@ -20,7 +20,6 @@ sub init { $self->get_models->register_handlers( callback => sub { shift; $self->_callback_handler_for_paginated(@_) }, - get_models => sub { shift; $self->_get_models_handler_for_paginated(@_) }, ); # $::lxdebug->dump(0, "CONSPEC", \%specs); @@ -51,23 +50,26 @@ sub read_params { sub finalize { my ($self, %args) = @_; -# return () unless $self->is_enabled; - my %paginate_params = $self->read_params; - # try to use Filtered if available and nothing else is configured, but don't - # blow up if the controller does not use Filtered - my %paginate_args = ref($self->paginate_args) eq 'CODE' ? %{ $self->paginate_args->($self) } - : $self->paginate_args eq '__FILTER__' - && $self->get_models->filtered ? $self->get_models->filtered->read_params - : $self->paginate_args ne '__FILTER__' ? do { my $sub = $self->paginate_args; %{ $self->get_models->controller->$sub() } } - : (); + if ($self->is_enabled) { + my %paginate_params = $self->read_params; - %args = $self->merge_args(\%args, \%paginate_args); + # try to use Filtered if available and nothing else is configured, but don't + # blow up if the controller does not use Filtered + my %paginate_args = ref($self->paginate_args) eq 'CODE' ? %{ $self->paginate_args->($self) } + : $self->paginate_args eq '__FILTER__' + && $self->get_models->filtered ? $self->get_models->filtered->read_params + : $self->paginate_args ne '__FILTER__' ? do { my $sub = $self->paginate_args; %{ $self->get_models->controller->$sub() } } + : (); - my $calculated_params = $self->get_models->manager->paginate(%paginate_params, args => \%args); + %args = $self->merge_args(\%args, \%paginate_args); + + my $calculated_params = $self->get_models->manager->paginate(%paginate_params, args => \%args); + + $self->calculated_params($calculated_params); + } $self->paginated_args(\%args); - $self->calculated_params($calculated_params); return %args; }