diff options
author | Matthew Somerville <matthew@fury.ukcod.org.uk> | 2011-03-09 22:21:04 +0000 |
---|---|---|
committer | Matthew Somerville <matthew@fury.ukcod.org.uk> | 2011-03-09 22:21:04 +0000 |
commit | c56f704e998b418aa3f11d5e3b6b86d6c7ce40e6 (patch) | |
tree | 4c23b1830e9b6cb35d71413a5387dc6fe367bfad /perllib/FixMyStreet/Map/OSM | |
parent | 6f5bebbb14ec2291ef6b3621f24acffeb9d70a98 (diff) |
Fixes to other map types to work with lat/lon. Split OSM JavaScript into core OpenLayers bits and OSM config bit.
Diffstat (limited to 'perllib/FixMyStreet/Map/OSM')
-rw-r--r-- | perllib/FixMyStreet/Map/OSM/CycleMap.pm | 13 | ||||
-rw-r--r-- | perllib/FixMyStreet/Map/OSM/StreetView.pm | 13 |
2 files changed, 20 insertions, 6 deletions
diff --git a/perllib/FixMyStreet/Map/OSM/CycleMap.pm b/perllib/FixMyStreet/Map/OSM/CycleMap.pm index 87884d459..0a6e216c8 100644 --- a/perllib/FixMyStreet/Map/OSM/CycleMap.pm +++ b/perllib/FixMyStreet/Map/OSM/CycleMap.pm @@ -14,8 +14,8 @@ use mySociety::Web qw(ent); sub header_js { return ' <script type="text/javascript" src="http://openlayers.org/api/OpenLayers.js"></script> +<script type="text/javascript" src="/js/map-OpenLayers.js"></script> <script type="text/javascript" src="/js/map-OpenStreetMap.js"></script> -<script type="text/javascript" src="/js/OpenLayers.Projection.OrdnanceSurvey.js"></script> '; } @@ -31,16 +31,23 @@ sub display_map { $params{pre} ||= ''; $params{post} ||= ''; + my @pins; foreach my $pin (@{$params{pins}}) { + $pin->[3] ||= ''; + push @pins, "[ $pin->[0], $pin->[1], '$pin->[2]', '$pin->[3]' ]"; } + my $pins_js = join(",\n", @pins); my $out = FixMyStreet::Map::header($q, $params{type}); my $copyright = _('Map © <a id="osm_link" href="http://www.openstreetmap.org/">OpenStreetMap</a> and contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>'); $out .= <<EOF; +<input type="hidden" name="latitude" id="fixmystreet.latitude" value="$params{latitude}"> +<input type="hidden" name="longitude" id="fixmystreet.longitude" value="$params{longitude}"> <script type="text/javascript"> var fixmystreet = { - 'easting': $params{easting}, - 'northing': $params{northing}, + 'latitude': $params{latitude}, + 'longitude': $params{longitude}, + 'pins': [ $pins_js ], 'map_type': OpenLayers.Layer.OSM.CycleMap } </script> diff --git a/perllib/FixMyStreet/Map/OSM/StreetView.pm b/perllib/FixMyStreet/Map/OSM/StreetView.pm index 08f677d25..c0c2a8504 100644 --- a/perllib/FixMyStreet/Map/OSM/StreetView.pm +++ b/perllib/FixMyStreet/Map/OSM/StreetView.pm @@ -14,8 +14,8 @@ use mySociety::Web qw(ent); sub header_js { return ' <script type="text/javascript" src="http://openlayers.org/api/OpenLayers.js"></script> +<script type="text/javascript" src="/js/map-OpenLayers.js"></script> <script type="text/javascript" src="/js/map-streetview.js"></script> -<script type="text/javascript" src="/js/OpenLayers.Projection.OrdnanceSurvey.js"></script> '; } @@ -31,16 +31,23 @@ sub display_map { $params{pre} ||= ''; $params{post} ||= ''; + my @pins; foreach my $pin (@{$params{pins}}) { + $pin->[3] ||= ''; + push @pins, "[ $pin->[0], $pin->[1], '$pin->[2]', '$pin->[3]' ]"; } + my $pins_js = join(",\n", @pins); my $out = FixMyStreet::Map::header($q, $params{type}); my $copyright = _('Map contains Ordnance Survey data © Crown copyright and database right 2010.'); $out .= <<EOF; +<input type="hidden" name="latitude" id="fixmystreet.latitude" value="$params{latitude}"> +<input type="hidden" name="longitude" id="fixmystreet.longitude" value="$params{longitude}"> <script type="text/javascript"> var fixmystreet = { - 'easting': $params{easting}, - 'northing': $params{northing} + 'latitude': $params{latitude}, + 'longitude': $params{longitude}, + 'pins': [ $pins_js ] } </script> <div id="map_box"> |