aboutsummaryrefslogtreecommitdiffstats
path: root/phonegap/www/js/map-streetview.js
diff options
context:
space:
mode:
authorDave Whiteland <dave@mysociety.org>2012-06-25 14:33:57 +0100
committerDave Whiteland <dave@mysociety.org>2012-06-25 14:33:57 +0100
commitf9fe02f91ac72ea2954ee68a5f32d96a237fcd67 (patch)
treef91d63ab3d6b9cd3555587090a541c870ecd3363 /phonegap/www/js/map-streetview.js
parent67da8efc720d2d0bd22bd9fe8655b7e983b35bb4 (diff)
parent45b3040884d7089e7d8c6f4acccd657b91c92a04 (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.js76
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 &copy; 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"
+});