X-Git-Url: https://git.openstreetmap.org./nominatim-ui.git/blobdiff_plain/3d5062bc458e674828760ba0fe07100e3bf69e9b..ee9ae6193aefe2a28522a71406cbb92614844f1e:/src/assets/js/detailpage.js?ds=sidebyside diff --git a/src/assets/js/detailpage.js b/src/assets/js/detailpage.js index d180345..23447e9 100644 --- a/src/assets/js/detailpage.js +++ b/src/assets/js/detailpage.js @@ -1,26 +1,29 @@ -/********************************************************* -* DETAILS PAGE -*********************************************************/ - +// ********************************************************* +// DETAILS PAGE +// ********************************************************* function init_map_on_detail_page(lat, lon, geojson) { + var attribution = get_config_value('Map_Tile_Attribution') || null; map = new L.map('map', { // center: [nominatim_map_init.lat, nominatim_map_init.lon], // zoom: nominatim_map_init.zoom, - attributionControl: (get_config_value('Map_Tile_Attribution') && get_config_value('Map_Tile_Attribution').length), - scrollWheelZoom: true, // !L.Browser.touch, - touchZoom: false, + attributionControl: (attribution && attribution.length), + scrollWheelZoom: true, // !L.Browser.touch, + touchZoom: false }); L.tileLayer(get_config_value('Map_Tile_URL'), { // moved to footer - attribution: (get_config_value('Map_Tile_Attribution') || null ) //'© OpenStreetMap contributors' + // '© OpenStreetMap contributors' + attribution: attribution }).addTo(map); - var layerGroup = new L.layerGroup().addTo(map); + // var layerGroup = new L.layerGroup().addTo(map); - var circle = L.circleMarker([lat,lon], { radius: 10, weight: 2, fillColor: '#ff7800', color: 'blue', opacity: 0.75}); + var circle = L.circleMarker([lat, lon], { + radius: 10, weight: 2, fillColor: '#ff7800', color: 'blue', opacity: 0.75 + }); map.addLayer(circle); if (geojson) { @@ -28,28 +31,32 @@ function init_map_on_detail_page(lat, lon, geojson) { // https://leafletjs.com/reference-1.0.3.html#path-option parse_and_normalize_geojson_string(geojson), { - style: function(feature) { - return { interactive: false, color: 'blue' }; + style: function () { + return { interactive: false, color: 'blue' }; } } ); map.addLayer(geojson_layer); map.fitBounds(geojson_layer.getBounds()); } else { - map.setView([lat,lon],10); + map.setView([lat, lon], 10); } - var osm2 = new L.TileLayer(get_config_value('Map_Tile_URL'), {minZoom: 0, maxZoom: 13, attribution: (get_config_value('Map_Tile_Attribution') || null )}); - var miniMap = new L.Control.MiniMap(osm2, {toggleDisplay: true}).addTo(map); + var osm2 = new L.TileLayer( + get_config_value('Map_Tile_URL'), + { + minZoom: 0, + maxZoom: 13, + attribution: (get_config_value('Map_Tile_Attribution') || null) + } + ); + (new L.Control.MiniMap(osm2, { toggleDisplay: true })).addTo(map); } +function details_page_load() { -jQuery(document).ready(function(){ - - if ( !$('#details-page').length ){ return; } - - var search_params = new URLSearchParams(location.search); + var search_params = new URLSearchParams(window.location.search); // var place_id = search_params.get('place_id'); var api_request_params = { @@ -58,18 +65,22 @@ jQuery(document).ready(function(){ osmid: search_params.get('osmid'), keywords: search_params.get('keywords'), addressdetails: 1, - hierarchy: 1, + hierarchy: (search_params.get('hierarchy') === '1' ? 1 : 0), group_hierarchy: 1, polygon_geojson: 1, format: 'json' }; - if (api_request_params.place_id || (api_request_params.osmtype && api_request_params.osmid )){ - fetch_from_api('details', api_request_params, function(aFeature){ - - var context = { aPlace: aFeature }; + if (api_request_params.place_id || (api_request_params.osmtype && api_request_params.osmid)) { + fetch_from_api('details', api_request_params, function (aFeature) { + var context = { aPlace: aFeature, base_url: window.location.search }; render_template($('main'), 'detailspage-template', context); + if (api_request_params.place_id) { + update_html_title('Details for ' + api_request_params.place_id); + } else { + update_html_title('Details for ' + api_request_params.osmtype + api_request_params.osmid); + } update_data_date(); @@ -81,7 +92,7 @@ jQuery(document).ready(function(){ render_template($('main'), 'detailspage-index-template'); } - $('#form-by-type-and-id,#form-by-osm-url').on('submit', function(e){ + $('#form-by-type-and-id,#form-by-osm-url').on('submit', function (e) { e.preventDefault(); var val = $(this).find('input[type=edit]').val(); @@ -99,5 +110,4 @@ jQuery(document).ready(function(){ alert('invalid input'); } }); - -}); \ No newline at end of file +}