diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-11-14 16:11:15 +0100 |
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2016-11-14 16:11:15 +0100 |
| commit | e70ee5519dadbc6cd6eec3ebbf3414251a163d0a (patch) | |
| tree | 7be44c99cc0abc0c51c84c79e4091e142875a3d8 /chimere/static | |
| parent | abcc53d4e630878a9f46d412916b2a056deb0e3c (diff) | |
| download | Chimère-e70ee5519dadbc6cd6eec3ebbf3414251a163d0a.tar.bz2 Chimère-e70ee5519dadbc6cd6eec3ebbf3414251a163d0a.zip | |
Fix update share link management
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; + }); + } +} |
