diff options
Diffstat (limited to 'perllib/FixMyStreet/Cobrand/BathNES.pm')
-rw-r--r-- | perllib/FixMyStreet/Cobrand/BathNES.pm | 68 |
1 files changed, 24 insertions, 44 deletions
diff --git a/perllib/FixMyStreet/Cobrand/BathNES.pm b/perllib/FixMyStreet/Cobrand/BathNES.pm index 06095734b..e8e2c5427 100644 --- a/perllib/FixMyStreet/Cobrand/BathNES.pm +++ b/perllib/FixMyStreet/Cobrand/BathNES.pm @@ -90,14 +90,6 @@ sub send_questionnaires { 0 } sub default_map_zoom { 3 } -sub category_extra_hidden { - my ($self, $meta) = @_; - my $code = $meta->{code}; - # These two are used in the non-Open311 'Street light fault' category. - return 1 if $code eq 'unitid' || $code eq 'asset_details'; - return $self->SUPER::category_extra_hidden($meta); -} - sub available_permissions { my $self = shift; @@ -171,9 +163,8 @@ sub categories_restriction { # Do a manual prefetch of all staff users for contributed_by lookup sub _dashboard_user_lookup { my $self = shift; - my $c = $self->{c}; - my @user_ids = $c->model('DB::User')->search( + my @user_ids = FixMyStreet::DB->resultset('User')->search( { from_body => { '!=' => undef } }, { columns => [ 'id', 'email' ] })->all; @@ -182,23 +173,22 @@ sub _dashboard_user_lookup { } sub dashboard_export_updates_add_columns { - my $self = shift; - my $c = $self->{c}; + my ($self, $csv) = @_; - return unless $c->user->has_body_permission_to('export_extra_columns'); + return unless $csv->user->has_body_permission_to('export_extra_columns'); - push @{$c->stash->{csv}->{headers}}, "Staff User"; - push @{$c->stash->{csv}->{headers}}, "User Email"; - push @{$c->stash->{csv}->{columns}}, "staff_user"; - push @{$c->stash->{csv}->{columns}}, "user_email"; + $csv->add_csv_columns( + staff_user => 'Staff User', + user_email => 'User Email', + ); - $c->stash->{csv}->{objects} = $c->stash->{csv}->{objects}->search(undef, { + $csv->objects_attrs({ '+columns' => ['user.email'], join => 'user', }); my $user_lookup = $self->_dashboard_user_lookup; - $c->stash->{csv}->{extra_data} = sub { + $csv->csv_extra_data(sub { my $report = shift; my $staff_user = ''; @@ -210,38 +200,28 @@ sub dashboard_export_updates_add_columns { user_email => $report->user->email || '', staff_user => $staff_user, }; - }; + }); } sub dashboard_export_problems_add_columns { - my $self = shift; - my $c = $self->{c}; - - return unless $c->user->has_body_permission_to('export_extra_columns'); - - $c->stash->{csv}->{headers} = [ - @{ $c->stash->{csv}->{headers} }, - "User Email", - "User Phone", - "Staff User", - "Attribute Data", - ]; - - $c->stash->{csv}->{columns} = [ - @{ $c->stash->{csv}->{columns} }, - "user_email", - "user_phone", - "staff_user", - "attribute_data", - ]; - - $c->stash->{csv}->{objects} = $c->stash->{csv}->{objects}->search(undef, { + my ($self, $csv) = @_; + + return unless $csv->user->has_body_permission_to('export_extra_columns'); + + $csv->add_csv_columns( + user_email => 'User Email', + user_phone => 'User Phone', + staff_user => 'Staff User', + attribute_data => "Attribute Data", + ); + + $csv->objects_attrs({ '+columns' => ['user.email', 'user.phone'], join => 'user', }); my $user_lookup = $self->_dashboard_user_lookup; - $c->stash->{csv}->{extra_data} = sub { + $csv->csv_extra_data(sub { my $report = shift; my $staff_user = ''; @@ -255,7 +235,7 @@ sub dashboard_export_problems_add_columns { staff_user => $staff_user, attribute_data => $attribute_data, }; - }; + }); } 1; |