X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/5310c5b9dd67f7d416ee778a36f43c21126a1575..846353303bcd718bb509567622af8a53a4c1421a:/app/assets/javascripts/edit/id.js.erb diff --git a/app/assets/javascripts/edit/id.js.erb b/app/assets/javascripts/edit/id.js.erb index cb4ff1865..0ad1be56d 100644 --- a/app/assets/javascripts/edit/id.js.erb +++ b/app/assets/javascripts/edit/id.js.erb @@ -13,15 +13,18 @@ $(document).ready(function () { const hashArgs = OSM.parseHash(location.hash); const mapParams = OSM.mapParams(); const params = new URLSearchParams(); - let { zoom, lat, lon } = mapParams; + let zoom, lat, lon; + if (idData.lat && idData.lon) { + ({ zoom, lat, lon } = { zoom: 16, ...idData }); + } else if (!mapParams.object) { + ({ zoom, lat, lon } = mapParams); + } if (mapParams.object) { params.set("id", mapParams.object.type + "/" + mapParams.object.id); if (hashArgs.center) ({ zoom, center: { lat, lng: lon } } = hashArgs); - } else if (idData.lat && idData.lon) { - ({ zoom, lat, lon } = { zoom: 16, ...idData }); } - params.set("map", [zoom || 17, lat, lon].join("/")); + if (lat && lon) params.set("map", [zoom || 17, lat, lon].join("/")); const passThroughKeys = ["background", "comment", "disable_features", "gpx", "hashtags", "locale", "maprules", "notes", "offset", "photo", "photo_dates", "photo_overlay", "photo_username", "presets", "source", "validationDisable", "validationWarning", "validationError", "walkthrough"]; for (const key of passThroughKeys) { @@ -32,5 +35,5 @@ $(document).ready(function () { if (idData.gpx) params.set("gpx", idData.gpx); - id.attr("src", idData.url + "#" + params); + id.attr("src", idData.url + "#" + params.toString().replace(/\+/g, "%20")); });