This commit is contained in:
2025-11-21 01:30:35 +01:00
parent d5c65ad5c0
commit 1f77464e1f
2 changed files with 46 additions and 20 deletions

View File

@@ -1,6 +1,10 @@
<?php
// Fallback falls $authView nicht gesetzt ist
$authView = $authView ?? 'login';
?>
<section id="auth" class="border-t border-brand-border/70 bg-brand-primarySoft/20">
<div class="mx-auto max-w-4xl px-4 sm:px-6 lg:px-8 py-16 sm:py-20">
<div class="mb-10 text-center space-y-3">
<div class="mx-auto max-w-xl px-4 sm:px-6 lg:px-8 py-16 sm:py-20">
<div class="mb-8 text-center space-y-3">
<p class="text-xs font-heading font-semibold tracking-[0.3em] uppercase text-brand-primary" data-i18n="auth_kicker">
Account &amp; Login
</p>
@@ -12,9 +16,30 @@
</p>
</div>
<div class="grid gap-8 md:grid-cols-2 items-start">
<!-- Login -->
<div class="rounded-xl2 border border-brand-border bg-brand-surface/90 shadow-soft p-6 space-y-5">
<!-- Tabs -->
<div class="mb-6 rounded-full border border-brand-border bg-brand-surface/80 p-1 flex text-xs font-semibold uppercase tracking-[0.18em] text-brand-muted">
<button
type="button"
class="flex-1 px-3 py-2 rounded-full text-center transition-colors auth-tab <?= $authView === 'login' ? 'bg-brand-primary text-brand-bg' : 'hover:text-brand-primary'; ?>"
data-tab="login"
data-i18n="auth_tab_login">
Login
</button>
<button
type="button"
class="flex-1 px-3 py-2 rounded-full text-center transition-colors auth-tab <?= $authView === 'register' ? 'bg-brand-primary text-brand-bg' : 'hover:text-brand-primary'; ?>"
data-tab="register"
data-i18n="auth_tab_register">
Registrieren
</button>
</div>
<!-- Panels -->
<div class="space-y-6">
<!-- Login Panel -->
<div
id="authPanelLogin"
class="rounded-xl2 border border-brand-border bg-brand-surface/90 shadow-soft p-6 space-y-5 <?= $authView !== 'login' ? 'hidden' : ''; ?>">
<h2 class="font-heading text-lg font-semibold text-white" data-i18n="auth_login_title">
Login
</h2>
@@ -22,7 +47,9 @@
Melde dich mit deiner E-Mail-Adresse und deinem Passwort an.
</p>
<form method="post" action="/login/" class="space-y-4" autocomplete="on">
<form method="post" action="/login/?lang=<?= htmlspecialchars($lang) ?>" class="space-y-4" autocomplete="on">
<input type="hidden" name="action" value="login">
<div class="space-y-1">
<label for="login_email" class="block text-xs font-semibold tracking-wide uppercase text-brand-muted" data-i18n="auth_login_email_label">
E-Mail-Adresse
@@ -51,9 +78,8 @@
>
</div>
<!-- Platzhalter für Fehlermeldungen (später per PHP / JS) -->
<p class="text-xs text-red-400 hidden" id="login_error">
<!-- Wird später dynamisch gefüllt -->
<!-- später dynamisch -->
</p>
<button
@@ -71,8 +97,10 @@
</form>
</div>
<!-- Registrierung -->
<div class="rounded-xl2 border border-brand-border bg-brand-surface/80 shadow-soft p-6 space-y-5">
<!-- Register Panel -->
<div
id="authPanelRegister"
class="rounded-xl2 border border-brand-border bg-brand-surface/80 shadow-soft p-6 space-y-5 <?= $authView !== 'register' ? 'hidden' : ''; ?>">
<h2 class="font-heading text-lg font-semibold text-white" data-i18n="auth_register_title">
Kostenlos registrieren
</h2>
@@ -80,7 +108,7 @@
Erstelle einen kostenlosen Account, um Tests zu speichern, Berichte zu exportieren und den Pro-Modus später freizuschalten.
</p>
<form method="post" action="/login/" class="space-y-4" autocomplete="on">
<form method="post" action="/login/?lang=<?= htmlspecialchars($lang) ?>" class="space-y-4" autocomplete="on">
<input type="hidden" name="action" value="register">
<div class="space-y-1">
@@ -125,9 +153,8 @@
>
</div>
<!-- Platzhalter für Fehlermeldungen (später per PHP / JS) -->
<p class="text-xs text-red-400 hidden" id="register_error">
<!-- Wird später dynamisch gefüllt -->
<!-- später dynamisch -->
</p>
<button