]> git.openstreetmap.org Git - rails.git/commitdiff
only parse hashParams if there is a hash
authorMartin Raifer <martin@raifer.tech>
Tue, 14 Jun 2022 18:41:10 +0000 (20:41 +0200)
committerGitHub <noreply@github.com>
Tue, 14 Jun 2022 18:41:10 +0000 (20:41 +0200)
Presumably this was an oversight in the original implementation, as `OSM.params` falls back to the page's `query` string if the function's parameter (here: the page's `hash`) is an empty string.

This fixes some inconsistent behaviour of the website. In the example below, the first URL sets the `background` to `none` while in the second example it doesn't.

* https://www.openstreetmap.org/edit.html?background=none
* https://www.openstreetmap.org/edit.html?background=none#map=…

app/assets/javascripts/edit/id.js.erb

index 02299d2151b4c53a7d28b8e089344c50e629cd99..6a68b6b2d9b8be13a8b08819753ce8a890da98d2 100644 (file)
@@ -4,7 +4,8 @@ $(document).ready(function () {
   var id = $("#id-embed");
 
   if (id.data("configured") === true) {
-    var hashParams = OSM.params(location.hash.substring(1));
+    var hash = location.hash.substring(1);
+    var hashParams = hash ? OSM.params(hash) : {};
     var mapParams = OSM.mapParams();
     var params = {};