X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/a6ac56c5e510395d160cdb7ccc7a88d87403e687..258e66299ac45c4dbb951dee0a92194301b31737:/app/assets/javascripts/leaflet.share.js diff --git a/app/assets/javascripts/leaflet.share.js b/app/assets/javascripts/leaflet.share.js index 6653a5b92..b53524f25 100644 --- a/app/assets/javascripts/leaflet.share.js +++ b/app/assets/javascripts/leaflet.share.js @@ -1,11 +1,16 @@ L.OSM.share = function (options) { - var control = L.control(options); + var control = L.control(options), + marker = L.marker([0, 0], {draggable: true}), + locationFilter = new L.LocationFilter({ + enableButton: false, + adjustButton: false + }); control.onAdd = function (map) { var $container = $('
') .attr('class', 'control-share'); - $('') + var button = $('') .attr('class', 'control-button') .attr('href', '#') .attr('title', 'Share') @@ -16,27 +21,333 @@ L.OSM.share = function (options) { var $ui = $('
') .attr('class', 'share-ui'); - $('

') - .text(I18n.t('javascripts.share.title')) + $('
') + .attr('class', 'sidebar_heading') + .appendTo($ui) + .append( + $('') + .text(I18n.t('javascripts.close')) + .attr('class', 'sidebar_close') + .attr('href', '#') + .bind('click', toggle)) + .append( + $('

') + .text(I18n.t('javascripts.share.title'))); + + // Link / Embed + + var $linkSection = $('
') + .attr('class', 'section share-link') .appendTo($ui); - var $input = $('') + $('

') + .text(I18n.t('javascripts.share.link')) + .appendTo($linkSection); + + var $form = $('
') + .attr('class', 'standard-form') + .appendTo($linkSection); + + $('
') + .attr('class', 'form-row') + .appendTo($form) + .append( + $('
') + .attr('class', 'share-tabs') + .appendTo($form) + .append($('') + .attr('class', 'active') + .attr('for', 'long_input') + .attr('id', 'long_link') + .text(I18n.t('javascripts.share.long_link'))) + .append($('') + .attr('for', 'short_input') + .attr('id', 'short_link') + .text(I18n.t('javascripts.share.short_link'))) + .append($('') + .attr('for', 'embed_html') + .attr('href', '#') + .text(I18n.t('javascripts.share.embed'))) + .on('click', 'a', function(e) { + e.preventDefault(); + var id = '#' + $(this).attr('for'); + $linkSection.find('.share-tabs a') + .removeClass('active'); + $(this).addClass('active'); + $linkSection.find('.share-tab') + .hide(); + $linkSection.find('.share-tab:has(' + id + ')') + .show() + .find('input, textarea') + .select(); + }); + + $('
') + .attr('class', 'form-row share-tab') + .css('display', 'block') + .appendTo($form) + .append($('') + .attr('id', 'long_input') + .attr('type', 'text') + .on('click', select)); + + $('
') + .attr('class', 'form-row share-tab') + .appendTo($form) + .append($('') + .attr('id', 'short_input') + .attr('type', 'text') + .on('click', select)); + + $('
') + .attr('class', 'form-row share-tab') + .appendTo($form) + .append( + $('