aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/FixMyStreet
diff options
context:
space:
mode:
Diffstat (limited to 'perllib/FixMyStreet')
-rw-r--r--perllib/FixMyStreet/App/Controller/Report.pm12
-rw-r--r--perllib/FixMyStreet/Roles/ContactExtra.pm11
2 files changed, 18 insertions, 5 deletions
diff --git a/perllib/FixMyStreet/App/Controller/Report.pm b/perllib/FixMyStreet/App/Controller/Report.pm
index 190687d41..fde28dcbe 100644
--- a/perllib/FixMyStreet/App/Controller/Report.pm
+++ b/perllib/FixMyStreet/App/Controller/Report.pm
@@ -375,10 +375,16 @@ sub inspect : Private {
$c->forward('/admin/reports/categories_for_point');
$c->stash->{report_meta} = { map { 'x' . $_->{name} => $_ } @{ $c->stash->{problem}->get_extra_fields() } };
- if ($c->cobrand->can('council_area_id')) {
- my $priorities_by_category = FixMyStreet::App->model('DB::ResponsePriority')->by_categories($c->cobrand->council_area_id, @{$c->stash->{contacts}});
+ if ($c->cobrand->can('body')) {
+ my $priorities_by_category = FixMyStreet::App->model('DB::ResponsePriority')->by_categories(
+ $c->stash->{contacts},
+ body_id => $c->cobrand->body->id
+ );
$c->stash->{priorities_by_category} = $priorities_by_category;
- my $templates_by_category = FixMyStreet::App->model('DB::ResponseTemplate')->by_categories($c->cobrand->council_area_id, @{$c->stash->{contacts}});
+ my $templates_by_category = FixMyStreet::App->model('DB::ResponseTemplate')->by_categories(
+ $c->stash->{contacts},
+ body_id => $c->cobrand->body->id
+ );
$c->stash->{templates_by_category} = $templates_by_category;
}
diff --git a/perllib/FixMyStreet/Roles/ContactExtra.pm b/perllib/FixMyStreet/Roles/ContactExtra.pm
index 55c055d99..e78d9b53f 100644
--- a/perllib/FixMyStreet/Roles/ContactExtra.pm
+++ b/perllib/FixMyStreet/Roles/ContactExtra.pm
@@ -25,8 +25,15 @@ sub for_bodies {
}
sub by_categories {
- my ($rs, $area_id, @contacts) = @_;
- my %body_ids = map { $_->body_id => 1 } FixMyStreet::DB->resultset('BodyArea')->search({ area_id => $area_id });
+ my ($rs, $contacts, %params) = @_;
+
+ my %body_ids = ();
+ if ( $params{body_id} ) {
+ %body_ids = ( $params{body_id} => 1 );
+ } else {
+ %body_ids = map { $_->body_id => 1 } FixMyStreet::DB->resultset('BodyArea')->search({ area_id => $params{area_id} });
+ }
+ my @contacts = @$contacts;
my @body_ids = keys %body_ids;
my %extras = ();
my @results = $rs->for_bodies(\@body_ids, undef);