From 5c07e396977d9ae50198659e1f84243f775a5f7d Mon Sep 17 00:00:00 2001 From: mtmail Date: Tue, 9 Sep 2025 02:49:31 +0200 Subject: [PATCH] details page: entrances list and on map (#301) --- src/components/Map.svelte | 12 ++++++++++++ src/pages/DetailsPage.svelte | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) diff --git a/src/components/Map.svelte b/src/components/Map.svelte index 9923d09..d5beb7d 100644 --- a/src/components/Map.svelte +++ b/src/components/Map.svelte @@ -167,6 +167,7 @@ let lat = aFeature.centroid ? aFeature.centroid.coordinates[1] : aFeature.lat; let lon = aFeature.centroid ? aFeature.centroid.coordinates[0] : aFeature.lon; let geojson = aFeature.geometry || aFeature.geojson; + let entrances = aFeature.entrances; if (lat && lon) { let circle = L.circleMarker([lat, lon], { @@ -198,6 +199,17 @@ } else if (lat && lon) { map.setView([lat, lon], 10); } + + if (entrances) { + entrances.forEach((entrance, i) => { + let entranceCircle = L.circleMarker([entrance.lat, entrance.lon], { + radius: 5, weight: 2, fillColor: '#ff7800', color: 'red', opacity: 0.75 + }); + entranceCircle.bindTooltip(`Entrance ${i + 1} (type=${entrance.type})`).openTooltip(); + map.addLayer(entranceCircle); + dataLayers.push(entranceCircle); + }); + } } $effect(() => { diff --git a/src/pages/DetailsPage.svelte b/src/pages/DetailsPage.svelte index 4303ce3..bc83ea0 100644 --- a/src/pages/DetailsPage.svelte +++ b/src/pages/DetailsPage.svelte @@ -33,6 +33,7 @@ addressdetails: 1, hierarchy: (search_params.get('hierarchy') === '1' ? 1 : 0), group_hierarchy: 1, + entrances: (search_params.get('entrances') === '1' ? 1 : 0), polygon_geojson: 1, format: 'json' }; @@ -267,6 +268,38 @@ {/if} + +

Entrances

+ {#if api_request_params.entrances} + {#if aPlace.entrances && aPlace.entrances.length} + + + Entrance Type + OSM + Extra Tags + + {#each aPlace.entrances as entrance, i} + + {i + 1} + {entrance.type} + + + + {/each} + {:else} + Place does not have entrances + {/if} + {:else} + + + display entraces + + + {/if} + + + -- 2.39.5