diff options
author | Chris Mytton <chrismytton@gmail.com> | 2019-11-15 15:59:44 +0000 |
---|---|---|
committer | Chris Mytton <chrismytton@gmail.com> | 2019-11-27 13:41:58 +0000 |
commit | 7ce3a0a38967bd5a35b20b95c38c5471d44998e4 (patch) | |
tree | aac5adbb693b8e15c8cd8ec8c649646301888152 /web/js/map-mastermap.js | |
parent | 7ea719a848046c072472360c9d7f925721cead49 (diff) |
[Peterborough] Add OS MasterMap map tiles
This adds a new "MasterMap" map type which uses tiles from Tilma to
display MasterMap data.
Diffstat (limited to 'web/js/map-mastermap.js')
-rw-r--r-- | web/js/map-mastermap.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/web/js/map-mastermap.js b/web/js/map-mastermap.js new file mode 100644 index 000000000..d12a79bd0 --- /dev/null +++ b/web/js/map-mastermap.js @@ -0,0 +1,24 @@ +fixmystreet.maps.config = (function(original) { + return function(){ + original(); + fixmystreet.map_type = OpenLayers.Layer.MasterMap; + }; +})(fixmystreet.maps.config); + +OpenLayers.Layer.MasterMap = OpenLayers.Class(OpenLayers.Layer.BingUK, { + get_urls: function(bounds, z) { + if (z < 17) { + return OpenLayers.Layer.BingUK.prototype.get_urls.apply(this, arguments); + } + + var urls = []; + var servers = [ '', 'a.', 'b.', 'c.' ]; + var base = "//{S}tilma.mysociety.org/mastermap/${z}/${x}/${y}.png"; + for (var i=0; i < servers.length; i++) { + urls.push( base.replace('{S}', servers[i]) ); + } + return urls; + }, + + CLASS_NAME: "OpenLayers.Layer.MasterMap" +}); |