aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/FixMyStreet/App/Controller/Report.pm
diff options
context:
space:
mode:
authorDave Arter <davea@mysociety.org>2016-10-19 13:51:19 +0100
committerMatthew Somerville <matthew-github@dracos.co.uk>2016-10-26 16:22:14 +0100
commit428466512607541a1d82de6e721439a0d0e7446c (patch)
tree97d4c9ba85670cbd4482ca16c2badb38398cb9b4 /perllib/FixMyStreet/App/Controller/Report.pm
parente1636f3c8cb837c3debe28da7532778493ebad54 (diff)
Redirect to correct cobrand when category changed.
Diffstat (limited to 'perllib/FixMyStreet/App/Controller/Report.pm')
-rw-r--r--perllib/FixMyStreet/App/Controller/Report.pm12
1 files changed, 11 insertions, 1 deletions
diff --git a/perllib/FixMyStreet/App/Controller/Report.pm b/perllib/FixMyStreet/App/Controller/Report.pm
index f69bdc8c0..73479c584 100644
--- a/perllib/FixMyStreet/App/Controller/Report.pm
+++ b/perllib/FixMyStreet/App/Controller/Report.pm
@@ -390,7 +390,17 @@ sub inspect : Private {
anonymous => 0,
} );
}
- $c->res->redirect( $c->uri_for( '/report', $problem->id ) );
+ # This problem might no longer be visible on the current cobrand,
+ # if its body has changed (e.g. by virtue of the category changing)
+ # so redirect to a cobrand where it can be seen if necessary
+ my $redirect_uri;
+ if ( $c->cobrand->is_council && !$c->cobrand->owns_problem($problem) ) {
+ $redirect_uri = $c->cobrand->base_url_for_report( $problem ) . $problem->url;
+ } else {
+ $redirect_uri = $c->uri_for( $problem->url );
+ }
+ $c->log->debug( "Redirecting to: " . $redirect_uri );
+ $c->res->redirect( $redirect_uri );
}
}
};