Issues (54)

src/Http/Controllers/UserController.php (1 issue)

1
<?php
2
3
namespace PhpCollective\MenuMaker\Http\Controllers;
4
5
use Illuminate\Http\Request;
6
use Illuminate\Routing\Controller;
7
use PhpCollective\MenuMaker\Storage\Role;
8
use PhpCollective\MenuMaker\Jobs\RemoveUserMenuCache;
9
10
class UserController extends Controller
11
{
12
    private $model;
13
14
    public function __construct()
15
    {
16
        $this->model = resolve('userModel');
17
    }
18
19
    /**
20
     * Display a listing of the resource.
21
     *
22
     * @return \Illuminate\View\View
23
     */
24
    public function index()
25
    {
26
        $users = $this->model->paginate();
0 ignored issues
show
The method paginate() does not exist on Illuminate\Contracts\Foundation\Application. ( Ignorable by Annotation )

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

26
        /** @scrutinizer ignore-call */ 
27
        $users = $this->model->paginate();

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...
27
        return view('menu-maker::users.index', compact('users'));
28
    }
29
30
    /**
31
     * Show the form for editing the specified resource.
32
     *
33
     * @param  $user
34
     * @return \Illuminate\View\View
35
     */
36
    public function edit($user)
37
    {
38
        $roles = Role::pluck('name', 'id');
39
        $selected = $user->roles()->pluck('id')->toArray();
40
        return view('menu-maker::users.edit', compact('user', 'roles', 'selected'));
41
    }
42
43
    /**
44
     * Update the specified resource in storage.
45
     *
46
     * @param $user
47
     * @param \Illuminate\Http\Request $request
48
     * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
49
     */
50
    public function update($user, Request $request)
51
    {
52
        $user->roles()->sync($request->role_id);
53
54
        RemoveUserMenuCache::dispatch($user);
55
56
        return redirect()
57
            ->to($request->redirects_to)
58
            ->withMessage(__('menu-maker::alerts.updated', ['name' => $user->name]));
59
    }
60
}
61