feat: Neustart erforderlich für Änderungen an Netzwerkeinstellungen oder CPL-Namen in Systemeinstellungen Modal

This commit is contained in:
ISA
2024-11-11 12:18:54 +01:00
parent 7a4d4f7416
commit ee24ab75e5

View File

@@ -105,19 +105,24 @@ function SettingModal({ showModal, onClose }) {
const handleSubmit = () => { const handleSubmit = () => {
const changes = {}; const changes = {};
let networkChanges = false;
// Überprüfe, welche Werte sich geändert haben // Überprüfe, welche Werte sich geändert haben //reboot Bei Netzwerk und Name ja, Bei NTP nicht
if (name !== originalValues.name) { if (name !== originalValues.name) {
changes.SNNA = name; changes.SNNA = name;
networkChanges = true;
} }
if (ip !== originalValues.ip) { if (ip !== originalValues.ip) {
changes.SEI01 = ip; changes.SEI01 = ip;
networkChanges = true;
} }
if (subnet !== originalValues.subnet) { if (subnet !== originalValues.subnet) {
changes.SEI02 = subnet; changes.SEI02 = subnet;
networkChanges = true;
} }
if (gateway !== originalValues.gateway) { if (gateway !== originalValues.gateway) {
changes.SEI03 = gateway; changes.SEI03 = gateway;
networkChanges = true;
} }
if (ntp1 !== originalValues.ntp1) { if (ntp1 !== originalValues.ntp1) {
changes.SNIP1 = ntp1; changes.SNIP1 = ntp1;
@@ -137,7 +142,6 @@ function SettingModal({ showModal, onClose }) {
// Falls Änderungen vorhanden sind, sende die neuen Daten // Falls Änderungen vorhanden sind, sende die neuen Daten
if (Object.keys(changes).length > 0) { if (Object.keys(changes).length > 0) {
// Get the current path and ensure it ends with ".html"
let currentPath = window.location.pathname; let currentPath = window.location.pathname;
if (!currentPath.endsWith(".html")) { if (!currentPath.endsWith(".html")) {
currentPath += ".html"; currentPath += ".html";
@@ -150,22 +154,20 @@ function SettingModal({ showModal, onClose }) {
url += `&${paramKey}=${encodeURIComponent(changes[paramKey])}`; url += `&${paramKey}=${encodeURIComponent(changes[paramKey])}`;
}); });
// Log the full URL to the console for debugging
console.log(url);
// Send the URL with changes to the server // Send the URL with changes to the server
fetch(url, { method: "GET" }) fetch(url, { method: "GET" }).catch((error) => {
.then((response) => { console.error("Fehler beim Senden der Daten:", error);
if (response.ok) { });
alert("Daten erfolgreich gesendet!");
} else { alert("Daten erfolgreich gesendet!");
//alert("Fehler beim Senden der Daten!"); //es wird ausgeführt aber kein Antwort deswegen auskommentiert
} // Zeige Hinweis unabhängig von der fetch-Antwort
}) if (networkChanges) {
.catch((error) => { alert(
console.error("Fehler:", error); "Hinweis: Die Änderungen in CPL-Name und den Netzwerkeinstellungen werden erst nach einem Neustart des CPL wirksam."
// alert("Fehler beim Senden der Daten!"); //es wird ausgeführt aber kein Antwort deswegen auskommentiert );
}); handleReboot(); //confirm ist schon in handleReboot
}
} else { } else {
alert("Keine Änderungen vorgenommen."); alert("Keine Änderungen vorgenommen.");
} }
@@ -262,6 +264,7 @@ function SettingModal({ showModal, onClose }) {
setSystemUhr(datetime_Redux || ""); setSystemUhr(datetime_Redux || "");
}, [datetime_Redux]); }, [datetime_Redux]);
//--------------------------------------------------- //---------------------------------------------------
return ( return (
<> <>
<ReactModal <ReactModal
@@ -449,18 +452,6 @@ function SettingModal({ showModal, onClose }) {
</div> </div>
</div> </div>
{/* Datenbank leeren und Neustart CPL */}
{/*
<div className="flex flex-col items-start justify-between mt-4 space-y-2">
<button
className="bg-littwin-blue text-white px-4 py-2 rounded"
onClick={() => handleReboot()}
>
Neustart CPL
</button>
</div>
*/}
{/* Modal Footer */} {/* Modal Footer */}
<div className="flex justify-between mt-4"> <div className="flex justify-between mt-4">
<button <button