// Datei: /config/config.js import * as urls from "../config/urls.js"; // Definieren der grundlegenden Umgebungseinstellungen und Konfigurationen der Karte const mapVersion = "0.5.3"; const standardSideMenu = true; const fullSideMenu = false; // Server-URL aus Umgebungsvariable holen (nur bei echter API benötigt) const mode = process.env.NEXT_PUBLIC_API_PORT_MODE; const serverURL = mode === "dev" ? `${window.location.protocol}//${window.location.hostname}:80` : `${window.location.origin}`; if (!serverURL && !isMockMode()) { throw new Error("Die Umgebungsvariable ist nicht gesetzt!"); } console.log("%c 1- serverURL in config:", "color: #006400;", serverURL); // Initialisieren von Variablen, die später im Browserkontext gesetzt werden let windowHeight, url_string, url, idMap, idUser; let mapGisStationsStaticDistrictUrl, mapGisStationsStatusDistrictUrl, mapGisStationsMeasurementsUrl, mapGisSystemStaticUrl, mapDataIconUrl, webserviceGisLinesStatusUrl; // Prüfen, ob Mock-Modus aktiv ist function isMockMode() { return process.env.NEXT_PUBLIC_USE_MOCK_API === "true"; } // URL-Setup - dynamisch abhängig von Mock oder Echtbetrieb if (typeof window !== "undefined") { windowHeight = window.innerHeight; url_string = window.location.href; url = new URL(url_string); console.log("%c 2- URL in config:", "color: #006400; font-size: 16px; background-color: #f0f0f0;", url); idMap = url.searchParams.get("m"); idUser = url.searchParams.get("u"); console.log(`4- Parameter 'idMap' : ${idMap}`); console.log(`5- Parameter 'idUser': ${idUser}`); if (isMockMode()) { // Mock-Daten jetzt über API-Endpunkte aus pages/api/mockData/webService/ mapGisStationsStaticDistrictUrl = "/api/mockData/webService/GisStationsStaticDistrictMock"; mapGisStationsStatusDistrictUrl = "/api/mockData/webService/GisStationsStatusDistrictMock"; mapGisStationsMeasurementsUrl = "/api/mockData/webService/GisStationsMeasurementsMock"; mapGisSystemStaticUrl = "/api/mockData/webService/GisSystemStaticMock"; mapDataIconUrl = "/api/mockData/webService/GetIconsStaticMock"; webserviceGisLinesStatusUrl = "/api/mockData/webService/GisLinesStatusMock"; console.log("📡 Mock-Mode aktiv: Daten werden aus /api/mockData/webService geladen."); } else { // Echte URLs zur Webservice-API mapGisStationsStaticDistrictUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsStaticDistrict?idMap=${idMap}&idUser=${idUser}`; mapGisStationsStatusDistrictUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsStatusDistrict?idMap=${idMap}&idUser=${idUser}`; mapGisStationsMeasurementsUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisStationsMeasurements?idMap=${idMap}`; mapGisSystemStaticUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GisSystemStatic?idMap=${idMap}&idUser=${idUser}`; mapDataIconUrl = `${serverURL}/talas5/ClientData/WebserviceMap.asmx/GetIconsStatic`; webserviceGisLinesStatusUrl = `${serverURL}/talas5/ClientData/WebServiceMap.asmx/GisLinesStatus?idMap=${idMap}`; console.log("🌐 Echt-Mode aktiv: Daten werden von der API geholt."); } } // Export der Variablen und URLs export { mapVersion, standardSideMenu, fullSideMenu, serverURL, windowHeight, url_string, url, idMap, idUser, mapGisStationsStaticDistrictUrl, mapGisStationsStatusDistrictUrl, mapGisStationsMeasurementsUrl, mapGisSystemStaticUrl, mapDataIconUrl, webserviceGisLinesStatusUrl, isMockMode, };