WIP: polyline Slice visiblity
This commit is contained in:
@@ -40,40 +40,24 @@ function MapLayersControlPanel() {
|
||||
|
||||
const handlePolylineCheckboxChange = event => {
|
||||
const checked = event.target.checked;
|
||||
console.log("🖱️ Kabelstrecken checkbox clicked, new value:", checked);
|
||||
|
||||
// Beide localStorage-Variablen setzen für Kompatibilität
|
||||
setKabelstreckenVisible(checked);
|
||||
localStorage.setItem("kabelstreckenVisible", checked.toString());
|
||||
localStorage.setItem("polylineVisible", checked.toString()); // Auch die alte Variable setzen
|
||||
console.log("💾 Saved to localStorage as kabelstreckenVisible:", checked);
|
||||
console.log("💾 Saved to localStorage as polylineVisible:", checked);
|
||||
|
||||
// Redux für andere Teile der App aktualisieren
|
||||
localStorage.setItem("polylineVisible", checked.toString());
|
||||
dispatch(setPolylineVisible(checked));
|
||||
|
||||
// Event auslösen, damit andere Komponenten über die Änderung informiert werden
|
||||
setTimeout(() => {
|
||||
const event = new Event("polylineVisibilityChanged");
|
||||
window.dispatchEvent(event);
|
||||
console.log("📢 Event 'polylineVisibilityChanged' dispatched");
|
||||
}, 100);
|
||||
|
||||
// Wenn Kabelstrecken aktiviert wird, aktiviere automatisch auch TALAS (IdSystem 1)
|
||||
// Wenn aktiviert, TALAS aktivieren
|
||||
if (checked) {
|
||||
const talasKey = "system-1"; // TALAS hat IdSystem 1
|
||||
const talasKey = "system-1";
|
||||
dispatch(setLayerVisibility({ layer: talasKey, visibility: true }));
|
||||
|
||||
// Kartenspezifischer localStorage-Key verwenden
|
||||
const mapId = localStorage.getItem("currentMapId");
|
||||
const userId = localStorage.getItem("currentUserId");
|
||||
const mapStorageKey =
|
||||
mapId && userId ? `mapLayersVisibility_m${mapId}_u${userId}` : "mapLayersVisibility";
|
||||
|
||||
const updatedVisibility = { ...mapLayersVisibility, [talasKey]: true };
|
||||
localStorage.setItem(mapStorageKey, JSON.stringify(updatedVisibility));
|
||||
|
||||
console.log("🔗 Kabelstrecken aktiviert → TALAS automatisch aktiviert");
|
||||
}
|
||||
};
|
||||
|
||||
@@ -221,35 +205,23 @@ function MapLayersControlPanel() {
|
||||
const handleCheckboxChange = (key, event) => {
|
||||
if (editMode) return;
|
||||
const { checked } = event.target;
|
||||
|
||||
dispatch(setLayerVisibility({ layer: key, visibility: checked }));
|
||||
|
||||
// Kartenspezifischer localStorage-Key verwenden
|
||||
const mapId = localStorage.getItem("currentMapId");
|
||||
const userId = localStorage.getItem("currentUserId");
|
||||
const mapStorageKey =
|
||||
mapId && userId ? `mapLayersVisibility_m${mapId}_u${userId}` : "mapLayersVisibility";
|
||||
|
||||
localStorage.setItem(mapStorageKey, JSON.stringify({ ...mapLayersVisibility, [key]: checked }));
|
||||
|
||||
// Wenn TALAS (system-1) deaktiviert wird, deaktiviere automatisch auch Kabelstrecken
|
||||
// Wenn TALAS (system-1) deaktiviert wird, Kabelstrecken deaktivieren
|
||||
if (key === "system-1" && !checked) {
|
||||
console.log("🔗 TALAS deaktiviert → Kabelstrecken automatisch deaktiviert");
|
||||
|
||||
// Kabelstrecken deaktivieren
|
||||
setKabelstreckenVisible(false);
|
||||
localStorage.setItem("kabelstreckenVisible", "false");
|
||||
localStorage.setItem("polylineVisible", "false");
|
||||
dispatch(setPolylineVisible(false));
|
||||
|
||||
// Event für Kabelstrecken auslösen
|
||||
setTimeout(() => {
|
||||
const polylineEvent = new Event("polylineVisibilityChanged");
|
||||
window.dispatchEvent(polylineEvent);
|
||||
console.log("📢 Event 'polylineVisibilityChanged' dispatched (auto-deactivated)");
|
||||
}, 50);
|
||||
}
|
||||
|
||||
setTimeout(() => {
|
||||
const event = new Event("visibilityChanged");
|
||||
window.dispatchEvent(event);
|
||||
|
||||
Reference in New Issue
Block a user