diff options
Diffstat (limited to 'chimere/static')
| -rw-r--r-- | chimere/static/chimere/js/base.js | 72 |
1 files changed, 37 insertions, 35 deletions
diff --git a/chimere/static/chimere/js/base.js b/chimere/static/chimere/js/base.js index facaf23..00acadd 100644 --- a/chimere/static/chimere/js/base.js +++ b/chimere/static/chimere/js/base.js @@ -107,43 +107,45 @@ function zoomToCurrentExtent(map){ return true; } -/* interface */ -function share_link_update(){ - $('.share_link').click(function(){ - if (this.share_initialized){ - return false; - } - this.share_initialized = true; - var href = $(this).attr('href'); - var url = get_share_url; - var classes = $(this).attr('class').split(' '); - prefix = 'share_id_'; - var share_id; - for (idx=0;idx<classes.length;idx++){ - if(classes[idx].substring(0, prefix.length) == prefix){ - var share_id = classes[idx].substring(prefix.length); - share_id = share_id.split('_')[0]; - } - } - $('#main-map').chimere('update_permalink'); - var params = $('#permalink').attr('href').split('#'); - url += share_id + params[params.length-1]; - $.ajax({url: url, - dataType: "html", - success: function (url) { - window.location.href = url; - return true; - }, - error: function(){ - return false; - } - }); - return false; - }); -} - $("a").on("click", function(event){ if ($(this).is("[disabled]")) { event.preventDefault(); } }); + +var update_permalink = false; + +function share_link_update(){ + if (update_permalink){ + $('.share_link').unbind('click').click(function(){ + update_permalink(); + var href = $(this).attr('href'); + var url = get_share_url; + var classes = $(this).attr('class').split(' '); + prefix = 'share_id_'; + var share_id; + for (idx=0;idx<classes.length;idx++){ + if(classes[idx].substring(0, prefix.length) == prefix){ + var share_id = classes[idx].substring(prefix.length); + } + } + var params = $('#permalink').attr('href').split('#'); + url += share_id + "/" + params[params.length-1] + "/"; + var initialized = false; + $.ajax({url: url, + dataType: "html", + success: function (url) { + if(!initialized){ + initialized = true; + window.open(url); + } + return false; + }, + error: function(){ + return false; + } + }); + return false; + }); + } +} |
