MeshDD-Bot/static/map.html
ppfeiffer 9e880a1f36 feat: v0.2.0 - Config YAML, theme toggle, hop map, channel names
- Central config.yaml with live-reload file watcher
- Configurable command prefix (default: /)
- Light/dark theme toggle with localStorage persistence
- Map: hop-based node coloring with legend, hover tooltips
- Dashboard: node long names, hop column, channel names in messages
- Load existing messages on WebSocket connect
- Weather fallback to Dresden center
- Remove version.py and pre-commit hook

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 14:07:51 +01:00

87 lines
2.7 KiB
HTML

<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>MeshDD-Bot Karte</title>
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" />
<style>
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Segoe UI', system-ui, sans-serif; }
#map { width: 100vw; height: 100vh; }
.node-tooltip { font-size: 13px; line-height: 1.6; }
.node-tooltip strong { color: #0f3460; }
.node-tooltip .label { color: #666; }
.node-tooltip-wrap { padding: 0; }
.node-tooltip-wrap .leaflet-tooltip-content { margin: 0; }
.legend {
background: rgba(255, 255, 255, 0.95);
padding: 10px 14px;
border-radius: 6px;
box-shadow: 0 2px 8px rgba(0,0,0,0.3);
font-size: 13px;
line-height: 1.8;
}
.legend strong { display: block; margin-bottom: 4px; color: #333; }
.legend-item { display: flex; align-items: center; gap: 8px; }
.legend-dot {
width: 12px;
height: 12px;
border-radius: 50%;
border: 1px solid rgba(0,0,0,0.2);
flex-shrink: 0;
}
.status-bar {
position: fixed;
top: 10px;
right: 10px;
z-index: 1000;
background: rgba(26, 26, 46, 0.9);
color: #e0e0e0;
padding: 8px 14px;
border-radius: 6px;
font-size: 13px;
display: flex;
align-items: center;
gap: 8px;
}
.status-bar .dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: #ff5252;
}
.status-bar .dot.connected {
background: #00e676;
box-shadow: 0 0 6px #00e676;
}
.back-link {
position: fixed;
top: 10px;
left: 10px;
z-index: 1000;
background: rgba(26, 26, 46, 0.9);
color: #00d4ff;
padding: 8px 14px;
border-radius: 6px;
text-decoration: none;
font-size: 13px;
}
.back-link:hover { background: rgba(26, 26, 46, 1); }
</style>
</head>
<body>
<div id="map"></div>
<a href="/" class="back-link">Dashboard</a>
<div class="status-bar">
<span class="dot" id="statusDot"></span>
<span id="statusText">Verbinde...</span>
<span>|</span>
<span id="nodeCount">0 Nodes</span>
</div>
<script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"></script>
<script src="/static/js/map.js"></script>
</body>
</html>