X-Git-Url: https://git.openstreetmap.org./nominatim-ui.git/blobdiff_plain/74cf33bfb3c4b8fe562b48b22d1668a0b75b919c..a82c578374260ba3450fbd475da5739b9d92a4ce:/dist/assets/js/nominatim-ui.js diff --git a/dist/assets/js/nominatim-ui.js b/dist/assets/js/nominatim-ui.js index 1b148a8..c3ffd1b 100644 --- a/dist/assets/js/nominatim-ui.js +++ b/dist/assets/js/nominatim-ui.js @@ -599,6 +599,7 @@ function search_page_load() { aPlace = null; } + context.bSearchRan = true; context.aPlace = aPlace; render_template($('main'), 'reversepage-template', context); @@ -666,6 +667,7 @@ function search_page_load() { fetch_from_api('search', api_request_params, function (aResults) { + context.bSearchRan = true; context.aSearchResults = aResults; if (aResults.length >= 10) { @@ -774,19 +776,37 @@ jQuery(document).ready(function () { if (!url) return false; if (url.indexOf('?') === 0) return true; if (url.indexOf('/') === 0) return true; + if (url.indexOf('#') === 0) return false; if (url.match(/^http/)) return false; if (!url.match(/\.html/)) return true; return false; } + // remove any URL paramters with empty values + // '&empty=&filled=value' => 'filled=value' + function clean_up_url_parameters(url) { + var url_params = new URLSearchParams(url); + var to_delete = []; // deleting inside loop would skip iterations + url_params.forEach(function (value, key) { + if (value === '') to_delete.push(key); + }); + for (var i = 0; i < to_delete.length; i += 1) { + url_params.delete(to_delete[i]); + } + return url_params.toString(); + } + parse_url_and_load_page(); // load page after form submit $(document).on('submit', 'form', function (e) { e.preventDefault(); - window.history.pushState(myhistory, '', '?' + $(this).serialize()); + var target_url = $(this).serialize(); + target_url = clean_up_url_parameters(target_url); + + window.history.pushState(myhistory, '', '?' + target_url); parse_url_and_load_page(); });