Admin angepasst

This commit is contained in:
2026-05-28 08:37:14 +02:00
parent abfc8be412
commit 7a9e0ae62e
3 changed files with 506 additions and 64 deletions
+212 -48
View File
@@ -154,42 +154,162 @@
<span class="p-lbl">Systemstatus</span>
<span class="p-tag">Telemetry</span>
</div>
<div class="ss-hdr"><div class="ss-hdr-line"></div><span class="ss-hdr-txt">Netzwerk</span><div class="ss-hdr-line"></div></div>
<div class="sr">
<span class="sr-led led-ok"></span>
<span class="sr-key">WLAN</span>
<span class="sr-val" id="info_wifi">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Signal</span>
<span class="sr-val" id="info_wifi_signal">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">IP</span>
<span class="sr-val" id="info_ips">-</span>
</div>
<div class="ss-hdr"><div class="ss-hdr-line"></div><span class="ss-hdr-txt">Hardware</span><div class="ss-hdr-line"></div></div>
<div class="sr sr-gauge gauge-temp">
<span class="sr-key">Temp</span>
<div class="gauge"><div class="gauge-fill" id="bar-temp-adm"></div></div>
<span class="gauge-num" id="info_temp">--</span>
</div>
<div class="sr">
<span class="sr-led led-off"></span>
<span class="sr-key">Spannung</span>
<span class="sr-val" id="info_undervoltage">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Uptime</span>
<span class="sr-val" id="info_uptime">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Disk frei</span>
<span class="sr-val" id="info_disk">-</span>
<div class="systemstatus-grid">
<div class="systemstatus-section">
<div class="ss-hdr"><div class="ss-hdr-line"></div><span class="ss-hdr-txt">Netzwerk</span><div class="ss-hdr-line"></div></div>
<div class="sr">
<span class="sr-led led-ok"></span>
<span class="sr-key">WLAN</span>
<span class="sr-val" id="info_wifi">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">SSID</span>
<span class="sr-val" id="info_wifi_ssid">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Signal</span>
<span class="sr-val" id="info_wifi_signal">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Signal dBm</span>
<span class="sr-val" id="info_wifi_signal_dbm">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Kanal</span>
<span class="sr-val" id="info_wifi_channel">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Frequenz</span>
<span class="sr-val" id="info_wifi_frequency">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">IP</span>
<span class="sr-val" id="info_ips">-</span>
</div>
</div>
<div class="systemstatus-section">
<div class="ss-hdr"><div class="ss-hdr-line"></div><span class="ss-hdr-txt">System</span><div class="ss-hdr-line"></div></div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Pi-Modell</span>
<span class="sr-val" id="info_pi_model">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Hostname</span>
<span class="sr-val" id="info_hostname">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Kernel</span>
<span class="sr-val" id="info_kernel">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Pi-Zeit</span>
<span class="sr-val" id="info_system_time">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Zeitzone</span>
<span class="sr-val" id="info_system_timezone">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Zeit-Sync</span>
<span class="sr-val" id="info_time_sync">-</span>
</div>
</div>
<div class="systemstatus-section">
<div class="ss-hdr"><div class="ss-hdr-line"></div><span class="ss-hdr-txt">Hardware</span><div class="ss-hdr-line"></div></div>
<div class="sr sr-gauge gauge-temp">
<span class="sr-key">Temp</span>
<div class="gauge"><div class="gauge-fill" id="bar-temp-adm"></div></div>
<span class="gauge-num" id="info_temp">--</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">GPU-/SoC-Temp</span>
<span class="sr-val" id="info_gpu_temp">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">CPU gesamt</span>
<span class="sr-val" id="info_cpu_usage">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">CPU Kerne</span>
<span class="sr-val" id="info_cpu_per_core">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">RAM</span>
<span class="sr-val" id="info_memory_details">-</span>
</div>
<div class="sr">
<span class="sr-led led-off"></span>
<span class="sr-key">Spannung</span>
<span class="sr-val" id="info_undervoltage">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Throttling</span>
<span class="sr-val" id="info_throttling">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Uptime</span>
<span class="sr-val" id="info_uptime">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Load 1/5/15</span>
<span class="sr-val" id="info_load_average">-</span>
</div>
</div>
<div class="systemstatus-section">
<div class="ss-hdr"><div class="ss-hdr-line"></div><span class="ss-hdr-txt">Speicher & Container</span><div class="ss-hdr-line"></div></div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Root-Dateisystem</span>
<span class="sr-val" id="info_disk_root">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Docker-Speicher</span>
<span class="sr-val" id="info_disk_docker">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Inodes frei</span>
<span class="sr-val" id="info_inode_free">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Container-Uptime</span>
<span class="sr-val" id="info_container_uptime">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Container-Restarts</span>
<span class="sr-val" id="info_container_restarts">-</span>
</div>
<div class="sr">
<span class="sr-led led-blue"></span>
<span class="sr-key">Disk frei</span>
<span class="sr-val" id="info_disk">-</span>
</div>
</div>
</div>
</div>
</div>
@@ -784,10 +904,31 @@
function clearAdminApiDisplay() {
setText('info_ips', '--');
setText('info_wifi', '--');
setText('info_wifi_ssid', '--');
setText('info_wifi_signal', '--');
setText('info_wifi_signal_dbm', '--');
setText('info_wifi_channel', '--');
setText('info_wifi_frequency', '--');
setText('info_pi_model', '--');
setText('info_hostname', '--');
setText('info_kernel', '--');
setText('info_system_time', '--');
setText('info_system_timezone', '--');
setText('info_time_sync', '--');
setText('info_temp', '--');
setText('info_gpu_temp', '--');
setText('info_cpu_usage', '--');
setText('info_cpu_per_core', '--');
setText('info_memory_details', '--');
setText('info_uptime', '--');
setText('info_disk', '--');
setText('info_disk_root', '--');
setText('info_disk_docker', '--');
setText('info_inode_free', '--');
setText('info_load_average', '--');
setText('info_throttling', '--');
setText('info_container_uptime', '--');
setText('info_container_restarts', '--');
setUndervoltageState('info_undervoltage', '--', 'unknown');
setServiceState('service_camera', '-');
setServiceState('camera_service_state', '-');
@@ -2285,20 +2426,43 @@
}
function renderStatus(data) {
var system = data.system || {};
var services = data.services || {};
setAdminStatus(data.status || 'Bereit');
setText('info_ips', data.system && data.system.ips);
setText('info_wifi', data.system && data.system.wifi);
setText('info_wifi_signal', data.system && data.system.wifi_signal);
setText('info_temp', data.system && data.system.cpu_temperature);
setText('info_ips', system.ips);
setText('info_wifi', system.wifi);
setText('info_wifi_ssid', system.wifi_ssid);
setText('info_wifi_signal', system.wifi_signal);
setText('info_wifi_signal_dbm', system.wifi_signal_dbm);
setText('info_wifi_channel', system.wifi_channel);
setText('info_wifi_frequency', system.wifi_frequency);
setText('info_pi_model', system.pi_model);
setText('info_hostname', system.hostname);
setText('info_kernel', system.kernel_version);
setText('info_system_time', system.system_time);
setText('info_system_timezone', system.system_timezone);
setText('info_time_sync', 'NTP: ' + (system.ntp_sync || '--') + ' | Uhr: ' + (system.clock_sync || '--'));
setText('info_temp', system.cpu_temperature);
setText('info_gpu_temp', system.gpu_temperature);
setText('info_cpu_usage', system.cpu_usage);
setText('info_cpu_per_core', system.cpu_usage_per_core);
setText('info_memory_details', system.memory_details || system.memory_usage);
var bar = document.getElementById('bar-temp-adm');
if (bar && data.system) bar.style.width = temperatureToWidth(data.system.cpu_temperature);
setUndervoltageState('info_undervoltage', data.system && data.system.undervoltage, data.system && data.system.undervoltage_state);
setText('info_uptime', data.system && data.system.uptime);
setText('info_disk', data.system && data.system.disk_free);
setServiceState('service_camera', data.services && data.services.camera);
setServiceState('camera_service_state', data.services && data.services.camera);
setServiceState('service_admin_api', data.services && data.services.admin_api);
setServiceState('service_exomy', data.services && data.services.exomy);
if (bar) bar.style.width = temperatureToWidth(system.cpu_temperature);
setUndervoltageState('info_undervoltage', system.undervoltage, system.undervoltage_state);
setText('info_throttling', system.throttling_details);
setText('info_uptime', system.uptime);
setText('info_load_average', system.load_average);
setText('info_disk', system.disk_free);
setText('info_disk_root', system.disk_root);
setText('info_disk_docker', system.disk_docker);
setText('info_inode_free', system.inode_free);
setText('info_container_uptime', services.exomy_uptime);
setText('info_container_restarts', services.exomy_restarts);
setServiceState('service_camera', services.camera);
setServiceState('camera_service_state', services.camera);
setServiceState('service_admin_api', services.admin_api);
setServiceState('service_exomy', services.exomy);
}
async function fetchStatus() {
+19
View File
@@ -975,6 +975,24 @@ body.page-admin .ss-hdr{
}
body.page-admin .ss-hdr-line{ flex:1; height:1px; background:repeating-linear-gradient(90deg, rgba(0,255,145,.22) 0, rgba(0,255,145,.22) 3px, transparent 3px, transparent 6px); }
body.page-admin .ss-hdr-txt{ font-size:7px; letter-spacing:4px; color:rgba(210,255,235,.9); text-transform:uppercase; }
body.page-admin .systemstatus-grid{
display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:12px;
padding:12px;
}
body.page-admin .systemstatus-section{
min-width:0;
border:1px solid rgba(0,255,145,.08);
background:rgba(0,255,145,.025);
}
body.page-admin .systemstatus-section .ss-hdr{
margin:0;
border-top:none;
}
body.page-admin .systemstatus-section .sr:last-child{
border-bottom:none;
}
/* ── GAUGE ──────────────────────────────────────── */
body.page-admin .sr-gauge{ padding-bottom:6px; }
@@ -1595,6 +1613,7 @@ body.page-admin .leaflet-popup-tip{
body.page-admin .drive-estimator-value{ font-size:28px; }
body.page-admin .drive-calibration-toolbar{ flex-direction:column; align-items:stretch; }
body.page-admin .drive-calibration-grid{ grid-template-columns:1fr; }
body.page-admin .systemstatus-grid{ grid-template-columns:1fr; }
body.page-admin .admin-section-grid_map{ grid-template-columns:1fr; }
body.page-admin .admin-section-grid_gps{ grid-template-columns:1fr; }
body.page-admin .map-panel{ min-height:0; }