'Konto erstellen', 'eyebrow' => 'Registrierung im Publisher-Hub', 'topRightLabel' => 'Bereits Konto?', 'topRightLinkText' => 'Anmelden', 'topRightLinkHref' => '/login'])] class extends Component { public string $name = ''; public string $email = ''; public string $password = ''; public string $password_confirmation = ''; public bool $terms_accepted = false; /** * Handle an incoming registration request. */ public function register(): void { $validated = $this->validate([ 'name' => ['required', 'string', 'max:255'], 'email' => ['required', 'string', 'lowercase', 'email', 'max:255', 'unique:'.User::class], 'password' => ['required', 'string', 'confirmed', Rules\Password::defaults()], 'terms_accepted' => ['accepted'], ], [ 'terms_accepted.accepted' => 'Bitte bestätigen Sie unsere AGB und die Datenschutzerklärung.', ]); unset($validated['terms_accepted']); $validated['password'] = Hash::make($validated['password']); event(new Registered($user = User::create($validated))); Auth::login($user); // Frisch registrierte User sind in der Regel Customer ohne Admin- // Rollen → /admin/me. Ohne navigate:true, weil das Panel ein // anderes Vite-Bundle nutzt als das Hub-Auth-Layout. $defaultRoute = $user->canAccessAdmin() ? route('dashboard', absolute: false) : ($user->canAccessCustomer() ? route('me.dashboard', absolute: false) : '/'); $this->redirectIntended($defaultRoute); } }; ?>