AccountController::edit()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 2
nc 1
nop 0
dl 0
loc 5
c 1
b 0
f 0
cc 1
rs 10
1
<?php
2
3
namespace Wingsline\Blog\Http\Controllers;
4
5
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
6
use Illuminate\Foundation\Bus\DispatchesJobs;
7
use Illuminate\Foundation\Validation\ValidatesRequests;
8
use Illuminate\Routing\Controller as BaseController;
9
use Illuminate\Support\Facades\Auth;
10
use Illuminate\Support\Facades\Hash;
11
use Wingsline\Blog\Http\Requests\AccountEditRequest;
12
13
class AccountController extends BaseController
14
{
15
    use AuthorizesRequests;
16
    use DispatchesJobs;
17
    use ValidatesRequests;
18
19
    /**
20
     * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
21
     */
22
    public function edit()
23
    {
24
        $user = Auth::user();
25
26
        return view('blog::account.edit', compact('user'));
27
    }
28
29
    public function update(AccountEditRequest $request)
30
    {
31
        $user = Auth::user();
32
        $validated = $request->validated();
33
        $user->fill([
34
            'name' => $validated['name'],
35
            'email' => $validated['email'],
36
        ]);
37
38
        if (null !== $validated['password']) {
39
            $user->password = Hash::make($validated['password']);
0 ignored issues
show
Bug introduced by
Accessing password on the interface Illuminate\Contracts\Auth\Authenticatable suggest that you code against a concrete implementation. How about adding an instanceof check?
Loading history...
40
        }
41
42
        $user->save();
43
        if (\count($user->getChanges())) {
44
            flash()->success('Account updated.');
45
        }
46
47
        return redirect()->route('admin.account.edit');
48
    }
49
}
50