diff --git a/api/utils/serializer/serializer.py b/api/utils/serializer/serializer.py index 4924d742..9fcd5338 100644 --- a/api/utils/serializer/serializer.py +++ b/api/utils/serializer/serializer.py @@ -156,6 +156,8 @@ class AbstractModelAPISerializer: if isinstance(geojson, dict): geojson = json.dumps(geojson) geometry = geos.fromstr(geojson) + if not geometry.valid: + raise ValueError(f"Invalid geometry: {geometry.valid_reason}") is_4326 = Geometry.is_valid_4326(geometry) if not is_4326: raise ValueError("Geometry not in EPSG:4326 (WGS84). Unknown spatial reference system.") diff --git a/konova/utils/__init__.py b/konova/utils/__init__.py new file mode 100644 index 00000000..310b8ff3 --- /dev/null +++ b/konova/utils/__init__.py @@ -0,0 +1,5 @@ +""" +Author: Michel Peltriaux +Created on: 16.07.26 + +""" diff --git a/konova/utils/schneider/__init__.py b/konova/utils/schneider/__init__.py new file mode 100644 index 00000000..310b8ff3 --- /dev/null +++ b/konova/utils/schneider/__init__.py @@ -0,0 +1,5 @@ +""" +Author: Michel Peltriaux +Created on: 16.07.26 + +"""