dealhub/routes/web/auth.php
kusowl aa3056e1d1 feature(admin-panel): admin can stop impersonating
- add a alert which shows which user admin is impersonating
- add a logout icon, which stops impersonating and restore admin
dashboard
2026-01-28 10:09:15 +05:30

26 lines
988 B
PHP

<?php
use App\Enums\UserTypes;
use App\Http\Controllers\Auth\AuthenticatedUserController;
use App\Http\Controllers\Auth\ImpersonatedUserController;
use App\Http\Controllers\Auth\RegisteredUserController;
use App\Http\Middleware\HasRole;
Route::middleware('guest')->group(function () {
Route::resource('/login', AuthenticatedUserController::class)
->middleware('throttle:6,1')
->only(['create', 'store']);
Route::resource('/register', RegisteredUserController::class)->only(['create', 'store']);
});
Route::delete('/logout', [AuthenticatedUserController::class, 'destroy'])
->middleware('auth')
->name('logout');
Route::middleware('auth')->group(function () {
Route::get('/impersonate/{user}', [ImpersonatedUserController::class, 'store'])
->middleware(HasRole::class.':'.UserTypes::Admin->value)
->name('impersonate');
Route::get('/impersonate', [ImpersonatedUserController::class, 'destroy'])->name('impersonate.destroy');
});