added bluer screen if PLC disconected
This commit is contained in:
parent
b1d69f1697
commit
f0ffdf9296
36
main.go
36
main.go
|
|
@ -2056,6 +2056,22 @@ const uiHTML = `<!DOCTYPE html>
|
||||||
font-size: 0.8rem;
|
font-size: 0.8rem;
|
||||||
color: #a1a1aa;
|
color: #a1a1aa;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.process-offline {
|
||||||
|
opacity: 0.35;
|
||||||
|
filter: grayscale(1) blur(1.5px);
|
||||||
|
pointer-events: none;
|
||||||
|
user-select: none;
|
||||||
|
transition: opacity 180ms ease, filter 180ms ease;
|
||||||
|
}
|
||||||
|
|
||||||
|
.process-online {
|
||||||
|
opacity: 1;
|
||||||
|
filter: none;
|
||||||
|
pointer-events: auto;
|
||||||
|
user-select: auto;
|
||||||
|
transition: opacity 180ms ease, filter 180ms ease;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body data-theme="dark">
|
<body data-theme="dark">
|
||||||
|
|
@ -2095,6 +2111,7 @@ const uiHTML = `<!DOCTYPE html>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div id="process-content">
|
||||||
{{if .ShowVerdict}}
|
{{if .ShowVerdict}}
|
||||||
<div id="verdict-card" class="verdict-card neutral mb-8">
|
<div id="verdict-card" class="verdict-card neutral mb-8">
|
||||||
<div>
|
<div>
|
||||||
|
|
@ -2647,6 +2664,21 @@ const uiHTML = `<!DOCTYPE html>
|
||||||
return 'ok';
|
return 'ok';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function setProcessVisualState(connected) {
|
||||||
|
const el = document.getElementById('process-content');
|
||||||
|
if (!el) return;
|
||||||
|
|
||||||
|
if (connected) {
|
||||||
|
el.classList.remove('process-offline');
|
||||||
|
el.classList.add('process-online');
|
||||||
|
} else {
|
||||||
|
el.classList.remove('process-online');
|
||||||
|
el.classList.add('process-offline');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function setConnectionIndicator(connected, stale) {
|
function setConnectionIndicator(connected, stale) {
|
||||||
const dot = document.getElementById('dot');
|
const dot = document.getElementById('dot');
|
||||||
const text = document.getElementById('status-text');
|
const text = document.getElementById('status-text');
|
||||||
|
|
@ -3035,6 +3067,7 @@ const uiHTML = `<!DOCTYPE html>
|
||||||
}
|
}
|
||||||
|
|
||||||
setConnectionIndicator(connected, stale);
|
setConnectionIndicator(connected, stale);
|
||||||
|
setProcessVisualState(connected && !stale);
|
||||||
|
|
||||||
if (SHOW_GAUGES) {
|
if (SHOW_GAUGES) {
|
||||||
setTextBySelector('#digital-l .percent', leftPercent.toFixed(1));
|
setTextBySelector('#digital-l .percent', leftPercent.toFixed(1));
|
||||||
|
|
@ -3063,6 +3096,7 @@ const uiHTML = `<!DOCTYPE html>
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.warn('Live fetch error:', err);
|
console.warn('Live fetch error:', err);
|
||||||
setConnectionIndicator(false, false);
|
setConnectionIndicator(false, false);
|
||||||
|
setProcessVisualState(false);
|
||||||
updateSummaryBar(false, false, 0, 0, 0);
|
updateSummaryBar(false, false, 0, 0, 0);
|
||||||
updateMachineVerdict(false, false, 0, 0, 0);
|
updateMachineVerdict(false, false, 0, 0, 0);
|
||||||
updateAlarmBanner(0, 0, 0, false, false);
|
updateAlarmBanner(0, 0, 0, false, false);
|
||||||
|
|
@ -3365,6 +3399,8 @@ const uiHTML = `<!DOCTYPE html>
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setProcessVisualState(false);
|
||||||
|
|
||||||
fetchLiveData();
|
fetchLiveData();
|
||||||
fetchHistory();
|
fetchHistory();
|
||||||
fetchTrend();
|
fetchTrend();
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue