diff --git a/backend/pb_migrations/1754400000_init_schema.js b/backend/pb_migrations/1754400000_init_schema.js
index 1b1ec74..23aed54 100644
--- a/backend/pb_migrations/1754400000_init_schema.js
+++ b/backend/pb_migrations/1754400000_init_schema.js
@@ -1260,11 +1260,22 @@ migrate((app) => {
"presentable": false,
"system": false,
"type": "autodate"
+ },
+ {
+ "help": "",
+ "hidden": false,
+ "id": "json1889387860",
+ "maxSize": 2000000,
+ "name": "coord_distances",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "json"
}
],
"indexes": [],
"created": "2026-08-06 14:55:19.501Z",
- "updated": "2026-08-06 14:55:19.501Z",
+ "updated": "2026-08-06 17:20:30.496Z",
"system": false
},
{
diff --git a/backend/pb_migrations/1754500400_trail_versions_coord_distances.js b/backend/pb_migrations/1754500400_trail_versions_coord_distances.js
new file mode 100644
index 0000000..54bd586
--- /dev/null
+++ b/backend/pb_migrations/1754500400_trail_versions_coord_distances.js
@@ -0,0 +1,20 @@
+///
+
+// Kumulative Distanz je Koordinate der vereinfachten Geometrie. Nötig, weil
+// elevation einen Eintrag pro Originalpunkt hat, geojson aber nur die
+// vereinfachten — ohne diese Brücke zeigt die Hervorhebung aus dem
+// Höhenprofil auf der Karte an die falsche Stelle.
+
+migrate((app) => {
+ const c = app.findCollectionByNameOrId('trail_versions')
+ c.fields.add(new Field({
+ name: 'coord_distances',
+ type: 'json',
+ maxSize: 2000000,
+ }))
+ app.save(c)
+}, (app) => {
+ const c = app.findCollectionByNameOrId('trail_versions')
+ c.fields.removeByName('coord_distances')
+ app.save(c)
+})
diff --git a/frontend/src/lib/components/ElevationProfile.svelte b/frontend/src/lib/components/ElevationProfile.svelte
index b8ff0ba..116dc1b 100644
--- a/frontend/src/lib/components/ElevationProfile.svelte
+++ b/frontend/src/lib/components/ElevationProfile.svelte
@@ -1,8 +1,9 @@