From bed9ce7772acd858cf263ddea46587ecdd432d61 Mon Sep 17 00:00:00 2001 From: Ismail Ali Date: Thu, 6 Mar 2025 20:11:24 +0100 Subject: [PATCH] feat: Automatische Aktivierung von TALAS Meldestation bei Aktivierung der Kabelstrecken-Checkbox MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Wenn die Checkbox "Kabelstrecken" aktiviert wird, wird automatisch die Checkbox "TALAS Meldestation" ebenfalls aktiviert. - Status-Synchronisierung erfolgt über Redux und localStorage. - TALAS Meldestation kann weiterhin unabhängig deaktiviert werden. - Wenn die TALAS-Checkbox aktiviert wird, beeinflusst das nicht die Kabelstrecken. - Stellt sicher, dass bei aktivierten Kabelstrecken die zugehörigen TALAS-Stationen immer sichtbar sind. --- components/DataSheet.js | 26 ++++++++++++-------------- config/appVersion.js | 2 +- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/components/DataSheet.js b/components/DataSheet.js index 175f966ed..9d5c2f81b 100644 --- a/components/DataSheet.js +++ b/components/DataSheet.js @@ -31,6 +31,16 @@ function DataSheet() { const checked = event.target.checked; dispatch(setPolylineVisible(checked)); localStorage.setItem("polylineVisible", checked); + + if (checked) { + // Wenn Kabelstrecken aktiviert wird, TALAS automatisch auch aktivieren + const newMapLayersVisibility = { + ...mapLayersVisibility, + TALAS: true, + }; + setMapLayersVisibility(newMapLayersVisibility); + localStorage.setItem("mapLayersVisibility", JSON.stringify(newMapLayersVisibility)); + } }; const [bereicheVisible, setBereicheVisible] = useState(false); // NEU: Bereiche-Status @@ -100,27 +110,15 @@ function DataSheet() { }, [GisStationsStaticDistrict, GisSystemStatic]); const handleCheckboxChange = (key, event) => { - if (editMode) return; // Checkbox deaktiviert bei aktivem EditMode + if (editMode) return; const { checked } = event.target; - // Aktualisiere `polylineVisible` separat - if (key === "TALAS" && !checked) { - setPolylineVisible(false); // Setze den Zustand von Kabelstrecken auf false - localStorage.setItem("polylineVisible", false); // Synchronisiere mit localStorage - } - - // Aktualisiere `mapLayersVisibility` setMapLayersVisibility((prev) => { - const newState = { - ...prev, - [key]: checked, - }; - + const newState = { ...prev, [key]: checked }; localStorage.setItem("mapLayersVisibility", JSON.stringify(newState)); return newState; }); - // Manuell die Überprüfung der Marker aktualisieren setTimeout(() => { const event = new Event("visibilityChanged"); window.dispatchEvent(event); diff --git a/config/appVersion.js b/config/appVersion.js index 09b4a1c93..6dd28f216 100644 --- a/config/appVersion.js +++ b/config/appVersion.js @@ -1,2 +1,2 @@ // /config/appVersion -export const APP_VERSION = "1.1.12"; +export const APP_VERSION = "1.1.13";