diff options
-rw-r--r-- | perllib/FixMyStreet/Map/OSM.pm | 4 | ||||
-rwxr-xr-x | web-admin/index.cgi | 2 | ||||
-rwxr-xr-x | web/index.cgi | 2 | ||||
-rw-r--r-- | web/js/map-OpenStreetMap.js | 13 |
4 files changed, 19 insertions, 2 deletions
diff --git a/perllib/FixMyStreet/Map/OSM.pm b/perllib/FixMyStreet/Map/OSM.pm index cd69762b7..0db09b928 100644 --- a/perllib/FixMyStreet/Map/OSM.pm +++ b/perllib/FixMyStreet/Map/OSM.pm @@ -30,8 +30,11 @@ sub display_map { $params{pre} ||= ''; $params{post} ||= ''; + my @pins; foreach my $pin (@{$params{pins}}) { + push @pins, "[ $pin->[0], $pin->[1], '$pin->[2]' ]"; } + my $pins = join(",\n", @pins); my $out = FixMyStreet::Map::header($q, $params{type}); my $copyright = _('Map © <a href="http://www.openstreetmap.org/">OpenStreetMap</a> and contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>'); @@ -42,6 +45,7 @@ sub display_map { var fixmystreet = { 'latitude': $params{latitude}, 'longitude': $params{longitude}, + 'pins': [ $pins ], 'map_type': OpenLayers.Layer.OSM.Mapnik } </script> diff --git a/web-admin/index.cgi b/web-admin/index.cgi index b2322cda3..72bcead6f 100755 --- a/web-admin/index.cgi +++ b/web-admin/index.cgi @@ -216,7 +216,7 @@ sub admin_councils_list ($) { if $areas->{$_}->{parent_area}; push @li, $q->li($q->a({ href => NewURL($q, area_id => $_, page => 'councilcontacts') }, - encode_utf8($areas->{$_}->{name})) . encode_utf8($parent) . + encode_utf8($areas->{$_}->{name})) . encode_utf8($parent) . ' ' . ($bci_info->{$_} && $q->{site} ne 'emptyhomes' ? $bci_info->{$_}->{c} . ' addresses' : '')); diff --git a/web/index.cgi b/web/index.cgi index 7c8ecaded..098602e5d 100755 --- a/web/index.cgi +++ b/web/index.cgi @@ -524,7 +524,7 @@ sub display_form { # Let cobrand do a check my ($success, $error_msg) = Cobrand::council_check($cobrand, { all_councils => $all_councils }, $q, 'submit_problem'); - if (!$success){ + if (!$success) { return front_page($q, $error_msg); } diff --git a/web/js/map-OpenStreetMap.js b/web/js/map-OpenStreetMap.js index 2c459392e..0caa32b38 100644 --- a/web/js/map-OpenStreetMap.js +++ b/web/js/map-OpenStreetMap.js @@ -24,6 +24,19 @@ YAHOO.util.Event.onContentReady('map', function() { var click = new OpenLayers.Control.Click(); fixmystreet.map.addControl(click); click.activate(); + + var markers = new OpenLayers.Layer.Markers("Markers"); + var cols = { 'red':'R', 'green':'G', 'blue':'B', 'purple':'P' }; + for (var i=0; i<fixmystreet.pins.length; i++) { + var pin = fixmystreet.pins[i]; + var src = '/i/pin' + cols[pin[2]] + '.gif'; + var size = new OpenLayers.Size(32, 59); + var offset = new OpenLayers.Pixel(-(size.w/2), -size.h); + var icon = new OpenLayers.Icon(src, size, offset); + markers.addMarker(new OpenLayers.Marker(new OpenLayers.LonLat(pin[1],pin[0]), icon)); + } + + fixmystreet.map.addLayer(markers); }); OpenLayers.Control.Click = OpenLayers.Class(OpenLayers.Control, { |