+L.OSM.share = function (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 = $('<div>')
+ .attr('class', 'control-share');
+
+ $('<a>')
+ .attr('class', 'control-button')
+ .attr('href', '#')
+ .attr('title', 'Share')
+ .html('<span class="icon share"></span>')
+ .on('click', toggle)
+ .appendTo($container);
+
+ var $ui = $('<div>')
+ .attr('class', 'share-ui');
+
+ $('<div>')
+ .attr('class', 'sidebar_heading')
+ .appendTo($ui)
+ .append(
+ $('<a>')
+ .text(I18n.t('javascripts.close'))
+ .attr('class', 'sidebar_close')
+ .attr('href', '#')
+ .bind('click', toggle))
+ .append(
+ $('<h4>')
+ .text(I18n.t('javascripts.share.title')));
+
+ // Link / Embed
+
+ var $linkSection = $('<div>')
+ .attr('class', 'section share-link')
+ .appendTo($ui);
+
+ $('<h4>')
+ .text(I18n.t('javascripts.share.link'))
+ .appendTo($linkSection);
+
+ var $form = $('<form>')
+ .attr('class', 'standard-form')
+ .appendTo($linkSection);
+
+ $('<div>')
+ .attr('class', 'form-row')
+ .appendTo($form)
+ .append(
+ $('<label>')
+ .attr('for', 'link_marker')
+ .append(
+ $('<input>')
+ .attr('id', 'link_marker')
+ .attr('type', 'checkbox')
+ .bind('change', toggleMarker))
+ .append(I18n.t('javascripts.share.include_marker')));
+
+ $('<div>')
+ .attr('class', 'form-row')
+ .appendTo($form)
+ .append(
+ $('<label>')
+ .attr('for', 'center_marker')
+ .append(
+ $('<input>')
+ .attr('id', 'center_marker')
+ .attr('type', 'checkbox')
+ .prop('checked', true)
+ .bind('change', update))
+ .append(I18n.t('javascripts.share.center_marker')));
+
+ $('<div>')
+ .attr('class', 'form-row')
+ .appendTo($form)
+ .append($('<label>')
+ .attr('for', 'long_input')
+ .text(I18n.t('javascripts.share.long_link')))
+ .append($('<a>')
+ .attr('id', 'long_link')
+ .append($('<span>')
+ .attr('class', 'icon link')))
+ .append($('<input>')
+ .attr('id', 'long_input')
+ .attr('type', 'text')
+ .on('click', select));
+
+ $('<div>')
+ .attr('class', 'form-row')
+ .appendTo($form)
+ .append($('<label>')
+ .attr('for', 'short_input')
+ .text(I18n.t('javascripts.share.short_link')))
+ .append($('<a>')
+ .attr('id', 'short_link')
+ .append($('<span>')
+ .attr('class', 'icon link')))
+ .append($('<input>')
+ .attr('id', 'short_input')
+ .attr('type', 'text')
+ .on('click', select));
+
+ $('<div>')
+ .attr('class', 'form-row')
+ .appendTo($form)
+ .append($('<label>')
+ .attr('for', 'embed_html')
+ .text(I18n.t('javascripts.share.embed')))
+ .append(
+ $('<textarea>')
+ .attr('id', 'embed_html')
+ .on('click', select));