cleanup user menu items

This commit is contained in:
Boy132 2025-09-04 11:40:23 +02:00
parent 3fb0785866
commit fae5e3ae2c
5 changed files with 14 additions and 16 deletions

View File

@ -18,12 +18,10 @@ class AdminPanelProvider extends PanelProvider
->breadcrumbs(false) ->breadcrumbs(false)
->sidebarCollapsibleOnDesktop() ->sidebarCollapsibleOnDesktop()
->userMenuItems([ ->userMenuItems([
'profile' => fn (Action $action) => $action->label(auth()->user()->username), Action::make('exit_admin')
Action::make('exitAdmin')
->label(fn () => trans('profile.exit_admin')) ->label(fn () => trans('profile.exit_admin'))
->url(fn () => Filament::getPanel('app')->getUrl()) ->url(fn () => Filament::getPanel('app')->getUrl())
->icon('tabler-arrow-back') ->icon('tabler-arrow-back'),
->sort(24),
]) ])
->navigationGroups([ ->navigationGroups([
NavigationGroup::make(fn () => trans('admin/dashboard.server')) NavigationGroup::make(fn () => trans('admin/dashboard.server'))

View File

@ -16,12 +16,10 @@ class AppPanelProvider extends PanelProvider
->breadcrumbs(false) ->breadcrumbs(false)
->navigation(false) ->navigation(false)
->userMenuItems([ ->userMenuItems([
'profile' => fn (Action $action) => $action->label(auth()->user()->username), Action::make('to_admin')
Action::make('toAdmin')
->label(trans('profile.admin')) ->label(trans('profile.admin'))
->url(fn () => Filament::getPanel('admin')->getUrl()) ->url(fn () => Filament::getPanel('admin')->getUrl())
->icon('tabler-arrow-forward') ->icon('tabler-arrow-forward')
->sort(5)
->visible(fn () => auth()->user()->canAccessPanel(Filament::getPanel('admin'))), ->visible(fn () => auth()->user()->canAccessPanel(Filament::getPanel('admin'))),
]) ])
->discoverResources(in: app_path('Filament/App/Resources'), for: 'App\\Filament\\App\\Resources'); ->discoverResources(in: app_path('Filament/App/Resources'), for: 'App\\Filament\\App\\Resources');

View File

@ -5,6 +5,7 @@ namespace App\Providers\Filament;
use App\Filament\Pages\Auth\Login; use App\Filament\Pages\Auth\Login;
use App\Filament\Pages\Auth\EditProfile; use App\Filament\Pages\Auth\EditProfile;
use App\Http\Middleware\LanguageMiddleware; use App\Http\Middleware\LanguageMiddleware;
use Filament\Actions\Action;
use Filament\Auth\MultiFactor\App\AppAuthentication; use Filament\Auth\MultiFactor\App\AppAuthentication;
use Filament\Auth\MultiFactor\Email\EmailAuthentication; use Filament\Auth\MultiFactor\Email\EmailAuthentication;
use Filament\Http\Middleware\Authenticate; use Filament\Http\Middleware\Authenticate;
@ -34,6 +35,10 @@ abstract class PanelProvider extends BasePanelProvider
->topNavigation(fn () => auth()->user()->getCustomization()['top_navigation'] ?? false) ->topNavigation(fn () => auth()->user()->getCustomization()['top_navigation'] ?? false)
->maxContentWidth(config('panel.filament.display-width', 'screen-2xl')) ->maxContentWidth(config('panel.filament.display-width', 'screen-2xl'))
->profile(EditProfile::class, false) ->profile(EditProfile::class, false)
->userMenuItems([
'profile' => fn (Action $action) => $action
->url(fn () => EditProfile::getUrl(panel: 'app')),
])
->login(Login::class) ->login(Login::class)
->passwordReset() ->passwordReset()
->multiFactorAuthentication([ ->multiFactorAuthentication([

View File

@ -4,7 +4,6 @@ namespace App\Providers\Filament;
use App\Filament\App\Resources\Servers\Pages\ListServers; use App\Filament\App\Resources\Servers\Pages\ListServers;
use App\Filament\Admin\Resources\Servers\Pages\EditServer; use App\Filament\Admin\Resources\Servers\Pages\EditServer;
use App\Filament\Pages\Auth\EditProfile;
use App\Http\Middleware\Activity\ServerSubject; use App\Http\Middleware\Activity\ServerSubject;
use App\Models\Server; use App\Models\Server;
use Filament\Actions\Action; use Filament\Actions\Action;
@ -19,20 +18,17 @@ class ServerPanelProvider extends PanelProvider
return parent::panel($panel) return parent::panel($panel)
->id('server') ->id('server')
->path('server') ->path('server')
->homeUrl('/') ->homeUrl(fn () => Filament::getPanel('app')->getUrl())
->tenant(Server::class) ->tenant(Server::class)
->userMenuItems([ ->userMenuItems([
'profile' => fn (Action $action) => $action->label(auth()->user()->username)->url(fn () => EditProfile::getUrl(panel: 'app')), Action::make('to_serverList')
Action::make('toServerList') ->label(trans('profile.server_list'))
->label('Server List')
->icon('tabler-brand-docker') ->icon('tabler-brand-docker')
->url(fn () => ListServers::getUrl(panel: 'app')) ->url(fn () => ListServers::getUrl(panel: 'app')),
->sort(6), Action::make('to_admin')
Action::make('toAdmin')
->label(trans('profile.admin')) ->label(trans('profile.admin'))
->icon('tabler-arrow-forward') ->icon('tabler-arrow-forward')
->url(fn () => Filament::getPanel('admin')->getUrl()) ->url(fn () => Filament::getPanel('admin')->getUrl())
->sort(5)
->visible(fn () => auth()->user()->canAccessPanel(Filament::getPanel('admin'))), ->visible(fn () => auth()->user()->canAccessPanel(Filament::getPanel('admin'))),
]) ])
->navigationItems([ ->navigationItems([

View File

@ -14,6 +14,7 @@ return [
'username' => 'Username', 'username' => 'Username',
'admin' => 'Admin', 'admin' => 'Admin',
'exit_admin' => 'Exit Admin', 'exit_admin' => 'Exit Admin',
'server_list' => 'Server List',
'email' => 'Email', 'email' => 'Email',
'password' => 'Password', 'password' => 'Password',
'current_password' => 'Current Password', 'current_password' => 'Current Password',