X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/9634ab8fc1a2bd8bfd3a6e9c83315d31c277861c..013ef53c97a1d2c8319f1ac624e8325a06828366:/public/javascripts/site.js diff --git a/public/javascripts/site.js b/public/javascripts/site.js index bb7439f9a..95c0b938e 100644 --- a/public/javascripts/site.js +++ b/public/javascripts/site.js @@ -1,22 +1,43 @@ function updatelinks(lon,lat,zoom,layers) { - var links = new Object(); - links['viewanchor'] = '/index.html'; - //links['editanchor'] = 'edit.html'; - links['uploadanchor'] = '/traces'; - links['loginanchor'] = '/login.html'; - links['logoutanchor'] = '/logout.html'; - links['registeranchor'] = '/create-account.html'; - + var decimals = Math.pow(10, Math.floor(zoom/3)); var node; - var anchor; - for (anchor in links) { - node = document.getElementById(anchor); - if (! node) { continue; } + + lat = Math.round(lat * decimals) / decimals; + lon = Math.round(lon * decimals) / decimals; + + node = document.getElementById("permalinkanchor"); + if (node) { + var args = getArgs(node.href); + args["lat"] = lat; + args["lon"] = lon; + args["zoom"] = zoom; + if (layers) { + args["layers"] = layers; + } + node.href = setArgs(node.href, args); + } + + node = document.getElementById("viewanchor"); + if (node) { + var args = getArgs(node.href); + args["lat"] = lat; + args["lon"] = lon; + args["zoom"] = zoom; + if (layers) { + args["layers"] = layers; + } + node.href = setArgs(node.href, args); + } + + node = document.getElementById("exportanchor"); + if (node) { var args = getArgs(node.href); args["lat"] = lat; args["lon"] = lon; args["zoom"] = zoom; - args["layers"] = layers; + if (layers) { + args["layers"] = layers; + } node.href = setArgs(node.href, args); } @@ -27,7 +48,7 @@ function updatelinks(lon,lat,zoom,layers) { args.lat = lat; args.lon = lon; args.zoom = zoom; - node.href = setArgs("/edit.html", args); + node.href = setArgs("/edit", args); node.style.fontStyle = 'normal'; } else { node.href = 'javascript:alert("zoom in to edit map");'; @@ -70,3 +91,17 @@ function setArgs(url, args) { return url.replace(/\?.*$/, "") + "?" + queryitems.join("&"); } + +function getStyle(el, property) { + var style; + + if (el.currentStyle) { + style = el.currentStyle[property]; + } else if( window.getComputedStyle ) { + style = document.defaultView.getComputedStyle(el,null).getPropertyValue(property); + } else { + style = el.style[property]; + } + + return style; +}