handle($request, fn () => $this->page($request)); } return $this->page($request); } private function page(TwoFactorAuthenticationRequest $request): Response { $actor = $request->user('web'); abort_unless($actor instanceof User, 403); $props = [ 'passwordRules' => Password::defaults()->toPasswordRulesString(), ]; if (Features::enabled(Features::twoFactorAuthentication())) { $props += [ 'canManageTwoFactor' => true, 'twoFactorEnabled' => $actor->hasEnabledTwoFactorAuthentication(), 'twoFactorPending' => $actor->two_factor_secret !== null && ! $actor->hasEnabledTwoFactorAuthentication(), 'requiresConfirmation' => Fortify::confirmsTwoFactorAuthentication(), ]; } Inertia::encryptHistory(); $response = Inertia::render('settings/security', $props)->toResponse($request); $response->headers->set('Cache-Control', 'private, no-store, max-age=0'); return $response; } /** * Update the user's password. */ public function update(PasswordUpdateRequest $request): RedirectResponse { $request->user()->update([ 'password' => $request->password, ]); Inertia::flash('toast', ['type' => 'success', 'message' => __('Palavra-passe actualizada.')]); return back(); } }