diff options
author | Dave Whiteland <dave@mysociety.org> | 2012-06-25 14:33:57 +0100 |
---|---|---|
committer | Dave Whiteland <dave@mysociety.org> | 2012-06-25 14:33:57 +0100 |
commit | f9fe02f91ac72ea2954ee68a5f32d96a237fcd67 (patch) | |
tree | f91d63ab3d6b9cd3555587090a541c870ecd3363 /phonegap/www/js/map-streetview.js | |
parent | 67da8efc720d2d0bd22bd9fe8655b7e983b35bb4 (diff) | |
parent | 45b3040884d7089e7d8c6f4acccd657b91c92a04 (diff) |
Merge branch 'master' into fmb-read-only
Conflicts:
.gitignore
bin/make_css
perllib/FixMyStreet/Cobrand/FixMyStreet.pm
Diffstat (limited to 'phonegap/www/js/map-streetview.js')
-rw-r--r-- | phonegap/www/js/map-streetview.js | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/phonegap/www/js/map-streetview.js b/phonegap/www/js/map-streetview.js new file mode 100644 index 000000000..b1ba3664d --- /dev/null +++ b/phonegap/www/js/map-streetview.js @@ -0,0 +1,76 @@ +function set_map_config(perm) { + fixmystreet.controls = [ + new OpenLayers.Control.ArgParser(), + //new OpenLayers.Control.LayerSwitcher(), + new OpenLayers.Control.Navigation(), + new OpenLayers.Control.Permalink(), + new OpenLayers.Control.PanZoomFMS() + ]; + fixmystreet.map_type = OpenLayers.Layer.StreetView; +} + +// http://os.openstreetmap.org/openlayers/OS.js (added one line) + +/** + * Namespace: Util.OS + */ +OpenLayers.Util.OS = {}; + +/** + * Constant: MISSING_TILE_URL + * {String} URL of image to display for missing tiles + */ +OpenLayers.Util.OS.MISSING_TILE_URL = "http://openstreetmap.org/openlayers/img/404.png"; + +/** + * Property: originalOnImageLoadError + * {Function} Original onImageLoadError function. + */ +OpenLayers.Util.OS.originalOnImageLoadError = OpenLayers.Util.onImageLoadError; + +/** + * Function: onImageLoadError + */ +OpenLayers.Util.onImageLoadError = function() { + OpenLayers.Util.OS.originalOnImageLoadError(); +}; + +/** + * @requires OpenLayers/Layer/XYZ.js + * + * Class: OpenLayers.Layer.StreetView + * + * Inherits from: + * - <OpenLayers.Layer.XYZ> + */ +OpenLayers.Layer.StreetView = OpenLayers.Class(OpenLayers.Layer.XYZ, { + attribution: 'Map contains Ordnance Survey data © Crown copyright and database right 2010.', + + /** + * Constructor: OpenLayers.Layer.StreetView + * + * Parameters: + * name - {String} + * url - {String} + * options - {Object} Hashtable of extra options to tag onto the layer + */ + initialize: function(name, options) { + var url = [ + "http://a.os.openstreetmap.org/sv/${z}/${x}/${y}.png", + "http://b.os.openstreetmap.org/sv/${z}/${x}/${y}.png", + "http://c.os.openstreetmap.org/sv/${z}/${x}/${y}.png" + ]; + options = OpenLayers.Util.extend({ + /* Below line added to OSM's file in order to allow minimum zoom level */ + maxResolution: 156543.0339/Math.pow(2, options.zoomOffset || 0), + numZoomLevels: 18, + transitionEffect: "resize", + sphericalMercator: true, + attribution: "Contains Ordnance Survey data © Crown copyright and database right 2010" + }, options); + var newArguments = [name, url, options]; + OpenLayers.Layer.XYZ.prototype.initialize.apply(this, newArguments); + }, + + CLASS_NAME: "OpenLayers.Layer.StreetView" +}); |