"use client"; import React, { useEffect, useState } from "react"; import Image from "next/image"; import "bootstrap-icons/font/bootstrap-icons.css"; function Header() { const [stationsname, setStationsname] = useState("Lädt..."); // Platzhalter const [cplStatus, setCplStatus] = useState("Lädt..."); useEffect(() => { // API-Aufruf, um die Daten vom Server zu holen fetch("http://localhost:3000/api/server?path=main.js", { mode: "cors" }) .then((response) => { if (!response.ok) { throw new Error("Fehler beim Abrufen der Daten"); } return response.text(); // Holen des gesamten Textinhalts }) .then((data) => { console.log("Fetched data:", data); // Logge die empfangenen Daten const parsedData = extractDataFromFile(data); setStationsname(parsedData.stationsname); setCplStatus(parsedData.cplStatus); }) .catch((error) => { console.error("Fehler beim Abrufen der Daten:", error); }); }, []); // Funktion zum Extrahieren der gewünschten Daten aus dem Text function extractDataFromFile(fileText) { // Beispiel zum Extrahieren des Stationsnamens, du kannst dies nach Bedarf anpassen const stationsnameMatch = fileText.match(/

Willkommen bei (.*?)<\/h1>/); const cplStatusMatch = fileText.match(/

Hardware Version: (.*?)<\/p>/); return { stationsname: stationsnameMatch ? stationsnameMatch[1] : "Unbekannt", cplStatus: cplStatusMatch ? cplStatusMatch[1] : "Unbekannt", }; } return (

Logo
{/* CPL Status und Stationsname */}

Stationsname

{stationsname}

CPL Status

{cplStatus}
{/* Temperatur und Icons */}
{/* Temperatur und Luftfeuchtigkeit */}

20.5 °C

60%

{/* Toggle Switch light and dark mode */}
{/* User Icon */}
); } export default Header;