PasswordController::update()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 22
Code Lines 12

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 3
eloc 12
nc 3
nop 1
dl 0
loc 22
rs 9.2
c 0
b 0
f 0
1
<?php
2
3
namespace App\Http\Controllers\Account;
4
5
use Hash;
6
use Mail;
7
use App\Mail\PasswordUpdated;
8
use App\Http\Controllers\Controller;
9
use App\Http\Requests\Account\PasswordUpdateRequest;
10
11
class PasswordController extends Controller
12
{
13
    /**
14
     * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
15
     */
16
    public function index()
17
    {
18
        $account = auth()->user();
19
20
        return view('account.password', compact('account'));
21
    }
22
23
    public function update(PasswordUpdateRequest $request)
24
    {
25
        $check = Hash::check($request->input('old_password'), auth()->user()->password);
26
27
        if (! $check) {
28
            return redirect()->back()->withErrors(['Your current password is incorrect!']);
29
        }
30
31
        $user = $request->user();
32
        $user->password = bcrypt($request->input('new_password'));
33
        $user->save();
34
35
        if (env('NOTIFICATIONS') == true) {
36
            Mail::to($user)->queue(new PasswordUpdated());
37
        }
38
39
        notify()->flash('Password', 'success', [
40
            'timer' => 2000,
41
            'text' => 'Successfully updated!',
42
        ]);
43
44
        return redirect()->back();
45
    }
46
}
47