PasswordResetLinkController::create()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 1
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 3
ccs 2
cts 2
cp 1
crap 1
rs 10
1
<?php
2
3
namespace App\Http\Controllers\Auth;
4
5
use App\Http\Controllers\Controller;
6
use Illuminate\Http\RedirectResponse;
7
use Illuminate\Http\Request;
8
use Illuminate\Support\Facades\Password;
9
use Illuminate\View\View;
10
11
class PasswordResetLinkController extends Controller
12
{
13
    /**
14
     * Display the password reset link request view.
15
     */
16 1
    public function create(): View
17
    {
18 1
        return view('auth.forgot-password');
19
    }
20
21
    /**
22
     * Handle an incoming password reset link request.
23
     *
24
     * @throws \Illuminate\Validation\ValidationException
25
     */
26 3
    public function store(Request $request): RedirectResponse
27
    {
28 3
        $request->validate([
29 3
            'email' => ['required', 'email'],
30 3
        ]);
31
32
        // We will send the password reset link to this user. Once we have attempted
33
        // to send the link, we will examine the response then see the message we
34
        // need to show to the user. Finally, we'll send out a proper response.
35 3
        $status = Password::sendResetLink(
36 3
            $request->only('email')
37 3
        );
38
39 3
        return $status == Password::RESET_LINK_SENT
40 3
                    ? back()->with('status', __($status))
41 3
                    : back()->withInput($request->only('email'))
42 3
                            ->withErrors(['email' => __($status)]);
43
    }
44
}
45