]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/leaflet.share.js
Refactor out 'globals' from more functions
[rails.git] / app / assets / javascripts / leaflet.share.js
index 7d5eb0cc9780bd472a4869e7202532ce6a0e614f..d43f99b1da1b3032696c4912213593b56c59d712 100644 (file)
@@ -1,5 +1,3 @@
-//= require templates/map/share
-
 L.Control.Share = L.Control.extend({
     options: {
         position: 'topright',
@@ -10,20 +8,17 @@ L.Control.Share = L.Control.extend({
     },
 
     onAdd: function (map) {
-        var className = 'leaflet-control-locate',
-            classNames = className + ' leaflet-control-zoom leaflet-bar leaflet-control',
-            container = L.DomUtil.create('div', classNames);
+        var className = 'control-share',
+            container = L.DomUtil.create('div', className);
 
-        var link = L.DomUtil.create('a', 'leaflet-bar-part leaflet-bar-part-single', container);
+        var link = L.DomUtil.create('a', 'control-button', container);
+        link.innerHTML = "<span class='icon share'></span>";
         link.href = '#';
         link.title = this.options.title;
 
-        this._uiPane = L.DomUtil.create('div', 'leaflet-map-ui', map._container);
+        this._uiPane = this.options.uiPane;
 
-        L.DomEvent
-            .on(this._uiPane, 'click', L.DomEvent.stopPropagation)
-            .on(this._uiPane, 'click', L.DomEvent.preventDefault)
-            .on(this._uiPane, 'dblclick', L.DomEvent.preventDefault);
+        this._map = map;
 
         var h2 = L.DomUtil.create('h2', '', this._uiPane);
         h2.innerHTML = I18n.t('javascripts.share.title');
@@ -42,9 +37,9 @@ L.Control.Share = L.Control.extend({
     },
 
     _update: function (e) {
-        var center = map.getCenter().wrap();
-        var layers = getMapLayers();
-        this._linkInput.value = this.options.getUrl(map);
+        var center = this._map.getCenter().wrap();
+        var layers = getMapLayers(this._map);
+        this._linkInput.value = this.options.getUrl(this._map);
     },
 
     _toggle: function() {