- Fix: Notifiable-Trait zum User-Model hinzugefuegt (behebt notify()-500er) - Installer: SMTP-Verbindungstest mit EsmtpTransport + Ueberspringen-Link - Admin: Neuer E-Mail-Tab mit SMTP-Konfiguration + Verbindungstest - Admin: Lazy Quill-Initialisierung (nur sichtbare Locale wird geladen) - Uebersetzungen: 17 neue Mail-Keys in allen 6 Sprachen Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
63 lines
3.6 KiB
PHP
Executable File
63 lines
3.6 KiB
PHP
Executable File
<x-layouts.guest :title="__('auth_ui.register_title')">
|
|
<h2 class="text-xl font-bold text-center mb-6">{{ __('auth_ui.register_title') }}</h2>
|
|
|
|
@if ($invitation->players->isNotEmpty())
|
|
<div class="mb-4 p-3 bg-blue-50 border border-blue-200 rounded-md">
|
|
<p class="text-sm text-blue-800 font-medium mb-1">{{ __('auth_ui.children_assigned') }}</p>
|
|
<ul class="text-sm text-blue-700">
|
|
@foreach ($invitation->players as $player)
|
|
<li>{{ $player->full_name }} ({{ $player->team->name }})</li>
|
|
@endforeach
|
|
</ul>
|
|
</div>
|
|
@endif
|
|
|
|
<form method="POST" action="{{ route('register', $invitation->token) }}">
|
|
@csrf
|
|
|
|
{{-- Honeypot --}}
|
|
<div class="hidden" aria-hidden="true">
|
|
<input type="text" name="website" value="" tabindex="-1" autocomplete="off">
|
|
</div>
|
|
|
|
<div class="mb-4">
|
|
<label for="name" class="block text-sm font-medium text-gray-700 mb-1">{{ __('auth_ui.name_label') }} *</label>
|
|
<input type="text" name="name" id="name" value="{{ old('name') }}" required autofocus
|
|
class="w-full px-3 py-2 border border-gray-300 rounded-md focus:ring-blue-500 focus:border-blue-500 @error('name') border-red-500 @enderror">
|
|
@error('name')<p class="mt-1 text-sm text-red-600">{{ $message }}</p>@enderror
|
|
</div>
|
|
|
|
<div class="mb-4">
|
|
<label for="email" class="block text-sm font-medium text-gray-700 mb-1">{{ __('auth_ui.email_label') }} *</label>
|
|
<input type="email" name="email" id="email" value="{{ old('email', $invitation->email) }}" required
|
|
{{ $invitation->email ? 'readonly' : '' }}
|
|
class="w-full px-3 py-2 border border-gray-300 rounded-md focus:ring-blue-500 focus:border-blue-500 @error('email') border-red-500 @enderror {{ $invitation->email ? 'bg-gray-100' : '' }}">
|
|
@error('email')<p class="mt-1 text-sm text-red-600">{{ $message }}</p>@enderror
|
|
@if ($invitation->email)
|
|
<p class="mt-1 text-xs text-gray-500">{{ __('auth_ui.email_fixed_by_invitation') }}</p>
|
|
@endif
|
|
</div>
|
|
|
|
<div class="mb-4">
|
|
<label for="password" class="block text-sm font-medium text-gray-700 mb-1">{{ __('auth_ui.password_label') }} * <span class="font-normal text-gray-400">{{ __('auth_ui.password_min') }}</span></label>
|
|
<input type="password" name="password" id="password" required minlength="8"
|
|
class="w-full px-3 py-2 border border-gray-300 rounded-md focus:ring-blue-500 focus:border-blue-500 @error('password') border-red-500 @enderror">
|
|
@error('password')<p class="mt-1 text-sm text-red-600">{{ $message }}</p>@enderror
|
|
</div>
|
|
|
|
<div class="mb-6">
|
|
<label for="password_confirmation" class="block text-sm font-medium text-gray-700 mb-1">{{ __('auth_ui.password_confirm_label') }} *</label>
|
|
<input type="password" name="password_confirmation" id="password_confirmation" required minlength="8"
|
|
class="w-full px-3 py-2 border border-gray-300 rounded-md focus:ring-blue-500 focus:border-blue-500">
|
|
</div>
|
|
|
|
<button type="submit" class="w-full bg-blue-600 text-white py-2 rounded-md hover:bg-blue-700 font-medium">
|
|
{{ __('auth_ui.create_account') }}
|
|
</button>
|
|
</form>
|
|
|
|
<p class="mt-4 text-center text-sm text-gray-500">
|
|
{{ __('auth_ui.already_registered') }} <a href="{{ route('login') }}" class="text-blue-600 hover:underline">{{ __('auth_ui.go_to_login') }}</a>
|
|
</p>
|
|
</x-layouts.guest>
|