Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision ccacef74

Von Moritz Bunkus vor mehr als 12 Jahren hinzugefügt

  • ID ccacef74f97842c0297a735fe7d81987adb5e6d6
  • Vorgänger 2fc8536b
  • Nachfolger eb06dc40

Paginated-Controller-Helfer: Sortier-Spec nicht auf Klassenebene cachen

Unterschiede anzeigen:

SL/Controller/Helper/Paginated.pm
use constant PRIV => '__paginatedhelper_priv';
my $controller_paginate_spec;
my %controller_paginate_spec;
sub make_paginated {
my ($class, %specs) = @_;
......
$specs{ONLY} = [ $specs{ONLY} ] if !ref $specs{ONLY};
$specs{ONLY_MAP} = @{ $specs{ONLY} } ? { map { ($_ => 1) } @{ $specs{ONLY} } } : { '__ALL__' => 1 };
$controller_paginate_spec = \%specs;
$controller_paginate_spec{$class} = \%specs;
my %hook_params = @{ $specs{ONLY} } ? ( only => $specs{ONLY} ) : ();
$class->run_before('_save_current_paginate_params', %hook_params);
......
sub get_paginate_spec {
my ($class_or_self) = @_;
return $controller_paginate_spec;
return $controller_paginate_spec{ref($class_or_self) || $class_or_self};
}
sub get_current_paginate_params {

Auch abrufbar als: Unified diff