]> git.openstreetmap.org Git - rails.git/blobdiff - app/assets/javascripts/leaflet.share.js
Create linkloader iframe in script
[rails.git] / app / assets / javascripts / leaflet.share.js
index a5e93a13946973622380985f82e6c58d5ca69b91..bea877e6686c0da8be68412fd808cc5c55f1e5e4 100644 (file)
@@ -16,7 +16,7 @@ L.OSM.share = function (options) {
     var $ui = $('<div>')
       .attr('class', 'share-ui');
 
-    $('<header>')
+    $('<div>')
       .attr('class', 'sidebar_heading')
       .appendTo($ui)
       .append(
@@ -29,38 +29,24 @@ L.OSM.share = function (options) {
         $('<h4>')
           .text(I18n.t('javascripts.share.title')));
 
-    var $share_link = $('<section>')
+    var $linkSection = $('<div>')
+      .attr('class', 'section share-link')
       .appendTo($ui);
 
-    var $title = $('<h4>')
+    $('<h4>')
       .text(I18n.t('javascripts.share.link'))
-      .appendTo($share_link);
+      .appendTo($linkSection);
 
-    var $input = $('<input />')
-      .attr('type', 'text')
-      .appendTo($share_link);
+    var $shortLink, $longLink;
 
-    var $list = $('<ul>')
-      .appendTo($share_link);
-
-    var $short_option = $('<li>')
-      .appendTo($list);
-
-    var $short_url_label = $('<label></label>')
-      .attr('for', 'short_url')
-      .appendTo($short_option);
-
-    var $short_url_input = $('<input />')
-      .attr('id', 'short_url')
-      .attr('type', 'checkbox')
-      .prop('checked', 'checked')
-      .appendTo($short_url_label)
-      .bind('change', function() {
-          options.short = $(this).prop('checked');
-          update();
-      });
-
-    $short_url_label.append(I18n.t('javascripts.share.short_url'));
+    $('<ul>')
+      .appendTo($linkSection)
+      .append($('<li>')
+        .append($longLink = $('<a>')
+          .text(I18n.t('javascripts.share.long_link'))))
+      .append($('<li>')
+        .append($shortLink = $('<a>')
+          .text(I18n.t('javascripts.share.short_link'))));
 
     map.on('moveend layeradd layerremove', update);
 
@@ -70,13 +56,16 @@ L.OSM.share = function (options) {
       e.stopPropagation();
       e.preventDefault();
       options.sidebar.togglePane($ui);
-      $input.select();
+      update();
     }
 
     function update() {
-      $input.val(
-          options.short ? options.getShortUrl(map) : options.getUrl(map)
-      );
+      $shortLink.attr('href', map.getShortUrl());
+      $longLink.attr('href', map.getUrl());
+    }
+
+    function select() {
+      $(this).select();
     }
 
     return $container[0];