This commit is contained in:
2025-09-08 14:38:55 +05:00
parent b509a23f7a
commit cf8146fb4c
3 changed files with 16 additions and 6 deletions

View File

@@ -77,6 +77,7 @@ class AuthServiceProvider extends ServiceProvider
Gate::define('isMe', fn (User $user) => $user->isMe());
Gate::define('isSuperAdmin', fn (User $user) => $user->isSuperAdmin());
Gate::define('isAdmin', fn (User $user) => $user->isAdmin());
Gate::define('isCurrencyMaintainer', fn (User $user) => $user->isCurrencyMaintainer());
Gate::define('systemUser', fn (User $user) => $user->isSystemUser());
Gate::define('fuck', fn () => true);

View File

@@ -98,17 +98,18 @@ class NovaMenuRepo
MenuItem::resource(Branch::class),
])->collapsedByDefault(),
MenuGroup::make(__('Currencies'), [
MenuItem::resource(CurrencyRate::class),
MenuItem::resource(NovaVisaMasterSetting::class),
])->collapsedByDefault(),
MenuGroup::make(__('Locale'), [
MenuItem::resource(LocaleManagerResource::class),
])->collapsedByDefault(),
])->icon('cog')->collapsedByDefault()->canSee(NovaPermissionRepo::isAdmin()),
MenuSection::make(__('Currencies'), [
MenuItem::resource(CurrencyRate::class),
MenuItem::resource(NovaVisaMasterSetting::class),
])->icon('currency-dollar')
->collapsedByDefault()
->canSee(fn () => NovaPermissionRepo::isAdmin() || NovaPermissionRepo::isCurrencyMaintainer()),
MenuSection::resource(OnlinePaymentHistoryResource::class)
->icon('credit-card')
->canSee(NovaPermissionRepo::isAdmin()),

View File

@@ -30,4 +30,12 @@ class NovaPermissionRepo
{
return fn () => Gate::allows('isAdmin', auth()->user());
}
/**
* Check if user is a currency maintainer
*/
public static function isCurrencyMaintainer(): Closure
{
return fn () => Gate::allows('isCurrencyMaintainer', auth()->user());
}
}