import { useState } from 'react' import api from '../utils/api' function isEmailVerifiedRow(p) { if (!p) return false const v = p.email_verified return v === true || v === 't' || v === 1 || v === 'true' } /** * Hinweis + „Erneut senden“, wenn eingeloggt aber E-Mail noch nicht verifiziert (wie Mitai). */ export default function EmailVerificationBanner({ profile }) { const [resending, setResending] = useState(false) const [success, setSuccess] = useState(false) const [error, setError] = useState('') if (!profile?.email || isEmailVerifiedRow(profile)) return null const handleResend = async () => { if (!profile.email) return setResending(true) setError('') setSuccess(false) try { await api.resendVerification(profile.email) setSuccess(true) setTimeout(() => setSuccess(false), 6000) } catch (err) { setError(err.message || 'Versand fehlgeschlagen') setTimeout(() => setError(''), 7000) } finally { setResending(false) } } return (
Bitte prüfe dein Postfach und öffne den Bestätigungslink (auch Spam-Ordner). {success && ( Neue Mail wurde angefordert. )} {error && {error}}