]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/map.js.erb
Add leaflet-locate control, invisible currently.
[rails.git] / app / assets / javascripts / map.js.erb
index 2354593ff9ed368d34d125e06c2ef76557ec6236..80e77f26ca7af5e5969c8bd4200962283e0a14f6 100644 (file)
@@ -17,7 +17,7 @@ var layers;
 var objectLayer;
 var objectLoader;
 
 var objectLayer;
 var objectLoader;
 
-function createMap(divName, options) {
+function createMap(divName, options, moreOptions) {
   if (!layers) {
     layers = [
       {
   if (!layers) {
     layers = [
       {
@@ -51,6 +51,8 @@ function createMap(divName, options) {
     ];
   }
 
     ];
   }
 
+  moreOptions = moreOptions || {};
+
   options = $.extend({zoomControl: true, panZoomControl: true, layerControl: true}, options);
 
   map = L.map(divName, $.extend({}, options, {panControl: false, zoomsliderControl: false, maxZoom: 18}));
   options = $.extend({zoomControl: true, panZoomControl: true, layerControl: true}, options);
 
   map = L.map(divName, $.extend({}, options, {panControl: false, zoomsliderControl: false, maxZoom: 18}));
@@ -67,6 +69,13 @@ function createMap(divName, options) {
     map.layersControl = layersControl;
   }
 
     map.layersControl = layersControl;
   }
 
+  if (moreOptions.locateControl) {
+    var loc = L.control.locate({
+        position: 'topright'
+    });
+    loc.addTo(map);
+  }
+
   for (var i = 0; i < layers.length; i++) {
     layers[i].layer = new (layers[i].klass)(layers[i]);
     layersControl.addBaseLayer(layers[i].layer, layers[i].name);
   for (var i = 0; i < layers.length; i++) {
     layers[i].layer = new (layers[i].klass)(layers[i]);
     layersControl.addBaseLayer(layers[i].layer, layers[i].name);