aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/FixMyStreet/Map/Bing.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perllib/FixMyStreet/Map/Bing.pm')
-rw-r--r--perllib/FixMyStreet/Map/Bing.pm15
1 files changed, 12 insertions, 3 deletions
diff --git a/perllib/FixMyStreet/Map/Bing.pm b/perllib/FixMyStreet/Map/Bing.pm
index 97a0d229f..4463b4ed2 100644
--- a/perllib/FixMyStreet/Map/Bing.pm
+++ b/perllib/FixMyStreet/Map/Bing.pm
@@ -8,6 +8,8 @@ use strict;
sub map_type { '' }
+sub map_template { 'bing' }
+
sub map_javascript { [
'/vendor/OpenLayers/OpenLayers.fixmystreet.js',
'/js/map-OpenLayers.js',
@@ -29,14 +31,21 @@ sub get_quadkey {
return $key;
}
-sub map_tile_base {
- '', "//ecn.%s.tiles.virtualearth.net/tiles/r%s.png?g=6570";
+sub display_map {
+ my ($self, $c, %params) = @_;
+
+ $params{aerial} = $c->get_param("aerial") ? 1 : 0;
+
+ $self->SUPER::display_map($c, %params);
}
+my $road_base = '//t%s.ssl.ak.dynamic.tiles.virtualearth.net/comp/ch/%s?mkt=en-US&it=G,L&src=t&shading=hill&og=969&n=z';
+my $aerial_base = '//t%s.ssl.ak.dynamic.tiles.virtualearth.net/comp/ch/%s?mkt=en-US&it=A,G,L&src=t&og=969&n=z';
+
sub map_tiles {
my ( $self, %params ) = @_;
my ( $x, $y, $z ) = ( $params{x_tile}, $params{y_tile}, $params{zoom_act} );
- my ($tile_sep, $tile_base) = $self->map_tile_base;
+ my $tile_base = $params{aerial} ? $aerial_base : $road_base;
return [
sprintf($tile_base, 't0', $self->get_quadkey($x-1, $y-1, $z)),
sprintf($tile_base, 't1', $self->get_quadkey($x, $y-1, $z)),