/** * Holt Benutzerrechte aus TALAS-Webservice oder aus Mocks. * * @returns {Promise} Rechte-Array * @throws {Error} bei Lade- oder Strukturfehler */ export const fetchUserRightsService = async () => { const useMocks = process.env.NEXT_PUBLIC_USE_MOCKS === "true"; const basePath = process.env.NEXT_PUBLIC_BASE_PATH || ""; if (useMocks) { console.log("🧪 Mock-Modus aktiviert: fetchUserRightsService"); const response = await fetch("/api/mocks/webservice/gisSystemStatic"); //gisSystemStatic enthält die Systeme (Systems) und die User Rechte (Rights) if (!response.ok) { throw new Error("Mockdaten konnten nicht geladen werden"); } const mockData = await response.json(); return mockData.Rights || []; } else { const baseUrl = `${window.location.protocol}//${window.location.hostname}:80${basePath}/ClientData/WebServiceMap.asmx`; const params = new URLSearchParams(window.location.search); const idMap = params.get("m"); const idUser = params.get("u"); const url = `${baseUrl}/GisSystemStatic?idMap=${idMap}&idUser=${idUser}`; console.log("🔍 Rechte-Fetch URL:", url); const response = await fetch(url, { method: "GET", headers: { Connection: "close", }, }); if (!response.ok) { throw new Error("Fehler beim Abrufen der Benutzerrechte"); } const json = await response.json(); console.log("👤 Rechte-Response JSON:", json); return json.Rights || []; } };