Files
git-course/app/Http/Controllers/UserController.php

54 lines
1.1 KiB
PHP

<?php
namespace App\Http\Controllers;
use App\Http\Requests\UpdateUserRequest;
use App\Models\User;
use Illuminate\Http\RedirectResponse;
use Illuminate\View\View;
class UserController extends Controller
{
/**
* Display a listing of users.
*/
public function index(): View
{
$users = User::query()
->orderBy('name')
->paginate(10, ['id', 'name', 'email', 'created_at']);
return view('user.index', [
'users' => $users,
]);
}
/**
* Show the form for editing the specified user.
*/
public function edit(User $user): View
{
return view('user.edit', [
'user' => $user,
]);
}
/**
* Update the specified user.
*/
public function update(UpdateUserRequest $request, User $user): RedirectResponse
{
$user->fill($request->validated());
if ($user->isDirty('email')) {
$user->email_verified_at = null;
}
$user->save();
return redirect()
->route('user.edit', $user)
->with('status', 'user-updated');
}
}