auto-sync: 2026-05-05 01:30:01
This commit is contained in:
8
tasks/enduro-trails/prototype/static/app.js
vendored
8
tasks/enduro-trails/prototype/static/app.js
vendored
@@ -1423,8 +1423,8 @@ async function buildScenicRoute() {
|
||||
const geojson = { type: 'Feature', geometry: r.geometry, properties: {} };
|
||||
const sid = `scenic-src-${i}`;
|
||||
const lid = `scenic-line-${i}`;
|
||||
if (map.getSource(sid)) map.removeSource(sid);
|
||||
if (map.getLayer(lid)) map.removeLayer(lid);
|
||||
if (map.getSource(sid)) map.removeSource(sid);
|
||||
map.addSource(sid, { type: 'geojson', data: geojson });
|
||||
map.addLayer({
|
||||
id: lid, type: 'line', source: sid,
|
||||
@@ -1446,8 +1446,10 @@ async function buildScenicRoute() {
|
||||
const time = formatDuration(r.duration_s);
|
||||
const dirt = r.stats?.dirt_total_pct || '?';
|
||||
const pois = (r.scenic_pois || []).map(p => {
|
||||
const icon = {'natural=water':'💧','tourism=viewpoint':'👁','historic=ruins':'🏚','natural=peak':'🔺','natural=cave_entrance':'🕳','ford=yes':'🌊'}[p.type] || '📍';
|
||||
return `<div class="scenic-poi-item">${icon} ${p.name || p.type}</div>`;
|
||||
const SCENIC_LABELS = {'natural=water':'💧 Озёро','tourism=viewpoint':'👁 Смотровая','historic=ruins':'🏚 Руины','natural=peak':'🔺 Вершина','natural=cave_entrance':'🕳 Пещера','ford=yes':'🌊 Брод'};
|
||||
const label = SCENIC_LABELS[p.type] || '📍 ' + p.type;
|
||||
const name = p.name ? ` — ${p.name}` : '';
|
||||
return `<div class="scenic-poi-item">${label}${name}</div>`;
|
||||
}).join('');
|
||||
return `<div class="route-card ${i===activeScenicIdx?'active':''}" onclick="selectScenicRoute(${i})">
|
||||
<div class="route-card-header">
|
||||
|
||||
@@ -174,8 +174,9 @@
|
||||
<button onclick="setScenicKm(100)" class="scenic-km-btn active" data-km="100">100</button>
|
||||
<button onclick="setScenicKm(150)" class="scenic-km-btn" data-km="150">150</button>
|
||||
<button onclick="setScenicKm(200)" class="scenic-km-btn" data-km="200">200</button>
|
||||
<input type="number" id="scenic-custom-km" placeholder="км" min="20" max="500"
|
||||
style="width:60px; padding:3px 6px; font-size:12px; border:1px solid #ccc; border-radius:4px; text-align:center;" />
|
||||
<input type="number" id="scenic-custom-km" placeholder=".." min="20" max="500"
|
||||
style="width:44px; padding:3px 4px; font-size:12px; border:1px solid #ccc; border-radius:4px; text-align:center;"
|
||||
onchange="setScenicKm(+this.value||100)" />
|
||||
</div>
|
||||
</div>
|
||||
<button onclick="buildScenicRoute()" id="btn-build-scenic"
|
||||
|
||||
Reference in New Issue
Block a user