R2.1 (Web): Kontaktformular auf der Kontakt-Seite aktiviert
Ersetzt den TODO-Platzhalter: Name/E-Mail/Nachricht, Honeypots, Erfolgs-Flash statt Formular nach Versand, Datenschutz-Hinweis. Styling analog legal-request. Telefon/Adresse sind weiterhin Platzhalterdaten (R3.2, [EXTERN]). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
a4d054b3ab
commit
9875e7b6e1
1 changed files with 60 additions and 3 deletions
|
|
@ -49,9 +49,66 @@
|
|||
<a href="{{ route('faq') }}">FAQ</a> oder das <a href="{{ route('hilfe') }}">Hilfe-Center</a>.
|
||||
</p>
|
||||
|
||||
{{-- TODO: Kontaktformular reaktivieren, sobald ein POST-Handler
|
||||
(Controller/Volt + Validierung + Mailversand) bereitsteht.
|
||||
Bis dahin führt der direkte E-Mail-Weg ans Ziel. --}}
|
||||
@if (session('contact-status'))
|
||||
<div class="px-4 py-3 border border-bg-rule bg-bg-elev text-[13px] text-ink leading-relaxed mb-6" role="status">
|
||||
{{ session('contact-status') }}
|
||||
</div>
|
||||
@else
|
||||
<form method="POST" action="{{ route('kontakt.store') }}" class="space-y-5 mb-8" novalidate>
|
||||
@csrf
|
||||
|
||||
<div class="grid gap-5 sm:grid-cols-2">
|
||||
<div>
|
||||
<label for="contact-name" class="block text-[12px] font-semibold text-ink mb-1.5">Ihr Name</label>
|
||||
<input id="contact-name" type="text" name="name" value="{{ old('name') }}" required
|
||||
autocomplete="name"
|
||||
class="w-full border border-bg-rule px-3 py-2.5 text-[13px] bg-white text-ink focus:outline-none focus:border-brand" />
|
||||
@error('name')
|
||||
<p class="mt-1 text-[12px] text-red-600">{{ $message }}</p>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label for="contact-email" class="block text-[12px] font-semibold text-ink mb-1.5">E-Mail-Adresse</label>
|
||||
<input id="contact-email" type="email" name="email" value="{{ old('email') }}" required
|
||||
autocomplete="email"
|
||||
class="w-full border border-bg-rule px-3 py-2.5 text-[13px] bg-white text-ink focus:outline-none focus:border-brand" />
|
||||
@error('email')
|
||||
<p class="mt-1 text-[12px] text-red-600">{{ $message }}</p>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label for="contact-message" class="block text-[12px] font-semibold text-ink mb-1.5">Ihre Nachricht</label>
|
||||
<textarea id="contact-message" name="message" rows="6" required
|
||||
class="w-full border border-bg-rule px-3 py-2.5 text-[13px] bg-white text-ink focus:outline-none focus:border-brand"
|
||||
placeholder="Wie können wir Ihnen helfen?">{{ old('message') }}</textarea>
|
||||
@error('message')
|
||||
<p class="mt-1 text-[12px] text-red-600">{{ $message }}</p>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
{{-- Bot-Schutz: versteckte Honeypot-Felder (siehe legal-request). --}}
|
||||
<div class="hidden" aria-hidden="true">
|
||||
<label for="contact-website">Website</label>
|
||||
<input id="contact-website" type="text" name="website" tabindex="-1" autocomplete="off" value="{{ old('website') }}" />
|
||||
<label for="contact-homepage">Homepage</label>
|
||||
<input id="contact-homepage" type="text" name="homepage" tabindex="-1" autocomplete="off" value="{{ old('homepage') }}" />
|
||||
</div>
|
||||
|
||||
<button type="submit"
|
||||
class="bg-brand hover:bg-brand-deep text-white px-5 py-2.5 text-[13px] font-semibold transition-colors">
|
||||
Nachricht senden
|
||||
</button>
|
||||
|
||||
<p class="text-[11.5px] text-ink-3 leading-relaxed">
|
||||
Ihre Angaben werden ausschließlich zur Bearbeitung Ihrer Anfrage verarbeitet.
|
||||
Weitere Informationen in der
|
||||
<a href="{{ route('datenschutz') }}" class="underline hover:text-ink">Datenschutzerklärung</a>.
|
||||
</p>
|
||||
</form>
|
||||
@endif
|
||||
|
||||
<h3>Anfahrt</h3>
|
||||
<p>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue