- Added standard Laravel directory structure and configuration. - Included Svelte and Tailwind configuration for the admin interface. - Added core PHPUnit and testing scripts.
36 lines
1 KiB
PHP
36 lines
1 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Admin\Users;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Http\Requests\Admin\Users\DestroyUserRequest;
|
|
use App\Models\User;
|
|
use App\Services\UserService;
|
|
|
|
/**
|
|
* Controller for deleting a user.
|
|
*/
|
|
class UserDestroyController extends Controller
|
|
{
|
|
/**
|
|
* Remove the specified user.
|
|
*
|
|
* @param \App\Http\Requests\Admin\Users\DestroyUserRequest $request
|
|
* @param \App\Models\User $user
|
|
* @param \App\Services\UserService $userService
|
|
* @return \Illuminate\Http\RedirectResponse
|
|
*/
|
|
public function __invoke(DestroyUserRequest $request, User $user, UserService $userService)
|
|
{
|
|
if ($user->is_protected) {
|
|
return redirect()->back()->with('error', 'The protected user cannot be deleted.');
|
|
}
|
|
|
|
if ($userService->delete($user)) {
|
|
return redirect()->route('admin.users.index')->with('status', 'User deleted successfully.');
|
|
}
|
|
|
|
return redirect()->back()->with('error', 'Failed to delete user.');
|
|
}
|
|
}
|