From f3afd4307685b49f7644d074ee27f88b086734f1 Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Mon, 1 Oct 2012 19:21:37 -0700 Subject: [PATCH] Avoid a JS error on (e.g.) ?way=nnnnn When showing an object, the map location is not set until the vector layer has finished loading. Thus map.getCenter() returns null. Registering the events earlier avoids the need to call updateLocation manually at all. --- app/assets/javascripts/index.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/app/assets/javascripts/index.js b/app/assets/javascripts/index.js index 0ceb015a7..9a05ae1dd 100644 --- a/app/assets/javascripts/index.js +++ b/app/assets/javascripts/index.js @@ -7,6 +7,9 @@ $(document).ready(function () { var params = OSM.mapParams(); var map = createMap("map"); + map.events.register("moveend", map, updateLocation); + map.events.register("changelayer", map, updateLocation); + if (!params.object_zoom) { if (params.bbox) { var bbox = new OpenLayers.Bounds(params.minlon, params.minlat, params.maxlon, params.maxlat); @@ -39,10 +42,6 @@ $(document).ready(function () { $(window).load(function() { addObjectToMap(url, params.object_zoom) }); } - map.events.register("moveend", map, updateLocation); - map.events.register("changelayer", map, updateLocation); - - updateLocation(); handleResize(); $("#show_data").click(function (e) { -- 2.43.2