- Added `DefaultUserRole` and permissions enums (`AccessManager`, `Apps`, `Settings`) for centralizing role and permission constants. - Implemented `DashboardRoute` helper to resolve routes dynamically based on user roles. - Introduced seeders for default roles (`DefaultRoleWithPermissionSeeder`, `PermissionSeeder`, `ExampleUserWithRoleSeeder`) with role-permission assignments. - Created `EnumExtractor` utility for parsing enums and generating permissions. - Customized dashboard routes with role-based redirection logic. - Updated sidebar navigation to display role-based menu items with permission checks.
20 lines
381 B
PHP
20 lines
381 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Helpers\DashboardRoute;
|
|
use Illuminate\Http\Request;
|
|
|
|
class ResolveDashboardRouteController extends Controller
|
|
{
|
|
public function __invoke(Request $request)
|
|
{
|
|
$user = $request->user();
|
|
$route = DashboardRoute::resolve($user->getRoleNames());
|
|
|
|
return to_route($route);
|
|
}
|
|
}
|