diff --git a/components/MapComponent.js b/components/MapComponent.js index 0721c88f6..33c06c3e9 100644 --- a/components/MapComponent.js +++ b/components/MapComponent.js @@ -45,6 +45,7 @@ import { disablePolylineEvents, enablePolylineEvents } from "../utils/setupPolyl import { updateLocation } from "../utils/updateBereichUtil"; import { usePolylineTooltipLayer } from "../hooks/usePolylineTooltipLayer"; import { useFetchLineStatusData } from "../hooks/useFetchLineStatusData"; +import { useFetchPriorityConfig } from "../hooks/useFetchPriorityConfig"; //-------------------------------------------- import { currentPoiState } from "../redux/slices/currentPoiSlice.js"; import { selectGisStationsStaticDistrict, setGisStationsStaticDistrict } from "../redux/slices/gisStationsStaticDistrictSlice"; @@ -528,22 +529,7 @@ const MapComponent = ({ locations, onLocationUpdate, lineCoordinates }) => { }, [map, poiLayerRef, isPoiTypLoaded, menuItemAdded, hasRights, isRightsLoaded]); //-------------------------------------------- // rote Marker ganz oben wenn überlappen sind - useEffect(() => { - const fetchPriorityConfig = async () => { - try { - const res = await fetch("/api/talas_v5_DB/priorityConfig"); - if (!res.ok) { - throw new Error(`HTTP error! status: ${res.status}`); - } - const data = await res.json(); - setPriorityConfig(data); - } catch (error) { - console.error("Failed to load priority configuration:", error); - } - }; - - fetchPriorityConfig(); - }, []); + useFetchPriorityConfig(setPriorityConfig); //-------------------------------------------- useEffect(() => { if (mapRef.current && !map) { diff --git a/hooks/useFetchPriorityConfig.js b/hooks/useFetchPriorityConfig.js new file mode 100644 index 000000000..6e7ef69f4 --- /dev/null +++ b/hooks/useFetchPriorityConfig.js @@ -0,0 +1,20 @@ +import { useEffect } from "react"; + +export const useFetchPriorityConfig = (setPriorityConfig) => { + useEffect(() => { + const fetchPriorityConfig = async () => { + try { + const res = await fetch("/api/talas_v5_DB/priorityConfig"); + if (!res.ok) { + throw new Error(`HTTP error! status: ${res.status}`); + } + const data = await res.json(); + setPriorityConfig(data); + } catch (error) { + console.error("Failed to load priority configuration:", error); + } + }; + + fetchPriorityConfig(); + }, [setPriorityConfig]); +};