dealhub/routes/web.php
kusowl d62b6977c4 feat(user dashboard): add user-specific dashboard with deal listings
- Created a dedicated UserDashboardController to handle user-related logic.
- Added deal listing views and components for users, including action toolbars, broker contact, and stat badges.
- Refactored UI components to support new features like toggle buttons and improved input handling.
- Updated routes with a new prefix for user-related pathways, ensuring a better structure across dashboards.
2026-01-14 17:42:56 +05:30

46 lines
1.7 KiB
PHP

<?php
use App\Enums\UserTypes;
use App\Http\Controllers\AuthenticatedUserController;
use App\Http\Controllers\Broker\BrokerDashboardController;
use App\Http\Controllers\Broker\BrokerProfileController;
use App\Http\Controllers\BrokerDealController;
use App\Http\Controllers\HomeController;
use App\Http\Controllers\RegisteredUserController;
use App\Http\Controllers\User\UserDashboardController;
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('/admin/dashboard', 'dashboards.admin.index')
->middleware(HasRole::class.':'.UserTypes::Admin->value)
->name('admin.dashboard');
Route::prefix('/user')
->name('user.')
->middleware(HasRole::class.':'.UserTypes::User->value)
->group(function () {
Route::get('dashboard', [UserDashboardController::class, 'index'])->name('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)->except('show');
Route::resource('profile', BrokerProfileController::class)->except('index', 'store', 'create');
});
});