dealhub/routes/web.php
2026-01-13 15:11:38 +05:30

39 lines
1.4 KiB
PHP

<?php
use App\Enums\UserTypes;
use App\Http\Controllers\AuthenticatedUserController;
use App\Http\Controllers\Broker\BrokerDashboardController;
use App\Http\Controllers\BrokerDealController;
use App\Http\Controllers\HomeController;
use App\Http\Controllers\RegisteredUserController;
use App\Http\Middleware\HasRole;
use Illuminate\Support\Facades\Route;
Route::get('/', HomeController::class)->name('home');
Route::middleware('guest')->group(function () {
Route::resource('/login', AuthenticatedUserController::class)->only(['create', 'store']);
Route::resource('/register', RegisteredUserController::class)->only(['create', 'store']);
});
Route::middleware('auth')->group(function () {
Route::delete('/logout', [AuthenticatedUserController::class, 'destroy'])->name('logout');
Route::view('/user/dashboard', 'dashboards.user.index')
->middleware(HasRole::class.':'.UserTypes::User->value)
->name('user.dashboard');
Route::view('/admin/dashboard', 'dashboards.admin.index')
->middleware(HasRole::class.':'.UserTypes::Admin->value)
->name('admin.dashboard');
Route::prefix('/broker')
->name('broker.')
->middleware(HasRole::class.':'.UserTypes::Broker->value)
->group(function () {
Route::get('dashboard', [BrokerDashboardController::class, 'index'])->name('dashboard');
Route::resource('deals', BrokerDealController::class);
});
});