import { Link, useLocation } from "wouter"; import { Menu, X, Search } from "lucide-react"; import { Button } from "@/components/ui/button"; import { useState, useRef, useEffect } from "react"; import folxLogo from "@assets/folx_MT_poz_b_1772296729169.png"; const navItems = [ { label: "Start", href: "/" }, { label: "News", href: "/category/News" }, { label: "Video", href: "/videos" }, { label: "Galerie", href: "/gallery" }, { label: "Horoskop", href: "/horoskop" }, { label: "Rezepte", href: "/rezepte" }, ]; export default function Header() { const [mobileOpen, setMobileOpen] = useState(false); const [searchOpen, setSearchOpen] = useState(false); const [searchQuery, setSearchQuery] = useState(""); const [location, navigate] = useLocation(); const searchInputRef = useRef(null); useEffect(() => { if (searchOpen && searchInputRef.current) { searchInputRef.current.focus(); } }, [searchOpen]); const handleSearch = (e: React.FormEvent) => { e.preventDefault(); if (searchQuery.trim().length >= 2) { const url = `/search?q=${encodeURIComponent(searchQuery.trim())}`; setSearchOpen(false); setSearchQuery(""); setMobileOpen(false); window.location.href = url; } }; return (
Folx TV
{searchOpen ? (
setSearchQuery(e.target.value)} placeholder="Suchen..." className="w-32 sm:w-48 px-3 py-1.5 bg-card border border-card-border rounded-md text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-primary" data-testid="input-header-search" />
) : ( )}
{mobileOpen && (
)}
); }