i18n: Auth-Views vollstaendig uebersetzbar machen (Readiness)
Die Auth-Strecke (Login, Registrierung, Passwort-Reset/-Bestaetigung, Magic-Link, E-Mail-Verifizierung, 2FA) war als einziger Backend-Bereich noch nicht durchgaengig __()-gewrappt. Alle sichtbaren deutschen Strings in __() gewickelt (Deutsch bleibt Schluessel). Eingebettete Links (AGB/ Datenschutz) und Alpine-x-text sauber segmentiert. Heading/Eyebrow und topRight-Label/-Link sowie der From-Banner werden jetzt im Auth-Layout am Ausgabepunkt uebersetzt (im #[Layout]-Attribut sind keine __()-Aufrufe moeglich). Leeres lang/en.json als Geruest fuer die spaetere EN-Befuellung. Kunden-, Admin-, Settings- und Component-Views waren bereits vollstaendig gewrappt (per Audit bestaetigt). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
474153acf5
commit
1ac5badd53
10 changed files with 88 additions and 91 deletions
1
lang/en.json
Normal file
1
lang/en.json
Normal file
|
|
@ -0,0 +1 @@
|
|||
{}
|
||||
|
|
@ -94,9 +94,9 @@
|
|||
@if ($topRightLinkText && $topRightLinkHref)
|
||||
<span class="text-[13px] text-ink-3">
|
||||
@if ($topRightLabel)
|
||||
{{ $topRightLabel }}
|
||||
{{ __($topRightLabel) }}
|
||||
@endif
|
||||
<a href="{{ $topRightLinkHref }}" class="link-hub" wire:navigate>{{ $topRightLinkText }}</a>
|
||||
<a href="{{ $topRightLinkHref }}" class="link-hub" wire:navigate>{{ __($topRightLinkText) }}</a>
|
||||
</span>
|
||||
@endif
|
||||
</header>
|
||||
|
|
@ -107,27 +107,30 @@
|
|||
|
||||
@if ($showFromBanner && $fromBrandLabel)
|
||||
<div class="from-banner mb-3.5">
|
||||
Sie kommen von <strong class="font-semibold text-ink">{{ $fromBrandLabel }}</strong>.
|
||||
Ihr Konto funktioniert für <strong class="font-semibold text-ink">beide Portale</strong> –
|
||||
{{ __('Sie kommen von') }} <strong class="font-semibold text-ink">{{ $fromBrandLabel }}</strong>.
|
||||
{{ __('Ihr Konto funktioniert für') }} <strong class="font-semibold text-ink">{{ __('beide Portale') }}</strong> –
|
||||
presseecho.de und businessportal24.com.
|
||||
</div>
|
||||
@elseif ($showFromBanner)
|
||||
<div class="from-banner mb-3.5">
|
||||
Ihr Konto funktioniert auch für
|
||||
{{ __('Ihr Konto funktioniert auch für') }}
|
||||
<strong class="font-semibold text-ink">presseecho.de</strong>
|
||||
und
|
||||
{{ __('und') }}
|
||||
<strong class="font-semibold text-ink">businessportal24.com</strong>.
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<div class="auth-card">
|
||||
@if ($eyebrow)
|
||||
<div class="eyebrow-hub mb-2.5">{{ $eyebrow }}</div>
|
||||
{{-- Heading/Eyebrow kommen als deutsche Strings aus dem #[Layout]-
|
||||
Attribut (dort sind keine __()-Aufrufe erlaubt); hier am
|
||||
Ausgabepunkt übersetzt, damit sie als Schlüssel wirken. --}}
|
||||
<div class="eyebrow-hub mb-2.5">{{ __($eyebrow) }}</div>
|
||||
@endif
|
||||
|
||||
@if ($heading)
|
||||
<h1 class="text-[26px] font-bold tracking-[-0.5px] leading-[1.2] m-0 mb-7 text-ink">
|
||||
{{ $heading }}
|
||||
{{ __($heading) }}
|
||||
</h1>
|
||||
@endif
|
||||
|
||||
|
|
|
|||
|
|
@ -34,14 +34,13 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Passwort best
|
|||
|
||||
<div>
|
||||
<p class="text-[13.5px] text-ink-2 leading-[1.65] !-mt-4 mb-6">
|
||||
Dieser Bereich des Publisher-Hubs ist besonders geschützt. Bitte bestätigen Sie zur
|
||||
Sicherheit erneut Ihr Passwort, bevor Sie fortfahren.
|
||||
{{ __('Dieser Bereich des Publisher-Hubs ist besonders geschützt. Bitte bestätigen Sie zur Sicherheit erneut Ihr Passwort, bevor Sie fortfahren.') }}
|
||||
</p>
|
||||
|
||||
<form wire:submit="confirmPassword" class="space-y-[18px]" x-data="{ showPassword: false }" novalidate>
|
||||
|
||||
<div>
|
||||
<label class="field-label" for="auth-password">Passwort</label>
|
||||
<label class="field-label" for="auth-password">{{ __('Passwort') }}</label>
|
||||
<div class="field-pw-wrap">
|
||||
<input
|
||||
id="auth-password"
|
||||
|
|
@ -58,8 +57,8 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Passwort best
|
|||
type="button"
|
||||
class="field-affix"
|
||||
@click="showPassword = !showPassword"
|
||||
x-text="showPassword ? 'Verbergen' : 'Anzeigen'"
|
||||
>Anzeigen</button>
|
||||
x-text="showPassword ? '{{ __('Verbergen') }}' : '{{ __('Anzeigen') }}'"
|
||||
>{{ __('Anzeigen') }}</button>
|
||||
</div>
|
||||
@error('password')
|
||||
<p class="field-error">{{ $message }}</p>
|
||||
|
|
@ -67,8 +66,8 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Passwort best
|
|||
</div>
|
||||
|
||||
<button type="submit" class="auth-btn-primary !mt-[22px]" wire:loading.attr="disabled" wire:target="confirmPassword">
|
||||
<span wire:loading.remove wire:target="confirmPassword">Bestätigen</span>
|
||||
<span wire:loading wire:target="confirmPassword">Wird geprüft …</span>
|
||||
<span wire:loading.remove wire:target="confirmPassword">{{ __('Bestätigen') }}</span>
|
||||
<span wire:loading wire:target="confirmPassword">{{ __('Wird geprüft …') }}</span>
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -24,8 +24,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Passwort verg
|
|||
|
||||
<div>
|
||||
<p class="text-[13.5px] text-ink-2 leading-[1.6] !-mt-4 mb-6">
|
||||
Geben Sie die E-Mail-Adresse Ihres Kontos ein. Sie erhalten innerhalb weniger Minuten
|
||||
einen Link, mit dem Sie ein neues Passwort vergeben können.
|
||||
{{ __('Geben Sie die E-Mail-Adresse Ihres Kontos ein. Sie erhalten innerhalb weniger Minuten einen Link, mit dem Sie ein neues Passwort vergeben können.') }}
|
||||
</p>
|
||||
|
||||
@if (session('status'))
|
||||
|
|
@ -37,7 +36,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Passwort verg
|
|||
<form wire:submit="sendPasswordResetLink" class="space-y-[18px]" novalidate>
|
||||
|
||||
<div>
|
||||
<label class="field-label" for="auth-email">E-Mail-Adresse</label>
|
||||
<label class="field-label" for="auth-email">{{ __('E-Mail-Adresse') }}</label>
|
||||
<input
|
||||
id="auth-email"
|
||||
type="email"
|
||||
|
|
@ -55,12 +54,12 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Passwort verg
|
|||
</div>
|
||||
|
||||
<button type="submit" class="auth-btn-primary !mt-[22px]" wire:loading.attr="disabled" wire:target="sendPasswordResetLink">
|
||||
<span wire:loading.remove wire:target="sendPasswordResetLink">Reset-Link senden</span>
|
||||
<span wire:loading wire:target="sendPasswordResetLink">Link wird gesendet …</span>
|
||||
<span wire:loading.remove wire:target="sendPasswordResetLink">{{ __('Reset-Link senden') }}</span>
|
||||
<span wire:loading wire:target="sendPasswordResetLink">{{ __('Link wird gesendet …') }}</span>
|
||||
</button>
|
||||
|
||||
<div class="flex items-center justify-center pt-2 text-[12.5px] text-ink-3">
|
||||
<a href="{{ route('login') }}" class="link-hub" wire:navigate>← Zurück zur Anmeldung</a>
|
||||
<a href="{{ route('login') }}" class="link-hub" wire:navigate>← {{ __('Zurück zur Anmeldung') }}</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -134,7 +134,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Willkommen zu
|
|||
<form wire:submit="login" class="space-y-[18px]" x-data="{ showPassword: false }" novalidate>
|
||||
|
||||
<div>
|
||||
<label class="field-label" for="auth-email">E-Mail-Adresse</label>
|
||||
<label class="field-label" for="auth-email">{{ __('E-Mail-Adresse') }}</label>
|
||||
<input
|
||||
id="auth-email"
|
||||
type="email"
|
||||
|
|
@ -153,10 +153,10 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Willkommen zu
|
|||
|
||||
<div>
|
||||
<div class="flex items-baseline justify-between mb-1.5">
|
||||
<label class="field-label !mb-0" for="auth-password">Passwort</label>
|
||||
<label class="field-label !mb-0" for="auth-password">{{ __('Passwort') }}</label>
|
||||
@if (\Illuminate\Support\Facades\Route::has('password.request'))
|
||||
<a href="{{ route('password.request') }}" class="link-hub text-[12px]" wire:navigate>
|
||||
Passwort vergessen?
|
||||
{{ __('Passwort vergessen?') }}
|
||||
</a>
|
||||
@endif
|
||||
</div>
|
||||
|
|
@ -175,8 +175,8 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Willkommen zu
|
|||
type="button"
|
||||
class="field-affix"
|
||||
@click="showPassword = !showPassword"
|
||||
x-text="showPassword ? 'Verbergen' : 'Anzeigen'"
|
||||
>Anzeigen</button>
|
||||
x-text="showPassword ? '{{ __('Verbergen') }}' : '{{ __('Anzeigen') }}'"
|
||||
>{{ __('Anzeigen') }}</button>
|
||||
</div>
|
||||
@error('password')
|
||||
<p class="field-error">{{ $message }}</p>
|
||||
|
|
@ -185,17 +185,17 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Willkommen zu
|
|||
|
||||
<label class="flex items-center gap-2.5 text-[12.5px] text-ink-2 cursor-pointer select-none">
|
||||
<input type="checkbox" wire:model="remember" class="auth-check" />
|
||||
Angemeldet bleiben
|
||||
{{ __('Angemeldet bleiben') }}
|
||||
</label>
|
||||
|
||||
<button type="submit" class="auth-btn-primary !mt-[22px]" wire:loading.attr="disabled" wire:target="login">
|
||||
<span wire:loading.remove wire:target="login">Anmelden</span>
|
||||
<span wire:loading wire:target="login">Anmelden …</span>
|
||||
<span wire:loading.remove wire:target="login">{{ __('Anmelden') }}</span>
|
||||
<span wire:loading wire:target="login">{{ __('Anmelden …') }}</span>
|
||||
</button>
|
||||
|
||||
<div class="flex items-center gap-3 !mt-[22px] !mb-[14px]">
|
||||
<span class="flex-1 h-px bg-bg-rule"></span>
|
||||
<span class="text-[11px] font-semibold tracking-[0.18em] uppercase text-ink-3">oder</span>
|
||||
<span class="text-[11px] font-semibold tracking-[0.18em] uppercase text-ink-3">{{ __('oder') }}</span>
|
||||
<span class="flex-1 h-px bg-bg-rule"></span>
|
||||
</div>
|
||||
|
||||
|
|
@ -204,7 +204,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Willkommen zu
|
|||
<rect x="2" y="3" width="12" height="10" stroke="currentColor" stroke-width="1.4" />
|
||||
<path d="M2.5 4l5.5 5 5.5-5" stroke="currentColor" stroke-width="1.4" stroke-linejoin="round" />
|
||||
</svg>
|
||||
<span>Anmeldung per E-Mail-Link</span>
|
||||
<span>{{ __('Anmeldung per E-Mail-Link') }}</span>
|
||||
</a>
|
||||
|
||||
<a href="{{ route('oauth.google.redirect') }}" class="auth-btn-outline !mt-3">
|
||||
|
|
@ -214,7 +214,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Willkommen zu
|
|||
<path fill="#FBBC05" d="M3.97 10.72A5.4 5.4 0 0 1 3.68 9c0-.6.1-1.18.29-1.72V4.95H.96A9 9 0 0 0 0 9c0 1.45.35 2.82.96 4.05l3.01-2.33z"/>
|
||||
<path fill="#EA4335" d="M9 3.58c1.32 0 2.5.45 3.44 1.35l2.58-2.59C13.46.89 11.43 0 9 0A9 9 0 0 0 .96 4.95l3.01 2.33C4.68 5.16 6.66 3.58 9 3.58z"/>
|
||||
</svg>
|
||||
<span>Mit Google anmelden</span>
|
||||
<span>{{ __('Mit Google anmelden') }}</span>
|
||||
</a>
|
||||
|
||||
</form>
|
||||
|
|
|
|||
|
|
@ -91,17 +91,14 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Anmeldung per
|
|||
@endif
|
||||
|
||||
<p class="text-[13.5px] text-ink-2 leading-[1.65] !-mt-2 mb-6">
|
||||
Geben Sie Ihre E-Mail-Adresse ein – wir senden Ihnen einen Anmeldelink,
|
||||
mit dem Sie sich ohne Passwort anmelden können. Das funktioniert für
|
||||
bestehende Konten ebenso wie für jede E-Mail, die bei einer
|
||||
<strong class="text-ink-2 font-semibold">Firma</strong> oder als
|
||||
<strong class="text-ink-2 font-semibold">Pressekontakt</strong> hinterlegt ist –
|
||||
Sie verwalten damit die Pressemitteilungen aller zugeordneten Firmen.
|
||||
{{ __('Geben Sie Ihre E-Mail-Adresse ein – wir senden Ihnen einen Anmeldelink, mit dem Sie sich ohne Passwort anmelden können. Das funktioniert für bestehende Konten ebenso wie für jede E-Mail, die bei einer') }}
|
||||
<strong class="text-ink-2 font-semibold">{{ __('Firma') }}</strong> {{ __('oder als') }}
|
||||
<strong class="text-ink-2 font-semibold">{{ __('Pressekontakt') }}</strong> {{ __('hinterlegt ist – Sie verwalten damit die Pressemitteilungen aller zugeordneten Firmen.') }}
|
||||
</p>
|
||||
|
||||
<form wire:submit="requestLink" class="space-y-[18px]" novalidate>
|
||||
<div>
|
||||
<label class="field-label" for="magic-email">E-Mail-Adresse</label>
|
||||
<label class="field-label" for="magic-email">{{ __('E-Mail-Adresse') }}</label>
|
||||
<input
|
||||
id="magic-email"
|
||||
type="email"
|
||||
|
|
@ -120,17 +117,17 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Anmeldung per
|
|||
|
||||
{{-- Honeypot: für Menschen unsichtbar --}}
|
||||
<div class="hidden" aria-hidden="true">
|
||||
<label for="magic-website">Website</label>
|
||||
<label for="magic-website">{{ __('Website') }}</label>
|
||||
<input id="magic-website" type="text" wire:model="website" tabindex="-1" autocomplete="off" />
|
||||
</div>
|
||||
|
||||
<button type="submit" class="auth-btn-primary !mt-[18px]" wire:loading.attr="disabled" wire:target="requestLink">
|
||||
<span wire:loading.remove wire:target="requestLink">Anmeldelink senden</span>
|
||||
<span wire:loading wire:target="requestLink">Wird gesendet …</span>
|
||||
<span wire:loading.remove wire:target="requestLink">{{ __('Anmeldelink senden') }}</span>
|
||||
<span wire:loading wire:target="requestLink">{{ __('Wird gesendet …') }}</span>
|
||||
</button>
|
||||
|
||||
<a href="{{ route('login') }}" class="auth-btn-outline !mt-3" wire:navigate>
|
||||
Zurück zur Anmeldung
|
||||
{{ __('Zurück zur Anmeldung') }}
|
||||
</a>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Konto erstell
|
|||
<form wire:submit="register" class="space-y-[18px]" x-data="{ showPassword: false, showPasswordConfirmation: false }" novalidate>
|
||||
|
||||
<div>
|
||||
<label class="field-label" for="auth-name">Name</label>
|
||||
<label class="field-label" for="auth-name">{{ __('Name') }}</label>
|
||||
<input
|
||||
id="auth-name"
|
||||
type="text"
|
||||
|
|
@ -72,7 +72,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Konto erstell
|
|||
autofocus
|
||||
autocomplete="name"
|
||||
class="field-input"
|
||||
placeholder="Vor- und Nachname"
|
||||
:placeholder="__('Vor- und Nachname')"
|
||||
@error('name') aria-invalid="true" @enderror
|
||||
/>
|
||||
@error('name')
|
||||
|
|
@ -81,7 +81,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Konto erstell
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<label class="field-label" for="auth-email">E-Mail-Adresse</label>
|
||||
<label class="field-label" for="auth-email">{{ __('E-Mail-Adresse') }}</label>
|
||||
<input
|
||||
id="auth-email"
|
||||
type="email"
|
||||
|
|
@ -98,7 +98,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Konto erstell
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<label class="field-label" for="auth-password">Passwort</label>
|
||||
<label class="field-label" for="auth-password">{{ __('Passwort') }}</label>
|
||||
<div class="field-pw-wrap">
|
||||
<input
|
||||
id="auth-password"
|
||||
|
|
@ -107,15 +107,15 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Konto erstell
|
|||
required
|
||||
autocomplete="new-password"
|
||||
class="field-input pr-[72px]"
|
||||
placeholder="Mindestens 8 Zeichen"
|
||||
:placeholder="__('Mindestens 8 Zeichen')"
|
||||
@error('password') aria-invalid="true" @enderror
|
||||
/>
|
||||
<button
|
||||
type="button"
|
||||
class="field-affix"
|
||||
@click="showPassword = !showPassword"
|
||||
x-text="showPassword ? 'Verbergen' : 'Anzeigen'"
|
||||
>Anzeigen</button>
|
||||
x-text="showPassword ? '{{ __('Verbergen') }}' : '{{ __('Anzeigen') }}'"
|
||||
>{{ __('Anzeigen') }}</button>
|
||||
</div>
|
||||
@error('password')
|
||||
<p class="field-error">{{ $message }}</p>
|
||||
|
|
@ -123,7 +123,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Konto erstell
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<label class="field-label" for="auth-password-confirmation">Passwort bestätigen</label>
|
||||
<label class="field-label" for="auth-password-confirmation">{{ __('Passwort bestätigen') }}</label>
|
||||
<div class="field-pw-wrap">
|
||||
<input
|
||||
id="auth-password-confirmation"
|
||||
|
|
@ -132,14 +132,14 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Konto erstell
|
|||
required
|
||||
autocomplete="new-password"
|
||||
class="field-input pr-[72px]"
|
||||
placeholder="Passwort wiederholen"
|
||||
:placeholder="__('Passwort wiederholen')"
|
||||
/>
|
||||
<button
|
||||
type="button"
|
||||
class="field-affix"
|
||||
@click="showPasswordConfirmation = !showPasswordConfirmation"
|
||||
x-text="showPasswordConfirmation ? 'Verbergen' : 'Anzeigen'"
|
||||
>Anzeigen</button>
|
||||
x-text="showPasswordConfirmation ? '{{ __('Verbergen') }}' : '{{ __('Anzeigen') }}'"
|
||||
>{{ __('Anzeigen') }}</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
@ -154,11 +154,11 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Konto erstell
|
|||
@error('terms_accepted') aria-invalid="true" @enderror
|
||||
/>
|
||||
<span class="text-[12.5px] text-ink-2 leading-[1.55]">
|
||||
Ich habe die
|
||||
<a href="{{ route('agb') }}" target="_blank" rel="noopener" class="link-hub">AGB</a>
|
||||
und die
|
||||
<a href="{{ route('datenschutz') }}" target="_blank" rel="noopener" class="link-hub">Datenschutzerklärung</a>
|
||||
gelesen und stimme der Verarbeitung meiner Daten zur Konto-Erstellung ausdrücklich zu.
|
||||
{{ __('Ich habe die') }}
|
||||
<a href="{{ route('agb') }}" target="_blank" rel="noopener" class="link-hub">{{ __('AGB') }}</a>
|
||||
{{ __('und die') }}
|
||||
<a href="{{ route('datenschutz') }}" target="_blank" rel="noopener" class="link-hub">{{ __('Datenschutzerklärung') }}</a>
|
||||
{{ __('gelesen und stimme der Verarbeitung meiner Daten zur Konto-Erstellung ausdrücklich zu.') }}
|
||||
</span>
|
||||
</label>
|
||||
@error('terms_accepted')
|
||||
|
|
@ -167,18 +167,18 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Konto erstell
|
|||
</div>
|
||||
|
||||
<button type="submit" class="auth-btn-primary !mt-[18px]" wire:loading.attr="disabled" wire:target="register">
|
||||
<span wire:loading.remove wire:target="register">Konto erstellen</span>
|
||||
<span wire:loading wire:target="register">Konto wird angelegt …</span>
|
||||
<span wire:loading.remove wire:target="register">{{ __('Konto erstellen') }}</span>
|
||||
<span wire:loading wire:target="register">{{ __('Konto wird angelegt …') }}</span>
|
||||
</button>
|
||||
|
||||
<div class="flex items-center gap-3 !mt-[22px] !mb-[14px]">
|
||||
<span class="flex-1 h-px bg-bg-rule"></span>
|
||||
<span class="text-[11px] font-semibold tracking-[0.18em] uppercase text-ink-3">Bereits Konto?</span>
|
||||
<span class="text-[11px] font-semibold tracking-[0.18em] uppercase text-ink-3">{{ __('Bereits Konto?') }}</span>
|
||||
<span class="flex-1 h-px bg-bg-rule"></span>
|
||||
</div>
|
||||
|
||||
<a href="{{ route('login') }}" class="auth-btn-outline !mt-0" wire:navigate>
|
||||
Stattdessen anmelden
|
||||
{{ __('Stattdessen anmelden') }}
|
||||
</a>
|
||||
|
||||
<a href="{{ route('oauth.google.redirect') }}" class="auth-btn-outline !mt-3">
|
||||
|
|
@ -188,7 +188,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Konto erstell
|
|||
<path fill="#FBBC05" d="M3.97 10.72A5.4 5.4 0 0 1 3.68 9c0-.6.1-1.18.29-1.72V4.95H.96A9 9 0 0 0 0 9c0 1.45.35 2.82.96 4.05l3.01-2.33z"/>
|
||||
<path fill="#EA4335" d="M9 3.58c1.32 0 2.5.45 3.44 1.35l2.58-2.59C13.46.89 11.43 0 9 0A9 9 0 0 0 .96 4.95l3.01 2.33C4.68 5.16 6.66 3.58 9 3.58z"/>
|
||||
</svg>
|
||||
<span>Mit Google registrieren</span>
|
||||
<span>{{ __('Mit Google registrieren') }}</span>
|
||||
</a>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -67,14 +67,13 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Neues Passwor
|
|||
|
||||
<div>
|
||||
<p class="text-[13.5px] text-ink-2 leading-[1.6] !-mt-4 mb-6">
|
||||
Vergeben Sie ein neues Passwort für Ihr Konto. Mindestens 8 Zeichen, idealerweise eine
|
||||
Kombination aus Buchstaben, Zahlen und Sonderzeichen.
|
||||
{{ __('Vergeben Sie ein neues Passwort für Ihr Konto. Mindestens 8 Zeichen, idealerweise eine Kombination aus Buchstaben, Zahlen und Sonderzeichen.') }}
|
||||
</p>
|
||||
|
||||
<form wire:submit="resetPassword" class="space-y-[18px]" x-data="{ showPassword: false, showPasswordConfirmation: false }" novalidate>
|
||||
|
||||
<div>
|
||||
<label class="field-label" for="auth-email">E-Mail-Adresse</label>
|
||||
<label class="field-label" for="auth-email">{{ __('E-Mail-Adresse') }}</label>
|
||||
<input
|
||||
id="auth-email"
|
||||
type="email"
|
||||
|
|
@ -90,7 +89,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Neues Passwor
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<label class="field-label" for="auth-password">Neues Passwort</label>
|
||||
<label class="field-label" for="auth-password">{{ __('Neues Passwort') }}</label>
|
||||
<div class="field-pw-wrap">
|
||||
<input
|
||||
id="auth-password"
|
||||
|
|
@ -99,15 +98,15 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Neues Passwor
|
|||
required
|
||||
autocomplete="new-password"
|
||||
class="field-input pr-[72px]"
|
||||
placeholder="Mindestens 8 Zeichen"
|
||||
:placeholder="__('Mindestens 8 Zeichen')"
|
||||
@error('password') aria-invalid="true" @enderror
|
||||
/>
|
||||
<button
|
||||
type="button"
|
||||
class="field-affix"
|
||||
@click="showPassword = !showPassword"
|
||||
x-text="showPassword ? 'Verbergen' : 'Anzeigen'"
|
||||
>Anzeigen</button>
|
||||
x-text="showPassword ? '{{ __('Verbergen') }}' : '{{ __('Anzeigen') }}'"
|
||||
>{{ __('Anzeigen') }}</button>
|
||||
</div>
|
||||
@error('password')
|
||||
<p class="field-error">{{ $message }}</p>
|
||||
|
|
@ -115,7 +114,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Neues Passwor
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<label class="field-label" for="auth-password-confirmation">Passwort bestätigen</label>
|
||||
<label class="field-label" for="auth-password-confirmation">{{ __('Passwort bestätigen') }}</label>
|
||||
<div class="field-pw-wrap">
|
||||
<input
|
||||
id="auth-password-confirmation"
|
||||
|
|
@ -124,20 +123,20 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Neues Passwor
|
|||
required
|
||||
autocomplete="new-password"
|
||||
class="field-input pr-[72px]"
|
||||
placeholder="Neues Passwort wiederholen"
|
||||
:placeholder="__('Neues Passwort wiederholen')"
|
||||
/>
|
||||
<button
|
||||
type="button"
|
||||
class="field-affix"
|
||||
@click="showPasswordConfirmation = !showPasswordConfirmation"
|
||||
x-text="showPasswordConfirmation ? 'Verbergen' : 'Anzeigen'"
|
||||
>Anzeigen</button>
|
||||
x-text="showPasswordConfirmation ? '{{ __('Verbergen') }}' : '{{ __('Anzeigen') }}'"
|
||||
>{{ __('Anzeigen') }}</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<button type="submit" class="auth-btn-primary !mt-[22px]" wire:loading.attr="disabled" wire:target="resetPassword">
|
||||
<span wire:loading.remove wire:target="resetPassword">Passwort zurücksetzen</span>
|
||||
<span wire:loading wire:target="resetPassword">Passwort wird gespeichert …</span>
|
||||
<span wire:loading.remove wire:target="resetPassword">{{ __('Passwort zurücksetzen') }}</span>
|
||||
<span wire:loading wire:target="resetPassword">{{ __('Passwort wird gespeichert …') }}</span>
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -23,10 +23,10 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Zwei-Faktor-B
|
|||
|
||||
<p class="text-[13.5px] text-ink-2 leading-[1.65] !-mt-2 mb-6">
|
||||
<span x-show="! recovery">
|
||||
Geben Sie den 6-stelligen Code aus Ihrer Authenticator-App ein.
|
||||
{{ __('Geben Sie den 6-stelligen Code aus Ihrer Authenticator-App ein.') }}
|
||||
</span>
|
||||
<span x-show="recovery" x-cloak>
|
||||
Geben Sie einen Ihrer Wiederherstellungs-Codes ein.
|
||||
{{ __('Geben Sie einen Ihrer Wiederherstellungs-Codes ein.') }}
|
||||
</span>
|
||||
</p>
|
||||
|
||||
|
|
@ -36,7 +36,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Zwei-Faktor-B
|
|||
@csrf
|
||||
|
||||
<div x-show="! recovery">
|
||||
<label class="field-label" for="code">Authentifizierungs-Code</label>
|
||||
<label class="field-label" for="code">{{ __('Authentifizierungs-Code') }}</label>
|
||||
<input
|
||||
id="code"
|
||||
name="code"
|
||||
|
|
@ -51,7 +51,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Zwei-Faktor-B
|
|||
</div>
|
||||
|
||||
<div x-show="recovery" x-cloak>
|
||||
<label class="field-label" for="recovery_code">Wiederherstellungs-Code</label>
|
||||
<label class="field-label" for="recovery_code">{{ __('Wiederherstellungs-Code') }}</label>
|
||||
<input
|
||||
id="recovery_code"
|
||||
name="recovery_code"
|
||||
|
|
@ -64,7 +64,7 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Zwei-Faktor-B
|
|||
</div>
|
||||
|
||||
<button type="submit" class="auth-btn-primary !mt-[18px]">
|
||||
Bestätigen
|
||||
{{ __('Bestätigen') }}
|
||||
</button>
|
||||
|
||||
<button
|
||||
|
|
@ -72,8 +72,8 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Zwei-Faktor-B
|
|||
class="auth-btn-outline !mt-0"
|
||||
x-on:click="recovery = ! recovery; $nextTick(() => (recovery ? document.getElementById('recovery_code') : $refs.code)?.focus())"
|
||||
>
|
||||
<span x-show="! recovery">Wiederherstellungs-Code verwenden</span>
|
||||
<span x-show="recovery" x-cloak>Code aus App verwenden</span>
|
||||
<span x-show="! recovery">{{ __('Wiederherstellungs-Code verwenden') }}</span>
|
||||
<span x-show="recovery" x-cloak>{{ __('Code aus App verwenden') }}</span>
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -25,15 +25,14 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Danke für Ih
|
|||
|
||||
<div>
|
||||
<p class="text-[13.5px] text-ink-2 leading-[1.65] !-mt-4 mb-6">
|
||||
Ihr Konto wurde angelegt. Wir haben Ihnen einen Bestätigungslink an
|
||||
{{ __('Ihr Konto wurde angelegt. Wir haben Ihnen einen Bestätigungslink an') }}
|
||||
<strong class="text-ink font-semibold">{{ Auth::user()?->email }}</strong>
|
||||
gesendet. Bitte öffnen Sie die Mail und klicken Sie auf den Link – danach
|
||||
wird Ihr Konto freigeschaltet und Sie landen direkt in Ihrem Dashboard.
|
||||
{{ __('gesendet. Bitte öffnen Sie die Mail und klicken Sie auf den Link – danach wird Ihr Konto freigeschaltet und Sie landen direkt in Ihrem Dashboard.') }}
|
||||
</p>
|
||||
|
||||
@if (session('status') === 'verification-link-sent')
|
||||
<div class="field-status mb-6" role="status">
|
||||
Ein neuer Bestätigungslink wurde an Ihre E-Mail-Adresse versendet.
|
||||
{{ __('Ein neuer Bestätigungslink wurde an Ihre E-Mail-Adresse versendet.') }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
|
|
@ -45,14 +44,14 @@ new #[Layout('components.layouts.auth.pressekonto', ['heading' => 'Danke für Ih
|
|||
wire:target="sendVerification"
|
||||
class="auth-btn-primary"
|
||||
>
|
||||
<span wire:loading.remove wire:target="sendVerification">Bestätigungs-Mail erneut senden</span>
|
||||
<span wire:loading wire:target="sendVerification">Mail wird gesendet …</span>
|
||||
<span wire:loading.remove wire:target="sendVerification">{{ __('Bestätigungs-Mail erneut senden') }}</span>
|
||||
<span wire:loading wire:target="sendVerification">{{ __('Mail wird gesendet …') }}</span>
|
||||
</button>
|
||||
|
||||
<form method="POST" action="{{ route('logout') }}">
|
||||
@csrf
|
||||
<button type="submit" class="auth-btn-outline">
|
||||
Abmelden
|
||||
{{ __('Abmelden') }}
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue