diff --git a/.gitignore b/.gitignore index f6f6918..3f4f211 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,4 @@ yarn-error.log /.vscode /.zed **/.DS_Store +/IntelephenseHelper.php diff --git a/app/Filament/Pages/ManageCtaSettings.php b/app/Filament/Pages/ManageCtaSettings.php index f227613..ea012d4 100644 --- a/app/Filament/Pages/ManageCtaSettings.php +++ b/app/Filament/Pages/ManageCtaSettings.php @@ -3,10 +3,12 @@ namespace App\Filament\Pages; use App\Settings\CtaSettings; +use App\Models\UserRole; use Filament\Forms; use Filament\Forms\Components\FileUpload; use Filament\Forms\Form; use Filament\Pages\SettingsPage; +use Illuminate\Contracts\Support\Htmlable; class ManageCtaSettings extends SettingsPage { @@ -42,4 +44,9 @@ class ManageCtaSettings extends SettingsPage ->columnSpan('full'), ]); } + + public static function canView(): bool + { + return auth()->user()->role === UserRole::ADMIN || auth()->user()->role === UserRole::MANAGER; + } } diff --git a/app/Filament/Pages/ManagePortfolio.php b/app/Filament/Pages/ManagePortfolio.php index 38f2254..7e47619 100644 --- a/app/Filament/Pages/ManagePortfolio.php +++ b/app/Filament/Pages/ManagePortfolio.php @@ -3,6 +3,7 @@ namespace App\Filament\Pages; use App\Settings\PortfolioSettings; +use App\Models\UserRole; use Filament\Forms\Components\FileUpload; use Filament\Forms\Components\Grid; use Filament\Forms\Components\Repeater; @@ -108,4 +109,9 @@ class ManagePortfolio extends SettingsPage { return 'Manage the portfolio section content, including items, categories, and titles.'; } + + public static function canView(): bool + { + return auth()->user()->role === UserRole::ADMIN || auth()->user()->role === UserRole::MANAGER; + } } diff --git a/app/Filament/Pages/ManageSolutions.php b/app/Filament/Pages/ManageSolutions.php index 8953715..15ae541 100644 --- a/app/Filament/Pages/ManageSolutions.php +++ b/app/Filament/Pages/ManageSolutions.php @@ -3,6 +3,7 @@ namespace App\Filament\Pages; use App\Settings\SolutionSettings; +use App\Models\UserRole; use Filament\Forms\Components\FileUpload; use Filament\Forms\Components\Grid; use Filament\Forms\Components\Repeater; @@ -376,4 +377,9 @@ class ManageSolutions extends SettingsPage { return 'Manage the solutions section content, including individual solution items.'; } + + public static function canView(): bool + { + return auth()->user()->role === UserRole::ADMIN || auth()->user()->role === UserRole::MANAGER; + } } diff --git a/app/Filament/Pages/ManageSuccess.php b/app/Filament/Pages/ManageSuccess.php index 1b1f5ec..adcaab0 100644 --- a/app/Filament/Pages/ManageSuccess.php +++ b/app/Filament/Pages/ManageSuccess.php @@ -3,6 +3,7 @@ namespace App\Filament\Pages; use App\Settings\SuccessSettings; +use App\Models\UserRole; use Filament\Forms\Components\FileUpload; use Filament\Forms\Components\Grid; use Filament\Forms\Components\Repeater; @@ -113,4 +114,9 @@ class ManageSuccess extends SettingsPage { return 'Manage the success section content, including text, button, and skill bars.'; } + + public static function canView(): bool + { + return auth()->user()->role === UserRole::ADMIN || auth()->user()->role === UserRole::MANAGER; + } } diff --git a/app/Providers/Filament/PanelPanelProvider.php b/app/Providers/Filament/PanelPanelProvider.php index ac06570..bf3fa02 100644 --- a/app/Providers/Filament/PanelPanelProvider.php +++ b/app/Providers/Filament/PanelPanelProvider.php @@ -81,7 +81,11 @@ class PanelPanelProvider extends PanelProvider public function boot(): void { Gate::before(function (User $user, string $ability) { - return $user->role === UserRole::ADMIN ? true : null; + if ($user->role === UserRole::ADMIN) { + return true; + } + + return null; }); Gate::define('view-activity-logs', function (User $user) {