From: John Firebaugh Date: Tue, 2 Oct 2012 02:21:37 +0000 (-0700) Subject: Avoid a JS error on (e.g.) ?way=nnnnn X-Git-Tag: live~6403 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/f3afd4307685b49f7644d074ee27f88b086734f1?hp=c6e267f2bd33a1cbf795093c98ff17dd384ec462 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. --- 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) {