WIP: Kabelstrecken wird deaktiviert beim neuladen der Seite

This commit is contained in:
ISA
2025-08-21 14:00:09 +02:00
parent f11f64d4d7
commit e7192a7623
7 changed files with 49 additions and 31 deletions

View File

@@ -1,6 +1,29 @@
// /redux/slices/database7polylines/polylineLayerVisibleSlice.js
import { createSlice } from "@reduxjs/toolkit";
// Thunk to initialize polyline visibility from localStorage using mapId/userId from URL
export const initializePolylineFromLocalStorageThunk = () => dispatch => {
try {
const params = new URLSearchParams(window.location.search);
const mapId = params.get("m");
const userId = params.get("u");
if (mapId && userId) {
const key = `polylineVisible_m${mapId}_u${userId}`;
const stored = localStorage.getItem(key);
const visible = stored === "true";
dispatch(initializePolylineFromLocalStorage(visible));
// Optional: log for debugging
console.log(
`Redux: Initialized polyline visibility from localStorage key '${key}':`,
visible
);
}
} catch (e) {
console.error("Error initializing polyline visibility from localStorage:", e);
}
};
const initialState = {
visible: false, // Standardwert - wird in der Komponente aus localStorage überschrieben
isInitialized: false, // Flag um zu verfolgen, ob der Wert aus localStorage geladen wurde
@@ -13,7 +36,18 @@ const polylineLayerVisibleSlice = createSlice({
setPolylineVisible: (state, action) => {
state.visible = action.payload;
state.isInitialized = true;
localStorage.setItem("polylineVisible", action.payload.toString());
// Save to localStorage using mapId/userId key
try {
const params = new URLSearchParams(window.location.search);
const mapId = params.get("m");
const userId = params.get("u");
if (mapId && userId) {
const key = `polylineVisible_m${mapId}_u${userId}`;
localStorage.setItem(key, action.payload.toString());
}
} catch (e) {
// fallback: do nothing
}
console.log("💾 Redux: setPolylineVisible called with:", action.payload);
},
initializePolylineFromLocalStorage: (state, action) => {