]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/leaflet.map.js
Merge remote-tracking branch 'openstreetmap/pull/954'
[rails.git] / app / assets / javascripts / leaflet.map.js
index d60f3b2f683737dce247ee64b2a29bb9e6fa5af9..58360bbec57513bbd738db621ab79bca00008cd2 100644 (file)
@@ -170,6 +170,24 @@ L.OSM.Map = L.Map.extend({
     return str;
   },
 
+  getGeoUri: function(marker) {
+    var precision = OSM.zoomPrecision(this.getZoom()),
+        latLng,
+        params = {};
+
+    if (marker && this.hasLayer(marker)) {
+      latLng = marker.getLatLng().wrap();
+    } else {
+      latLng = this.getCenter();
+    }
+
+    params.lat = latLng.lat.toFixed(precision);
+    params.lon = latLng.lng.toFixed(precision);
+    params.zoom = this.getZoom();
+
+    return 'geo:' + params.lat + ',' + params.lon + '?z=' + params.zoom;
+  },
+
   addObject: function(object, callback) {
     var objectStyle = {
       color: "#FF6200",
@@ -275,7 +293,7 @@ L.extend(L.Icon.Default.prototype, {
   }
 });
 
-function getUserIcon(url) {
+OSM.getUserIcon = function (url) {
   return L.icon({
     iconUrl: url || OSM.MARKER_RED,
     iconSize: [25, 41],
@@ -284,4 +302,4 @@ function getUserIcon(url) {
     shadowUrl: OSM.MARKER_SHADOW,
     shadowSize: [41, 41]
   });
-}
+};