NTP, send Voltage to Frontend
This commit is contained in:
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
<!doctype html>
|
||||
<!DOCTYPE html>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<!-- Meta Tags -->
|
||||
@@ -255,6 +255,7 @@
|
||||
<div>IP-Adresse: <span id="ipAddress">Laden...</span></div>
|
||||
<div>Kanal: <span id="channel">Laden...</span></div>
|
||||
<div>MAC-Adresse: <span id="macAddress">Laden...</span></div>
|
||||
<div>Internet: <span id="isOnline">Laden...</span></div>
|
||||
<div>Freier Speicher: <span id="freeMemory">Laden...</span></div>
|
||||
<div>
|
||||
Verbundene Buttons: <span id="connectedButtons">Laden...</span>
|
||||
@@ -325,8 +326,9 @@
|
||||
minute: "2-digit",
|
||||
second: "2-digit",
|
||||
});
|
||||
document.getElementById("currentTime").textContent =
|
||||
`System Zeit: ${timeString}`;
|
||||
document.getElementById(
|
||||
"currentTime"
|
||||
).textContent = `System Zeit: ${timeString}`;
|
||||
} else {
|
||||
document.getElementById("currentTime").textContent =
|
||||
"Aktuelle Zeit: Fehler beim Laden";
|
||||
@@ -356,7 +358,7 @@
|
||||
})
|
||||
.catch((error) => {
|
||||
console.log(
|
||||
"Zeit konnte nicht geladen werden, verwende Browser-Zeit",
|
||||
"Zeit konnte nicht geladen werden, verwende Browser-Zeit"
|
||||
);
|
||||
syncWithBrowserTime();
|
||||
});
|
||||
@@ -401,7 +403,7 @@
|
||||
}
|
||||
})
|
||||
.catch((error) =>
|
||||
showMessage("Verbindungsfehler beim Setzen der Zeit", "error"),
|
||||
showMessage("Verbindungsfehler beim Setzen der Zeit", "error")
|
||||
);
|
||||
}
|
||||
|
||||
@@ -438,7 +440,7 @@
|
||||
}
|
||||
})
|
||||
.catch((error) =>
|
||||
showMessage("Verbindungsfehler beim Setzen der Zeit", "error"),
|
||||
showMessage("Verbindungsfehler beim Setzen der Zeit", "error")
|
||||
);
|
||||
});
|
||||
|
||||
@@ -459,7 +461,7 @@
|
||||
data.maxTimeDisplay || 20;
|
||||
})
|
||||
.catch((error) =>
|
||||
showMessage("Fehler beim Laden der Einstellungen", "error"),
|
||||
showMessage("Fehler beim Laden der Einstellungen", "error")
|
||||
);
|
||||
}
|
||||
|
||||
@@ -474,6 +476,9 @@
|
||||
data.channel || "Unbekannt";
|
||||
document.getElementById("macAddress").textContent =
|
||||
data.mac || "Unbekannt";
|
||||
document.getElementById("isOnline").textContent = data.isOnline
|
||||
? "Ja"
|
||||
: "Nein";
|
||||
document.getElementById("freeMemory").textContent =
|
||||
(data.freeMemory || 0) + " Bytes";
|
||||
document.getElementById("connectedButtons").textContent =
|
||||
@@ -499,7 +504,7 @@
|
||||
loadLocations();
|
||||
})
|
||||
.catch((error) =>
|
||||
showMessage("Fehler beim Laden der Lizenz", "error"),
|
||||
showMessage("Fehler beim Laden der Lizenz", "error")
|
||||
);
|
||||
}
|
||||
|
||||
@@ -537,7 +542,7 @@
|
||||
data.password || "";
|
||||
})
|
||||
.catch((error) =>
|
||||
showMessage("Fehler beim Laden der WLAN-Einstellungen", "error"),
|
||||
showMessage("Fehler beim Laden der WLAN-Einstellungen", "error")
|
||||
);
|
||||
}
|
||||
|
||||
@@ -559,7 +564,7 @@
|
||||
}
|
||||
if (
|
||||
!confirm(
|
||||
"Der Server wird nach dem setzten neu gestartet. Fortsetzten?",
|
||||
"Der Server wird nach dem setzten neu gestartet. Fortsetzten?"
|
||||
)
|
||||
) {
|
||||
return;
|
||||
@@ -570,19 +575,21 @@
|
||||
headers: {
|
||||
"Content-Type": "application/x-www-form-urlencoded",
|
||||
},
|
||||
body: `ssid=${encodeURIComponent(ssid)}&password=${encodeURIComponent(password)}`,
|
||||
body: `ssid=${encodeURIComponent(
|
||||
ssid
|
||||
)}&password=${encodeURIComponent(password)}`,
|
||||
})
|
||||
.then((response) => response.json())
|
||||
.then((data) => {
|
||||
if (data.success) {
|
||||
showMessage(
|
||||
"WLAN-Einstellungen erfolgreich gespeichert!",
|
||||
"success",
|
||||
"success"
|
||||
);
|
||||
} else {
|
||||
showMessage(
|
||||
data.error || "Fehler beim Speichern der WLAN-Einstellungen",
|
||||
"error",
|
||||
"error"
|
||||
);
|
||||
}
|
||||
})
|
||||
@@ -593,10 +600,10 @@
|
||||
function updateOTAButtonAccess(licenseLevel) {
|
||||
const otaButton = document.getElementById("otaUpdateBtn");
|
||||
const otarestrictionNotice = document.getElementById(
|
||||
"otaRestrictionNotice",
|
||||
"otaRestrictionNotice"
|
||||
);
|
||||
const otacurrentLevelSpan = document.getElementById(
|
||||
"currentLicenseLevel",
|
||||
"currentLicenseLevel"
|
||||
);
|
||||
|
||||
const level = parseInt(licenseLevel) || 0;
|
||||
@@ -625,14 +632,14 @@
|
||||
if (response.status === 200) {
|
||||
showMessage(
|
||||
"Buttons führen das Update erfolgreich aus!",
|
||||
"success",
|
||||
"success"
|
||||
);
|
||||
} else {
|
||||
showMessage("Fehler beim Senden der MQTT Message", "error");
|
||||
}
|
||||
})
|
||||
.catch((error) =>
|
||||
showMessage("Verbindungsfehler beim MQTT Publish", "error"),
|
||||
showMessage("Verbindungsfehler beim MQTT Publish", "error")
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -641,10 +648,10 @@
|
||||
const wifiSubmitBtn = document.getElementById("wifiSubmitBtn");
|
||||
const wifiForm = document.getElementById("wifiForm");
|
||||
const wifiRestrictionNotice = document.getElementById(
|
||||
"wifiRestrictionNotice",
|
||||
"wifiRestrictionNotice"
|
||||
);
|
||||
const wifiCurrentLevelSpan = document.getElementById(
|
||||
"currentLicenseLevel",
|
||||
"currentLicenseLevel"
|
||||
);
|
||||
|
||||
const level = parseInt(licenseLevel) || 0;
|
||||
@@ -679,14 +686,14 @@
|
||||
) {
|
||||
showMessage(
|
||||
"OTA Update erfordert Lizenz Level 2 oder höher",
|
||||
"error",
|
||||
"error"
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
if (
|
||||
confirm(
|
||||
"Möchten Sie wirklich ein OTA Update durchführen? Das Gerät wird während des Updates neu gestartet.",
|
||||
"Möchten Sie wirklich ein OTA Update durchführen? Das Gerät wird während des Updates neu gestartet."
|
||||
)
|
||||
) {
|
||||
window.location.href = "/update";
|
||||
@@ -701,7 +708,7 @@
|
||||
|
||||
const maxTime = parseInt(document.getElementById("maxTime").value);
|
||||
const maxTimeDisplay = parseInt(
|
||||
document.getElementById("maxTimeDisplay").value,
|
||||
document.getElementById("maxTimeDisplay").value
|
||||
);
|
||||
|
||||
fetch("/api/set-max-time", {
|
||||
@@ -720,7 +727,7 @@
|
||||
if (data.success) {
|
||||
showMessage(
|
||||
"Einstellungen erfolgreich gespeichert!",
|
||||
"success",
|
||||
"success"
|
||||
);
|
||||
} else {
|
||||
showMessage("Fehler beim Speichern der Einstellungen", "error");
|
||||
@@ -738,7 +745,7 @@
|
||||
if (data.success) {
|
||||
showMessage(
|
||||
"Beste Zeiten erfolgreich zurückgesetzt!",
|
||||
"success",
|
||||
"success"
|
||||
);
|
||||
} else {
|
||||
showMessage("Fehler beim Zurücksetzen", "error");
|
||||
@@ -786,8 +793,9 @@
|
||||
// Anlern-Anweisung aktualisieren
|
||||
function updateLearningInstruction() {
|
||||
if (learningStep < learningSteps.length) {
|
||||
document.getElementById("learningInstruction").innerHTML =
|
||||
`Drücken Sie jetzt den Button für: <strong>${learningSteps[learningStep]}</strong>`;
|
||||
document.getElementById(
|
||||
"learningInstruction"
|
||||
).innerHTML = `Drücken Sie jetzt den Button für: <strong>${learningSteps[learningStep]}</strong>`;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -814,7 +822,7 @@
|
||||
if (learningStep > 0) {
|
||||
showMessage(
|
||||
`${learningSteps[learningStep - 1]} erfolgreich angelernt!`,
|
||||
"success",
|
||||
"success"
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -836,13 +844,13 @@
|
||||
if (data.success) {
|
||||
showMessage(
|
||||
"Button-Zuweisungen erfolgreich zurückgesetzt!",
|
||||
"success",
|
||||
"success"
|
||||
);
|
||||
loadSystemInfo();
|
||||
} else {
|
||||
showMessage(
|
||||
"Fehler beim Zurücksetzen der Button-Zuweisungen",
|
||||
"error",
|
||||
"error"
|
||||
);
|
||||
}
|
||||
})
|
||||
@@ -857,22 +865,46 @@
|
||||
.then((data) => {
|
||||
let statusText = "Button-Status:\n\n";
|
||||
statusText += `Bahn 1 Start: ${
|
||||
data.lane1Start ? "Konfiguriert" : "Nicht konfiguriert"
|
||||
data.lane1Start
|
||||
? `Konfiguriert${
|
||||
data.lane1StartVoltage !== undefined
|
||||
? " (Batterystand: " + data.lane1StartVoltage + " %)"
|
||||
: ""
|
||||
}`
|
||||
: "Nicht konfiguriert"
|
||||
}\n`;
|
||||
statusText += `Bahn 1 Stop: ${
|
||||
data.lane1Stop ? "Konfiguriert" : "Nicht konfiguriert"
|
||||
data.lane1Stop
|
||||
? `Konfiguriert${
|
||||
data.lane1StopVoltage !== undefined
|
||||
? " (Batterystand: " + data.lane1StopVoltage + " %)"
|
||||
: ""
|
||||
}`
|
||||
: "Nicht konfiguriert"
|
||||
}\n`;
|
||||
statusText += `Bahn 2 Start: ${
|
||||
data.lane2Start ? "Konfiguriert" : "Nicht konfiguriert"
|
||||
data.lane2Start
|
||||
? `Konfiguriert${
|
||||
data.lane2StartVoltage !== undefined
|
||||
? " (Batterystand: " + data.lane2StartVoltage + " %)"
|
||||
: ""
|
||||
}`
|
||||
: "Nicht konfiguriert"
|
||||
}\n`;
|
||||
statusText += `Bahn 2 Stop: ${
|
||||
data.lane2Stop ? "Konfiguriert" : "Nicht konfiguriert"
|
||||
data.lane2Stop
|
||||
? `Konfiguriert${
|
||||
data.lane2StopVoltage !== undefined
|
||||
? " (Batterystand: " + data.lane2StopVoltage + " %)"
|
||||
: ""
|
||||
}`
|
||||
: "Nicht konfiguriert"
|
||||
}\n`;
|
||||
|
||||
alert(statusText);
|
||||
})
|
||||
.catch((error) =>
|
||||
showMessage("Fehler beim Laden des Button-Status", "error"),
|
||||
showMessage("Fehler beim Laden des Button-Status", "error")
|
||||
);
|
||||
}
|
||||
|
||||
@@ -925,7 +957,7 @@
|
||||
.catch((error) => {
|
||||
console.log(
|
||||
"Aktueller Standort konnte nicht geladen werden:",
|
||||
error,
|
||||
error
|
||||
);
|
||||
});
|
||||
}
|
||||
@@ -934,10 +966,10 @@
|
||||
function updateLocationAccess(licenseLevel) {
|
||||
const locationSubmitBtn = document.getElementById("locationSubmitBtn");
|
||||
const locationRestrictionNotice = document.getElementById(
|
||||
"locationRestrictionNotice",
|
||||
"locationRestrictionNotice"
|
||||
);
|
||||
const locationCurrentLevelSpan = document.getElementById(
|
||||
"currentLocationLicenseLevel",
|
||||
"currentLocationLicenseLevel"
|
||||
);
|
||||
const locationSelect = document.getElementById("locationSelect");
|
||||
|
||||
@@ -975,7 +1007,7 @@
|
||||
) {
|
||||
showMessage(
|
||||
"Standort-Konfiguration erfordert Lizenz Level 3 oder höher",
|
||||
"error",
|
||||
"error"
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user