From: mtmail Date: Mon, 10 Aug 2020 12:47:34 +0000 (+0200) Subject: Merge pull request #27 from mtmail/always-display-more-url X-Git-Url: https://git.openstreetmap.org./nominatim-ui.git/commitdiff_plain/78403df4cea31c52227610d027d6df01df4a4af9?ds=inline;hp=-c Merge pull request #27 from mtmail/always-display-more-url Always display more-results button below search results --- 78403df4cea31c52227610d027d6df01df4a4af9 diff --combined dist/assets/js/nominatim-ui.js index d16de70,1069b3e..e36e866 --- a/dist/assets/js/nominatim-ui.js +++ b/dist/assets/js/nominatim-ui.js @@@ -80,7 -80,7 +80,7 @@@ function map_viewbox_as_string() // PAGE HELPERS // ********************************************************* -function fetch_from_api(endpoint_name, params, callback) { +function generate_full_api_url(endpoint_name, params) { // // `&a=&b=&c=1` => '&c=1' var param_names = Object.keys(params); @@@ -93,11 -93,6 +93,11 @@@ var api_url = get_config_value('Nominatim_API_Endpoint') + endpoint_name + '.php?' + $.param(params); + return api_url; +} + +function fetch_from_api(endpoint_name, params, callback) { + var api_url = generate_full_api_url(endpoint_name, params); if (endpoint_name !== 'status') { $('#api-request-link').attr('href', api_url); } @@@ -586,11 -581,6 +586,11 @@@ function search_page_load() format: 'jsonv2' }; + if (search_params.get('debug') === '1') { + window.location.href = generate_full_api_url('reverse', api_request_params); + return; + } + context = { // aPlace: aPlace, fLat: api_request_params.lat, @@@ -655,11 -645,6 +655,11 @@@ format: 'jsonv2' }; + if (search_params.get('debug') === '1') { + window.location.href = generate_full_api_url('search', api_request_params); + return; + } + context = { sQuery: api_request_params.q, sViewBox: search_params.get('viewbox'), @@@ -685,19 -670,20 +685,20 @@@ context.bSearchRan = true; context.aSearchResults = aResults; - if (aResults.length >= 10) { - var aExcludePlaceIds = []; - if (search_params.has('exclude_place_ids')) { - aExcludePlaceIds = search_params.get('exclude_place_ids').split(','); - } - for (var i = 0; i < aResults.length; i += 1) { - aExcludePlaceIds.push(aResults[i].place_id); - } - - var parsed_url = new URLSearchParams(window.location.search); - parsed_url.set('exclude_place_ids', aExcludePlaceIds.join(',')); - context.sMoreURL = '?' + parsed_url.toString(); + // lonvia wrote: https://github.com/osm-search/nominatim-ui/issues/24 + // I would suggest to remove the guessing and always show the link. Nominatim only returns + // one or two results when it believes the result to be a good enough match. + // if (aResults.length >= 10) { + var aExcludePlaceIds = []; + if (search_params.has('exclude_place_ids')) { + aExcludePlaceIds = search_params.get('exclude_place_ids').split(','); + } + for (var i = 0; i < aResults.length; i += 1) { + aExcludePlaceIds.push(aResults[i].place_id); } + var parsed_url = new URLSearchParams(window.location.search); + parsed_url.set('exclude_place_ids', aExcludePlaceIds.join(',')); + context.sMoreURL = '?' + parsed_url.toString(); render_template($('main'), 'searchpage-template', context); update_html_title('Result for ' + api_request_params.q); @@@ -772,7 -758,7 +773,7 @@@ jQuery(document).ready(function () function parse_url_and_load_page() { // 'search', 'reverse', 'details' - var pagename = window.location.pathname.replace('.html', '').replace(/.+\//, ''); + var pagename = window.location.pathname.replace('.html', '').replace(/^.*\//, ''); if (pagename === '') pagename = 'search'; diff --combined src/assets/js/searchpage.js index 914d864,95d842d..ee76ba8 --- a/src/assets/js/searchpage.js +++ b/src/assets/js/searchpage.js @@@ -321,11 -321,6 +321,11 @@@ function search_page_load() format: 'jsonv2' }; + if (search_params.get('debug') === '1') { + window.location.href = generate_full_api_url('reverse', api_request_params); + return; + } + context = { // aPlace: aPlace, fLat: api_request_params.lat, @@@ -390,11 -385,6 +390,11 @@@ format: 'jsonv2' }; + if (search_params.get('debug') === '1') { + window.location.href = generate_full_api_url('search', api_request_params); + return; + } + context = { sQuery: api_request_params.q, sViewBox: search_params.get('viewbox'), @@@ -420,19 -410,20 +420,20 @@@ context.bSearchRan = true; context.aSearchResults = aResults; - if (aResults.length >= 10) { - var aExcludePlaceIds = []; - if (search_params.has('exclude_place_ids')) { - aExcludePlaceIds = search_params.get('exclude_place_ids').split(','); - } - for (var i = 0; i < aResults.length; i += 1) { - aExcludePlaceIds.push(aResults[i].place_id); - } - - var parsed_url = new URLSearchParams(window.location.search); - parsed_url.set('exclude_place_ids', aExcludePlaceIds.join(',')); - context.sMoreURL = '?' + parsed_url.toString(); + // lonvia wrote: https://github.com/osm-search/nominatim-ui/issues/24 + // I would suggest to remove the guessing and always show the link. Nominatim only returns + // one or two results when it believes the result to be a good enough match. + // if (aResults.length >= 10) { + var aExcludePlaceIds = []; + if (search_params.has('exclude_place_ids')) { + aExcludePlaceIds = search_params.get('exclude_place_ids').split(','); + } + for (var i = 0; i < aResults.length; i += 1) { + aExcludePlaceIds.push(aResults[i].place_id); } + var parsed_url = new URLSearchParams(window.location.search); + parsed_url.set('exclude_place_ids', aExcludePlaceIds.join(',')); + context.sMoreURL = '?' + parsed_url.toString(); render_template($('main'), 'searchpage-template', context); update_html_title('Result for ' + api_request_params.q);