'use client' import { useState } from 'react' import { Button } from '@/components/ui/button' import { Loader2, Send, Check } from 'lucide-react' export function ContactForm() { const [name, setName] = useState('') const [email, setEmail] = useState('') const [message, setMessage] = useState('') const [sending, setSending] = useState(false) const [sent, setSent] = useState(false) const [error, setError] = useState('') const handleSubmit = async (e: React.FormEvent) => { e.preventDefault() setSending(true) setError('') try { const res = await fetch('/api/contact', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ name, email, message }), }) if (res.ok) { setSent(true) setName('') setEmail('') setMessage('') } else { const data = await res.json() setError(data.error || 'Senden fehlgeschlagen') } } catch { setError('Verbindung fehlgeschlagen') } finally { setSending(false) } } if (sent) { return (

Nachricht gesendet!

Vielen Dank! Ich melde mich so schnell wie möglich.

) } return (
setName(e.target.value)} required placeholder="Dein Name" className="w-full rounded-lg border border-gray-300 px-4 py-2.5 text-sm focus:outline-none focus:ring-2 focus:ring-red-500 focus:border-transparent" />
setEmail(e.target.value)} required placeholder="name@feuerwehr.ch" className="w-full rounded-lg border border-gray-300 px-4 py-2.5 text-sm focus:outline-none focus:ring-2 focus:ring-red-500 focus:border-transparent" />