aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Somerville <matthew@cake.ukcod.org.uk>2010-04-14 11:26:29 +0100
committerMatthew Somerville <matthew@cake.ukcod.org.uk>2010-04-14 11:26:29 +0100
commit5d73f62f74c610f06f7335c5fd7ca331b030a203 (patch)
tree7346085030678e4da219ddc9b1cc646b481afe4b
parent913189c48ff7df53c3bad9da3e37d39406a3904d (diff)
Ward ONS codes also.
-rwxr-xr-xweb/reports.cgi13
1 files changed, 9 insertions, 4 deletions
diff --git a/web/reports.cgi b/web/reports.cgi
index b9b584635..58e08b6aa 100755
--- a/web/reports.cgi
+++ b/web/reports.cgi
@@ -32,9 +32,15 @@ sub main {
}
my ($one_council, $area_type, $area_name);
- if ($q_council =~ /^(\d\d)([a-z][a-z])?$/i) {
- $one_council = $q_council;
- my $va_info = mySociety::MaPit::get_voting_area_info($q_council);
+ if ($q_council =~ /^(\d\d[a-z]{2})[a-z]{2}$/i) {
+ my $va_info = mySociety::MaPit::get_voting_area_info(uc $q_council);
+ my $ward_name = $va_info->{name};
+ $va_info = mySociety::MaPit::get_voting_area_info($va_info->{parent_area_id});
+ my $council_name = $va_info->{name};
+ print $q->redirect($base_url . '/reports/' . Page::short_name($council_name) . '/' . Page::short_name($ward_name));
+ return;
+ } elsif ($q_council =~ /^(\d\d)([a-z][a-z])?$/i) {
+ my $va_info = mySociety::MaPit::get_voting_area_info(uc $q_council);
$area_name = $va_info->{name};
print $q->redirect($base_url . '/reports/' . Page::short_name($area_name));
return;
@@ -59,7 +65,6 @@ sub main {
return;
}
} elsif ($q_council =~ /^\d+$/) {
- $one_council = $q_council;
my $va_info = mySociety::MaPit::get_voting_area_info($q_council);
$area_name = $va_info->{name};
print $q->redirect($base_url . '/reports/' . Page::short_name($area_name));