Add more permissions

This commit is contained in:
Simon Pocrnjič
2025-10-31 10:16:38 +01:00
parent 7d4d18143d
commit ed4f67effb
18 changed files with 404 additions and 193 deletions
+30
View File
@@ -0,0 +1,30 @@
<?php
namespace Database\Seeders;
use App\Models\Permission;
use App\Models\Role;
use Illuminate\Database\Seeder;
class AddManagerRoleSeeder extends Seeder
{
public function run(): void
{
// Ensure the Manager role exists
$manager = Role::firstOrCreate(
['slug' => 'manager'],
[
'name' => 'Manager',
'description' => 'Team manager with elevated permissions',
]
);
// Give Manager all permissions except sensitive settings management (idempotent)
// If permissions are not seeded yet, this will simply sync an empty set.
$permissionIds = Permission::query()
->where('slug', '!=', 'manage-settings')
->pluck('id');
$manager->permissions()->sync($permissionIds);
}
}