"use client"; // components/Header.jsx import React, { useEffect, useState } from "react"; import Image from "next/image"; import "bootstrap-icons/font/bootstrap-icons.css"; import { loadWindowVariables } from "../utils/loadWindowVariables"; import SettingsModal from "./modales/SettingsModal"; function Header() { const [isClient, setIsClient] = useState(false); const [stationsname, setStationsname] = useState("Lädt..."); const [cplStatus, setCplStatus] = useState("Lädt..."); const [showSettingsModal, setShowSettingsModal] = useState(false); const [logOnce, setLogOnce] = useState(false); useEffect(() => { setIsClient(true); }, []); const handleSettingsClick = () => { setShowSettingsModal(true); }; const handleCloseSettingsModal = () => { setShowSettingsModal(false); }; const handleLogout = () => { window.location.href = "/offline.html"; }; useEffect(() => { if (isClient && !logOnce) { const environment = process.env.NEXT_PUBLIC_NODE_ENV || "production"; const script = document.createElement("script"); // Laden von nur System.js abhängig von der Umgebung script.src = environment === "production" ? `/CPL?/CPL/SERVICE/System.js` : `/mockData/SERVICE/System.js`; script.async = true; script.onload = () => { console.log(`System.js wurde erfolgreich geladen.`); // Systemvariablen überprüfen und zuweisen if (window.deviceName) { setStationsname(window.deviceName || "Unbekannt"); setCplStatus(window.hardware_version || "Unbekannt"); } else { console.error("Systemvariablen sind nicht vollständig verfügbar."); } console.log(" Header Systemvariablen geladen:", { deviceName: window.deviceName, ip: window.ip, mac1: window.mac1, mac2: window.mac2, subnet: window.subnet, gateway: window.gateway, datetime: window.datetime, }); setLogOnce(true); }; script.onerror = (error) => console.error("Fehler beim Laden von System.js:", error); document.head.appendChild(script); } }, [isClient, logOnce]); if (!isClient) return null; return (
Logo

Stationsname

{stationsname}

{showSettingsModal && ( )}
); } export default Header;