"use client"; import Image from "next/image"; import Link from "next/link"; import { useEffect, useState } from "react"; import { appVersion } from "@/lib/runtime/version"; import type { SettingsContent } from "@/lib/content/types"; const fallbackSettings: SettingsContent = { siteName: "Funktechnik Schubert", logoUrl: "/funktechnik_schubert_logo.jpg", footerShortText: "Service und technische Unterstützung für Funkgeräte, Messtechnik und Kommunikationstechnik.", copyright: "© Funktechnik Schubert", footerLinks: [ { label: "Leistungen", href: "/leistungen" }, { label: "Funkgeräte-Service", href: "/funkgeraete-service" }, { label: "Reparatur", href: "/reparatur" }, { label: "Kontakt", href: "/kontakt" }, ], legalLinks: [ { label: "Impressum", href: "/impressum" }, { label: "Datenschutz", href: "/datenschutz" }, ], headerCta: { label: "Reparatur anfragen", href: "/reparatur" }, seo: { metaTitle: "Funktechnik Schubert", metaDescription: "", keywords: "", openGraphTitle: "", openGraphDescription: "", socialImage: "/funktechnik_schubert_logo.jpg", canonicalUrl: "/", }, updatedAt: "", }; export default function Footer() { const [settings, setSettings] = useState(fallbackSettings); useEffect(() => { let active = true; async function loadSettings() { try { const response = await fetch("/api/content/settings"); const result = await response.json() as { settings?: SettingsContent }; if (active && response.ok && result.settings) setSettings(result.settings); } catch { if (active) setSettings(fallbackSettings); } } void loadSettings(); return () => { active = false; }; }, []); return ( ); }