]> git.openstreetmap.org Git - nominatim-ui.git/blobdiff - src/assets/js/searchpage.js
Allow map to wrap-around, still longitude should be -180..+180
[nominatim-ui.git] / src / assets / js / searchpage.js
index 8df5fe09ef9bf367a61ab607c27ad7137bb0ddeb..44e7a7941068550b0179b8907d3df7aeea63160b 100755 (executable)
@@ -6,6 +6,10 @@
 
 function display_map_position(mouse_lat_lng){
 
+    if (mouse_lat_lng) {
+        mouse_lat_lng = map.wrapLatLng(mouse_lat_lng);
+    }
+
     html_mouse = "mouse position " + (mouse_lat_lng ? [mouse_lat_lng.lat.toFixed(5), mouse_lat_lng.lng.toFixed(5)].join(',') : '-');
     html_click = "last click: " + (last_click_latlng ? [last_click_latlng.lat.toFixed(5),last_click_latlng.lng.toFixed(5)].join(',') : '-');
 
@@ -20,9 +24,10 @@ function display_map_position(mouse_lat_lng){
 
     $('#map-position-inner').html([html_center,html_zoom,html_viewbox,html_click,html_mouse].join('<br/>'));
 
+    var center_lat_lng = map.wrapLatLng(map.getCenter());
     var reverse_params = {
-        // lat: map.getCenter().lat.toFixed(5),
-        // lon: map.getCenter().lng.toFixed(5),
+        lat: center_lat_lng.lat.toFixed(5),
+        lon: center_lat_lng.lng.toFixed(5)
         // zoom: 2,
         // format: 'html'
     }
@@ -46,9 +51,8 @@ function init_map_on_search_page(is_reverse_search, nominatim_results, request_l
 
 
     L.tileLayer(get_config_value('Map_Tile_URL'), {
-        noWrap: true, // otherwise we end up with click coordinates like latitude -728
         // moved to footer
-        attribution: (get_config_value('Map_Tile_Attribution') || null ) //'&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
+        attribution: (get_config_value('Map_Tile_Attribution') || null ) //'&copy; <a href="https://osm.org/copyright">OpenStreetMap</a> contributors'
     }).addTo(map);
 
     // console.log(Nominatim_Config);
@@ -163,7 +167,7 @@ function init_map_on_search_page(is_reverse_search, nominatim_results, request_l
                 var geojson_layer = L.geoJson(
                     parse_and_normalize_geojson_string(result.geojson),
                     {
-                        // http://leafletjs.com/reference-1.0.3.html#path-option
+                        // https://leafletjs.com/reference-1.0.3.html#path-option
                         style: function(feature) {
                             return { interactive: false, color: 'blue' }; 
                         }
@@ -205,7 +209,7 @@ function init_map_on_search_page(is_reverse_search, nominatim_results, request_l
     if ( is_reverse_search ){
         map.on('click', function(e){
             $('form input[name=lat]').val( e.latlng.lat);
-            $('form input[name=lon]').val( e.latlng.lng);
+            $('form input[name=lon]').val( e.latlng.wrap().lng);
             $('form').submit();
         });
 
@@ -265,7 +269,7 @@ jQuery(document).ready(function(){
             // lon: typeof(search_params.get('lon') !== 'undefined') ? search_params.get('lon') : get_config_value('Map_Default_Lon'),
             lat: search_params.get('lat'),
             lon: search_params.get('lon'),
-            zoom: (search_params.get('zoom') !== '' ? search_params.get('zoom') : get_config_value('Map_Default_Zoom')),
+            zoom: (search_params.get('zoom') !== '' ? search_params.get('zoom') : get_config_value('Reverse_Default_Search_Zoom')),
             format: 'jsonv2'
         }
 
@@ -273,7 +277,7 @@ jQuery(document).ready(function(){
             // aPlace: aPlace,
             fLat: api_request_params.lat,
             fLon: api_request_params.lon,
-            iZoom: (search_params.get('zoom') !== '' ? api_request_params.zoom : undefined)
+            iZoom: (search_params.get('zoom') !== '' ? api_request_params.zoom : get_config_value('Reverse_Default_Search_Zoom'))
         };