1 | <?php namespace Arcanesoft\Auth\Http\Controllers\Admin; |
||
18 | class UsersController extends Controller |
||
19 | { |
||
20 | /* ----------------------------------------------------------------- |
||
21 | | Traits |
||
22 | | ----------------------------------------------------------------- |
||
23 | */ |
||
24 | |||
25 | use JsonResponses; |
||
26 | |||
27 | /* ----------------------------------------------------------------- |
||
28 | | Properties |
||
29 | | ----------------------------------------------------------------- |
||
30 | */ |
||
31 | |||
32 | /** |
||
33 | * The user model. |
||
34 | * |
||
35 | * @var \Arcanesoft\Contracts\Auth\Models\User |
||
36 | */ |
||
37 | protected $user; |
||
38 | |||
39 | /* ----------------------------------------------------------------- |
||
40 | | Constructor |
||
41 | | ----------------------------------------------------------------- |
||
42 | */ |
||
43 | |||
44 | /** |
||
45 | * Instantiate the controller. |
||
46 | * |
||
47 | * @param \Arcanesoft\Contracts\Auth\Models\User $user |
||
48 | */ |
||
49 | public function __construct(User $user) |
||
58 | |||
59 | /* ----------------------------------------------------------------- |
||
60 | | Main Methods |
||
61 | | ----------------------------------------------------------------- |
||
62 | */ |
||
63 | |||
64 | /** |
||
65 | * List the users. |
||
66 | * |
||
67 | * @param bool $trashed |
||
68 | * |
||
69 | * @return \Illuminate\View\View |
||
70 | */ |
||
71 | public function index($trashed = false) |
||
85 | |||
86 | /** |
||
87 | * List the trashed users. |
||
88 | * |
||
89 | * @return \Illuminate\View\View |
||
90 | */ |
||
91 | public function trashList() |
||
95 | |||
96 | /** |
||
97 | * List the users by a role. |
||
98 | * |
||
99 | * @param \Arcanesoft\Contracts\Auth\Models\Role $role |
||
100 | * @param bool $trashed |
||
101 | * |
||
102 | * @return \Illuminate\View\View |
||
103 | */ |
||
104 | public function listByRole(Role $role, $trashed = false) |
||
118 | |||
119 | /** |
||
120 | * Show the create a new user form. |
||
121 | * |
||
122 | * @param \Arcanesoft\Contracts\Auth\Models\Role $role |
||
123 | * |
||
124 | * @return \Illuminate\View\View |
||
125 | */ |
||
126 | public function create(Role $role) |
||
137 | |||
138 | /** |
||
139 | * Store the new user. |
||
140 | * |
||
141 | * @param \Arcanesoft\Auth\Http\Requests\Admin\Users\CreateUserRequest $request |
||
142 | * @param \Arcanesoft\Contracts\Auth\Models\User $user |
||
143 | * |
||
144 | * @return \Illuminate\Http\RedirectResponse |
||
145 | */ |
||
146 | public function store(CreateUserRequest $request, User $user) |
||
159 | |||
160 | /** |
||
161 | * Show the user's details. |
||
162 | * |
||
163 | * @param \Arcanesoft\Contracts\Auth\Models\User $user |
||
164 | * |
||
165 | * @return \Illuminate\View\View |
||
166 | */ |
||
167 | public function show(User $user) |
||
178 | |||
179 | /** |
||
180 | * Show the edit the user form. |
||
181 | * |
||
182 | * @param \Arcanesoft\Contracts\Auth\Models\User $user |
||
183 | * @param \Arcanesoft\Contracts\Auth\Models\Role $role |
||
184 | * |
||
185 | * @return \Illuminate\View\View |
||
186 | */ |
||
187 | public function edit(User $user, Role $role) |
||
199 | |||
200 | /** |
||
201 | * Update the user. |
||
202 | * |
||
203 | * @param \Arcanesoft\Auth\Http\Requests\Admin\Users\UpdateUserRequest $request |
||
204 | * @param \Arcanesoft\Contracts\Auth\Models\User $user |
||
205 | * |
||
206 | * @return \Illuminate\Http\RedirectResponse |
||
207 | */ |
||
208 | public function update(UpdateUserRequest $request, User $user) |
||
219 | |||
220 | /** |
||
221 | * Activate/Disable a user. |
||
222 | * |
||
223 | * @param \Arcanesoft\Contracts\Auth\Models\User $user |
||
224 | * |
||
225 | * @return \Illuminate\Http\JsonResponse |
||
226 | */ |
||
227 | public function activate(User $user) |
||
246 | |||
247 | /** |
||
248 | * Restore the trashed user. |
||
249 | * |
||
250 | * @param \Arcanesoft\Contracts\Auth\Models\User $user |
||
251 | * |
||
252 | * @return \Illuminate\Http\JsonResponse |
||
253 | */ |
||
254 | public function restore(User $user) |
||
269 | |||
270 | /** |
||
271 | * Delete a user. |
||
272 | * |
||
273 | * @param \Arcanesoft\Contracts\Auth\Models\User $user |
||
274 | * |
||
275 | * @return \Illuminate\Http\JsonResponse |
||
276 | */ |
||
277 | public function delete(User $user) |
||
296 | |||
297 | /** |
||
298 | * Impersonate a user. |
||
299 | * |
||
300 | * @param \Arcanesoft\Contracts\Auth\Models\User $user |
||
301 | * @param \Arcanedev\LaravelImpersonator\Contracts\Impersonator $impersonator |
||
302 | * |
||
303 | * @return \Illuminate\Http\RedirectResponse |
||
304 | */ |
||
305 | public function impersonate(User $user, Impersonator $impersonator) |
||
319 | |||
320 | /* ----------------------------------------------------------------- |
||
321 | | Other Methods |
||
322 | | ----------------------------------------------------------------- |
||
323 | */ |
||
324 | |||
325 | /** |
||
326 | * Notify with translation. |
||
327 | * |
||
328 | * @param string $action |
||
329 | * @param array $replace |
||
330 | * @param array $context |
||
331 | * |
||
332 | * @return string |
||
333 | */ |
||
334 | protected function transNotification($action, array $replace = [], array $context = []) |
||
344 | } |
||
345 |
If you access a property on an interface, you most likely code against a concrete implementation of the interface.
Available Fixes
Adding an additional type check:
Changing the type hint: