customize nova menu
This commit is contained in:
@@ -2,7 +2,18 @@
|
||||
|
||||
namespace App\Providers;
|
||||
|
||||
use App\Nova\Resources\Branch\Branch;
|
||||
use App\Nova\Resources\System\Location\Province;
|
||||
use App\Nova\Resources\System\Roles\Permission;
|
||||
use App\Nova\Resources\System\Roles\Role;
|
||||
use App\Nova\User;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Gate;
|
||||
use Laravel\Nova\Dashboards\Main;
|
||||
use Laravel\Nova\Menu\Menu;
|
||||
use Laravel\Nova\Menu\MenuGroup;
|
||||
use Laravel\Nova\Menu\MenuItem;
|
||||
use Laravel\Nova\Menu\MenuSection;
|
||||
use Laravel\Nova\Nova;
|
||||
use Laravel\Nova\NovaApplicationServiceProvider;
|
||||
|
||||
@@ -13,10 +24,13 @@ class NovaServiceProvider extends NovaApplicationServiceProvider
|
||||
*/
|
||||
public function boot(): void
|
||||
{
|
||||
parent::boot();
|
||||
|
||||
Nova::withBreadcrumbs();
|
||||
Nova::footer(fn () => view('vendor.nova.partials.footer')->render());
|
||||
|
||||
parent::boot();
|
||||
$this->setupNavigation();
|
||||
$this->setupUserNavigation();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -50,7 +64,7 @@ class NovaServiceProvider extends NovaApplicationServiceProvider
|
||||
protected function dashboards(): array
|
||||
{
|
||||
return [
|
||||
new \App\Nova\Dashboards\Main,
|
||||
new Main,
|
||||
];
|
||||
}
|
||||
|
||||
@@ -69,4 +83,47 @@ class NovaServiceProvider extends NovaApplicationServiceProvider
|
||||
{
|
||||
//
|
||||
}
|
||||
|
||||
/**
|
||||
* Setup user navigation (dropdown).
|
||||
*/
|
||||
public function setupUserNavigation(): void
|
||||
{
|
||||
Nova::userMenu(function (Request $request, Menu $menu) {
|
||||
$menu->prepend(
|
||||
MenuItem::make(
|
||||
__('My Profile'),
|
||||
sprintf('/resources/users/%s', $request->user()->id)
|
||||
)
|
||||
);
|
||||
|
||||
return $menu;
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Setup navigation
|
||||
*/
|
||||
public function setupNavigation(): void
|
||||
{
|
||||
Nova::mainMenu(function (Request $request) {
|
||||
return [
|
||||
MenuSection::dashboard(Main::class)->icon('chart-bar'),
|
||||
|
||||
MenuSection::make(__('System'), [
|
||||
MenuGroup::make(__('User'), [
|
||||
MenuItem::resource(User::class),
|
||||
MenuItem::resource(Role::class),
|
||||
MenuItem::resource(Permission::class),
|
||||
])->collapsable(),
|
||||
|
||||
MenuGroup::make(__('Location'), [
|
||||
MenuItem::resource(Province::class),
|
||||
MenuItem::resource(Branch::class),
|
||||
])->collapsable(),
|
||||
|
||||
])->icon('cog')->collapsable(),
|
||||
];
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user