diff --git a/srv/poe_manager/templates/index.html b/srv/poe_manager/templates/index.html
index af836d4..bb8c856 100644
--- a/srv/poe_manager/templates/index.html
+++ b/srv/poe_manager/templates/index.html
@@ -34,7 +34,7 @@
document.addEventListener("DOMContentLoaded", () => {
const intervalMinutes = {{ interval | int }};
const intervalMilliseconds = intervalMinutes * 60 * 1000;
- let lastUpdateTime = Date.now(); // Startpunkt beim Laden der Seite
+ let lastUpdateTime = Date.now(); // Standard: jetzt
let reloadCountdown = null;
let reloadTriggered = false;
@@ -47,12 +47,14 @@ document.addEventListener("DOMContentLoaded", () => {
// Haupt-Timer läuft
const remainingSec = Math.ceil((intervalMilliseconds - elapsed) / 1000);
timerElem.innerText = `Nächste Prüfung in ${remainingSec} Sekunden`;
+ timerElem.classList.remove("reload");
} else {
// Haupt-Timer abgelaufen → Reload-Timer starten
- if (reloadCountdown === null) reloadCountdown = 10; // 10 Sekunden Countdown
+ if (reloadCountdown === null) reloadCountdown = 10;
if (!reloadTriggered) {
timerElem.innerText = `Aktualisieren der Seite in ${reloadCountdown} Sekunden`;
+ timerElem.classList.add("reload");
reloadCountdown--;
if (reloadCountdown < 0) {
@@ -63,7 +65,6 @@ document.addEventListener("DOMContentLoaded", () => {
}
}
- // Initiale Synchronisierung mit letzter Log-Zeit optional
function fetchLastLog() {
fetch("{{ url_for('get_log') }}")
.then(response => response.text())
@@ -81,9 +82,12 @@ document.addEventListener("DOMContentLoaded", () => {
const match = firstLine.match(/^(\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})/);
if (match) {
const logTime = new Date(match[1]).getTime();
- // Nur Offset setzen, damit Haupt-Timer beim Laden nicht sofort abläuft
- const offset = Math.min(Date.now() - logTime, intervalMilliseconds);
- lastUpdateTime = Date.now() - offset;
+ // Wenn Log älter als Intervall → Timer jetzt starten
+ if (Date.now() - logTime < intervalMilliseconds) {
+ lastUpdateTime = logTime;
+ } else {
+ lastUpdateTime = Date.now();
+ }
}
}
})