From 5e11f970fcac2927052ebc60e6679a49f62743ef Mon Sep 17 00:00:00 2001 From: Dobrica Pavlinusic Date: Thu, 20 May 2010 22:42:36 +0200 Subject: [PATCH] tweak _data_items to work as noral Additional param will return all values, ignoring filters instead of looking in session for it --- lib/MojoFacets/Data.pm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/MojoFacets/Data.pm b/lib/MojoFacets/Data.pm index aea766d..d5be7d9 100644 --- a/lib/MojoFacets/Data.pm +++ b/lib/MojoFacets/Data.pm @@ -273,11 +273,11 @@ sub filter { sub _data_items { - my $self = shift; + my ( $self, $all ) = shift; my $path = $self->session('path') || $self->redirect_to( '/data/index' ); my $data = $self->_loaded( 'data' ); - return @{ $data->{items} } if defined $self->session('all'); + return @{ $data->{items} } if $all; my $filters = $self->_current_filters; my $filter_value; @@ -407,7 +407,9 @@ sub facet { my $facet; my $name = $self->param('name') || die "no name"; - foreach my $i ( $self->_data_items ) { + my $all = $self->_perm_scalar('all', 0); + + foreach my $i ( $self->_data_items($all) ) { if ( ! exists $i->{$name} ) { $facet->{ _missing }++; } elsif ( ref $i->{$name} eq 'ARRAY' ) { @@ -420,7 +422,6 @@ sub facet { # warn "# facet $name ",dump $facet; my $checked; - my $all = $self->_perm_scalar('all', 0); my @facet_names = $all ? keys %$facet : defined $filters->{$name} ? @{ $filters->{$name} } -- 2.20.1