Passed
Push — 5.0.0 ( 78f010...4a0fb0 )
by Fèvre
05:30
created

UserController::index()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 5
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 9
rs 10
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Xetaravel\Http\Controllers\Admin;
6
7
use Illuminate\Http\RedirectResponse;
8
use Illuminate\Http\Request;
9
use Illuminate\Support\Facades\Auth;
10
use Illuminate\Support\Facades\Hash;
11
use Illuminate\View\View;
12
use Xetaio\Mentions\Parser\MentionParser;
13
use Xetaravel\Models\Repositories\UserRepository;
14
use Xetaravel\Models\Role;
15
use Xetaravel\Models\User;
16
use Xetaravel\Models\Validators\UserValidator;
17
18
class UserController extends Controller
19
{
20
    /**
21
     * Show the search page.
22
     *
23
     * @return View
24
     */
25
    public function index(): View
26
    {
27
        $breadcrumbs = $this->breadcrumbs->addCrumb(
28
            '<svg class="w-5 h-5 mr-2" fill="currentColor" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><path d="M144 0a80 80 0 1 1 0 160A80 80 0 1 1 144 0zM512 0a80 80 0 1 1 0 160A80 80 0 1 1 512 0zM0 298.7C0 239.8 47.8 192 106.7 192l42.7 0c15.9 0 31 3.5 44.6 9.7c-1.3 7.2-1.9 14.7-1.9 22.3c0 38.2 16.8 72.5 43.3 96c-.2 0-.4 0-.7 0L21.3 320C9.6 320 0 310.4 0 298.7zM405.3 320c-.2 0-.4 0-.7 0c26.6-23.5 43.3-57.8 43.3-96c0-7.6-.7-15-1.9-22.3c13.6-6.3 28.7-9.7 44.6-9.7l42.7 0C592.2 192 640 239.8 640 298.7c0 11.8-9.6 21.3-21.3 21.3l-213.3 0zM224 224a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zM128 485.3C128 411.7 187.7 352 261.3 352l117.3 0C452.3 352 512 411.7 512 485.3c0 14.7-11.9 26.7-26.7 26.7l-330.7 0c-14.7 0-26.7-11.9-26.7-26.7z"></path></svg>
29
                        Manage Users',
30
            route('admin.user.index')
31
        );
32
33
        return view('Admin::User.index', compact('breadcrumbs'));
34
    }
35
36
    /**
37
     * Delete the avatar for the specified user.
38
     *
39
     * @param int $id The id of the user.
40
     *
41
     * @return RedirectResponse
42
     */
43
    public function deleteAvatar(int $id): RedirectResponse
44
    {
45
        $user = User::findOrFail($id);
46
47
        $user->clearMediaCollection('avatar');
48
        $user->addMedia(public_path('images/avatar.png'))
49
            ->preservingOriginal()
50
            ->setName(mb_substr(md5($user->username), 0, 10))
51
            ->setFileName(mb_substr(md5($user->username), 0, 10) . '.png')
52
            ->toMediaCollection('avatar');
53
54
        return redirect()
55
            ->back()
0 ignored issues
show
Bug introduced by
The method back() does not exist on Illuminate\Routing\Redirector. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-call  annotation

55
            ->/** @scrutinizer ignore-call */ back()

This check looks for calls to methods that do not seem to exist on a given type. It looks for the method on the type itself as well as in inherited classes or implemented interfaces.

This is most likely a typographical error or the method has been renamed.

Loading history...
56
            ->with('success', 'The avatar has been deleted successfully !');
57
    }
58
}
59