diff options
Diffstat (limited to 'web/rss.cgi')
-rwxr-xr-x | web/rss.cgi | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/web/rss.cgi b/web/rss.cgi index 63be21b3b..24e7a576f 100755 --- a/web/rss.cgi +++ b/web/rss.cgi @@ -6,7 +6,7 @@ # Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved. # Email: matthew@mysociety.org. WWW: http://www.mysociety.org # -# $Id: rss.cgi,v 1.32 2009-09-24 21:32:57 matthew Exp $ +# $Id: rss.cgi,v 1.33 2009-10-20 14:37:46 louise Exp $ use strict; use Error qw(:try); @@ -20,7 +20,8 @@ use mySociety::Gaze; sub main { my $q = shift; my $type = $q->param('type') || ''; - my $xsl = $q->{site} eq 'emptyhomes' ? '/xsl.eha.xsl' : '/xsl.xsl'; + my $cobrand = Page::get_cobrand($q); + my $xsl = Cobrand::feed_xsl($cobrand); my $out; if ($type eq 'local_problems') { $out = rss_local_problems($q); @@ -28,20 +29,20 @@ sub main { } elsif ($type eq 'new_updates') { my $id = $q->param('id'); my $qs = 'report/' . $id; - $out = mySociety::Alert::generate_rss($type, $xsl, $qs, [$id]); + $out = mySociety::Alert::generate_rss($type, $xsl, $qs, [$id], undef, $cobrand); } elsif ($type eq 'new_problems' || $type eq 'new_fixed_problems') { - $out = mySociety::Alert::generate_rss($type, $xsl, ''); + $out = mySociety::Alert::generate_rss($type, $xsl, '', undef, undef, $cobrand); } elsif ($type eq 'council_problems') { my $id = $q->param('id'); my $qs = '/'.$id; - $out = mySociety::Alert::generate_rss($type, $xsl, $qs, [$id]); + $out = mySociety::Alert::generate_rss($type, $xsl, $qs, [$id], undef, $cobrand); } elsif ($type eq 'area_problems') { my $id = $q->param('id'); my $va_info = mySociety::MaPit::get_voting_area_info($id); my $qs = '/'.$id; - $out = mySociety::Alert::generate_rss($type, $xsl, $qs, [$id], { NAME => $va_info->{name} }); + $out = mySociety::Alert::generate_rss($type, $xsl, $qs, [$id], { NAME => $va_info->{name} }, $cobrand); } elsif ($type eq 'all_problems') { - $out = mySociety::Alert::generate_rss($type, $xsl, ''); + $out = mySociety::Alert::generate_rss($type, $xsl, '', undef, undef, $cobrand); } else { my $base = mySociety::Config::get('BASE_URL'); print $q->redirect($base . '/alert'); @@ -62,6 +63,7 @@ sub rss_local_problems { my $y = $q->param('y'); my $lat = $q->param('lat'); my $lon = $q->param('lon'); + my $cobrand = Page::get_cobrand($q); my ($e, $n); if ($lat) { # In the UK, it'll never be 0 :) ($e, $n) = mySociety::GeoUtil::wgs84_to_national_grid($lat, $lon, 'G'); @@ -98,7 +100,8 @@ sub rss_local_problems { $d = mySociety::Gaze::get_radius_containing_population($lat, $lon, 200000); $d = int($d*10+0.5)/10; } - my $xsl = $q->{site} eq 'emptyhomes' ? '/xsl.eha.xsl' : '/xsl.xsl'; - return mySociety::Alert::generate_rss('local_problems', $xsl, $qs, [$e, $n, $d]); + + my $xsl = Cobrand::feed_xsl($cobrand); + return mySociety::Alert::generate_rss('local_problems', $xsl, $qs, [$e, $n, $d], undef, $cobrand); } |