From: Tom Hughes Date: Mon, 25 Nov 2013 19:03:35 +0000 (+0000) Subject: Fix "in bounds" test in updateData X-Git-Tag: live~4668^2~15 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/87bf5e73d4eccb88aa057fa27be0f482509c8fdf Fix "in bounds" test in updateData Only call getData if the new bounds are not contained within the old bounds, and only update the bounds after a successful load so that the don't change if we error out. --- diff --git a/app/assets/javascripts/index/browse.js b/app/assets/javascripts/index/browse.js index 752c84fec..69f6e3bc8 100644 --- a/app/assets/javascripts/index/browse.js +++ b/app/assets/javascripts/index/browse.js @@ -42,8 +42,9 @@ function initializeBrowse(map) { function updateData() { var bounds = map.getBounds(); - getData(!browseBounds || !browseBounds.contains(bounds)); - browseBounds = bounds; + if (!browseBounds || !browseBounds.contains(bounds)) { + getData(); + } } function displayFeatureWarning(count, limit, callback) { @@ -58,7 +59,7 @@ function initializeBrowse(map) { var dataLoader; - function getData(inPrevious) { + function getData() { var bounds = map.getBounds(); var size = bounds.getSize(); @@ -66,11 +67,9 @@ function initializeBrowse(map) { $('#browse_status').html( $("

") .text(I18n.t("browse.start_rjs.unable_to_load_size", { max_bbox_size: OSM.MAX_REQUEST_AREA, bbox_size: size.toFixed(2) }))); - return; + return false; } - if (inPrevious) return; - var url = "/api/" + OSM.API_VERSION + "/map?bbox=" + bounds.toBBoxString(); /* @@ -110,6 +109,7 @@ function initializeBrowse(map) { } dataLoader = null; + browseBounds = bounds; } }); }