From 1c93d482d21445dc72a732f73c82d80a4911da02 Mon Sep 17 00:00:00 2001 From: Harry Wood Date: Thu, 23 Apr 2009 14:38:40 +0000 Subject: [PATCH 1/1] change updatelinks params so that Potlatch can pass in the view bbox. Also check if it's missing. closes #1738 --- app/views/site/index.rhtml | 4 ++-- public/javascripts/site.js | 23 +++++++++++++---------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/app/views/site/index.rhtml b/app/views/site/index.rhtml index 54f281727..b8fcf579e 100644 --- a/app/views/site/index.rhtml +++ b/app/views/site/index.rhtml @@ -171,8 +171,8 @@ end var layers = getMapLayers(); var extents = getMapExtent(); - updatelinks(lonlat.lon, lonlat.lat, zoom, layers, extents); - + updatelinks(lonlat.lon, lonlat.lat, zoom, layers, extents.left, extents.bottom, extents.right, extents.top); + document.cookie = "_osm_location=" + lonlat.lon + "|" + lonlat.lat + "|" + zoom + "|" + layers; } diff --git a/public/javascripts/site.js b/public/javascripts/site.js index bf4eda912..ae38ecb6a 100644 --- a/public/javascripts/site.js +++ b/public/javascripts/site.js @@ -1,6 +1,6 @@ //Called as the user scrolls/zooms around. //Maniplate hrefs of the view tab and various other links -function updatelinks(lon,lat,zoom,layers,extents) { +function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat) { var decimals = Math.pow(10, Math.floor(zoom/3)); var node; @@ -63,15 +63,18 @@ function updatelinks(lon,lat,zoom,layers,extents) { if (zoom >= 11) { var args = new Object(); //set bbox param from 'extents' object - minlon = extents.left; - minlat = extents.bottom; - maxlon = extents.right; - maxlat = extents.top; - minlon = Math.round(minlon * decimals) / decimals; - minlat = Math.round(minlat * decimals) / decimals; - maxlon = Math.round(maxlon * decimals) / decimals; - maxlat = Math.round(maxlat * decimals) / decimals; - args.bbox = minlon + "," + minlat + "," + maxlon + "," + maxlat; + if (typeof minlon == "number" && + typeof minlat == "number" && + typeof maxlon == "number" && + typeof maxlat == "number") { + + minlon = Math.round(minlon * decimals) / decimals; + minlat = Math.round(minlat * decimals) / decimals; + maxlon = Math.round(maxlon * decimals) / decimals; + maxlat = Math.round(maxlat * decimals) / decimals; + args.bbox = minlon + "," + minlat + "," + maxlon + "," + maxlat; + } + node.href = setArgs("/history", args); node.style.fontStyle = 'normal'; } else { -- 2.45.2