diff --git a/pages/meldungen.tsx b/pages/meldungen.tsx
index c13a9f0..8ca6b14 100644
--- a/pages/meldungen.tsx
+++ b/pages/meldungen.tsx
@@ -1,5 +1,99 @@
-import React from "react";
+// /pages/meldungen.tsx
+"use client";
+
+import React, { useEffect, useState } from "react";
+
+type Meldung = {
+ t: string;
+ s: number;
+ c: string;
+ m: string;
+ i: string;
+};
+
+const ITEMS_PER_PAGE = 10;
export default function Messages() {
- return
Messages
;
+ const [messages, setMessages] = useState([]);
+ const [currentPage, setCurrentPage] = useState(1);
+
+ useEffect(() => {
+ const fetchMessages = async () => {
+ // https://10.10.0.222/CPL?Service/ae.ACP&MSS1=2025;01;01;2025;2;28;All
+ try {
+ const res = await fetch("/CPLmockData/meldungen/messages.json");
+ const data = await res.json();
+ setMessages(data);
+ } catch (err) {
+ console.error("Fehler beim Laden der Meldungen:", err);
+ }
+ };
+
+ fetchMessages();
+ }, []);
+
+ const totalPages = Math.ceil(messages.length / ITEMS_PER_PAGE);
+ const currentMessages = messages.slice(
+ (currentPage - 1) * ITEMS_PER_PAGE,
+ currentPage * ITEMS_PER_PAGE
+ );
+
+ return (
+
+
Meldungen
+
+
+
+
+
+ | Status |
+ Zeitstempel |
+ Gewicht |
+ Text |
+ Quelle |
+
+
+
+ {currentMessages.map((msg, index) => (
+
+ |
+
+ |
+ {msg.t} |
+ {msg.s} |
+ {msg.m} |
+ {msg.i} |
+
+ ))}
+
+
+
+
+ {/* Pagination */}
+
+
+
+ Seite {currentPage} von {totalPages}
+
+
+
+
+ );
}