File tree 4 files changed +37
-2
lines changed
4 files changed +37
-2
lines changed Original file line number Diff line number Diff line change
1
+ <?php
2
+
3
+ namespace App \Policies ;
4
+
5
+ use App \Enums \Role ;
6
+ use App \Models \User ;
7
+
8
+ class PermissionPolicy
9
+ {
10
+ public function viewAny (User $ user ): bool
11
+ {
12
+ return $ user ->hasRole (Role::SUPER_ADMIN );
13
+ }
14
+ }
Original file line number Diff line number Diff line change
1
+ <?php
2
+
3
+ namespace App \Policies ;
4
+
5
+ use App \Enums \Role ;
6
+ use App \Models \User ;
7
+
8
+ class RolePolicy
9
+ {
10
+ public function viewAny (User $ user ): bool
11
+ {
12
+ return $ user ->hasRole (Role::SUPER_ADMIN );
13
+ }
14
+ }
Original file line number Diff line number Diff line change 9
9
10
10
class AuthServiceProvider extends ServiceProvider
11
11
{
12
+ protected $ policies = [
13
+ \Spatie \Permission \Models \Role::class => \App \Policies \RolePolicy::class,
14
+ \Spatie \Permission \Models \Permission::class => \App \Policies \PermissionPolicy::class,
15
+ ];
16
+
12
17
public function boot (): void
13
18
{
14
19
// @codeCoverageIgnoreStart
Original file line number Diff line number Diff line change 46
46
$ this ->seed (RolesAndPermissionsSeeder::class);
47
47
});
48
48
49
- it ("can only access Filament if it's a \"super-admin \"" , function () {
49
+ it ("can only access Filament if it's a \"super-admin \" or \" admin \" " , function () {
50
50
$ superAdminUser = User::factory ()->superAdmin ()->create ();
51
51
$ adminUser = User::factory ()->admin ()->create ();
52
+ $ user = User::factory ()->user ()->create ();
52
53
53
54
expect ($ superAdminUser ->canAccessPanel ())->toBeTrue ();
54
- expect ($ adminUser ->canAccessPanel ())->toBeFalse ();
55
+ expect ($ adminUser ->canAccessPanel ())->toBeTrue ();
56
+ expect ($ user ->canAccessPanel ())->toBeFalse ();
55
57
});
56
58
});
You can’t perform that action at this time.
0 commit comments