Validate range of geo_lat/geo_lon values

This commit is contained in:
Raphael Michel
2021-01-04 10:34:47 +01:00
parent 6cf1074b8d
commit be413693ce
4 changed files with 34 additions and 4 deletions

View File

@@ -68,7 +68,13 @@ $(function () {
function getpoint() {
if ($lat.val() !== "" && $lon.val() !== "") {
return [parseFloat($lat.val().replace(",", ".")), parseFloat($lon.val().replace(",", "."))];
var p = [parseFloat($lat.val().replace(",", ".")), parseFloat($lon.val().replace(",", "."))];
// Clip to valid ranges. Very invalid lon/lat values can even lead to browser crashes in leaflet apparently
if (p[0] < -90) p[0] = -90
if (p[0] > 90) p[0] = 90
if (p[1] < -180) p[1] = -180
if (p[1] > 180) p[1] = 180
return p
} else {
return [0.0, 0.0];
}