%PDF- %PDF-
Direktori : /www/loslex/demo/app/Http/Controllers/Auth/ |
Current File : //www/loslex/demo/app/Http/Controllers/Auth/PasswordResetLinkController.php |
<?php namespace App\Http\Controllers\Auth; use App\Http\Controllers\Controller; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; use Illuminate\Support\Facades\Password; use Illuminate\View\View; class PasswordResetLinkController extends Controller { /** * Display the password reset link request view. */ public function create(): View { return view('auth.forgot-password'); } /** * Handle an incoming password reset link request. * * @throws \Illuminate\Validation\ValidationException */ public function store(Request $request): RedirectResponse { $loginField = filter_var($request->input('login'), FILTER_VALIDATE_EMAIL) ? 'email' : 'username'; $request->merge([$loginField => $request->input('login')]); $request->validate([ 'email' => ['required_without:username', 'email', 'exists:users,email'], 'username' => ['required_without:email', 'string', 'exists:users,username'] ]); // We will send the password reset link to this user. Once we have attempted // to send the link, we will examine the response then see the message we // need to show to the user. Finally, we'll send out a proper response. $status = Password::sendResetLink($request->only($loginField)); return $status == Password::RESET_LINK_SENT ? back()->with('status', __($status)) : back()->withInput($request->only($loginField))->withErrors([$loginField => __($status)]); } }