Completed
Push — dev5 ( f3ede3...502bc5 )
by Ron
08:16
created

ForgotPasswordController::sendResetLinkEmail()   A

Complexity

Conditions 3
Paths 4

Size

Total Lines 13
Code Lines 8

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 3
eloc 8
c 0
b 0
f 0
nc 4
nop 1
dl 0
loc 13
rs 10
1
<?php
2
3
namespace App\Http\Controllers\Auth;
4
5
use Illuminate\Http\Request;
6
use Illuminate\Support\Facades\Log;
7
use App\Http\Controllers\Controller;
8
use Illuminate\Support\Facades\Password;
9
use Illuminate\Foundation\Auth\SendsPasswordResetEmails;
10
11
class ForgotPasswordController extends Controller
12
{
13
    /*
14
    |--------------------------------------------------------------------------
15
    | Password Reset Controller
16
    |--------------------------------------------------------------------------
17
    |
18
    | This controller is responsible for handling password reset emails and
19
    | includes a trait which assists in sending these notifications from
20
    | your application to your users. Feel free to explore this trait.
21
    |
22
    */
23
24
    use SendsPasswordResetEmails;
25
26
    /**
27
     * Create a new controller instance.
28
     *
29
     * @return void
30
     */
31
    public function __construct()
32
    {
33
        $this->middleware('guest');
34
    }
35
    
36
    //  Override the sendResetLinkEmail function to provide logging when a reset request is made
37
    public function sendResetLinkEmail(Request $request)
38
    {
39
        $this->validateEmail($request);
40
41
        $response = $this->broker()->sendResetLink(
42
            $this->credentials($request)
43
        );
44
        
45
        $passOrFail = $response === 'passwords.sent' ? 'successful' : 'failed';
46
        Log::info('A password reset request was made for '.$request->email.'.  Response - '.$passOrFail);
47
        return $response == Password::RESET_LINK_SENT
48
                    ? $this->sendResetLinkResponse($request, $response)
49
                    : $this->sendResetLinkFailedResponse($request, $response);
50
    }
51
}
52