Files
KanbanGit/database/seeders/UserSeeder.php
Twyco f6ec164f27
linter / quality (pull_request) Successful in 1m31s
tests / ci (8.4) (pull_request) Successful in 1m51s
Backfill avatars for existing users
2026-06-24 14:41:28 +02:00

50 lines
1.2 KiB
PHP

<?php
namespace Database\Seeders;
use App\Actions\Users\UpdateUserAvatar;
use App\Enums\Permission;
use App\Models\PermissionAssignment;
use App\Models\User;
use Illuminate\Database\Seeder;
class UserSeeder extends Seeder
{
public function __construct(
private readonly UpdateUserAvatar $avatars,
) {}
/**
* Run the database seeds.
*/
public function run(): void
{
$admin = User::factory()->create([
'name' => 'Admin User',
'email' => 'admin@kanbangit.test',
]);
$this->avatars->generate($admin);
PermissionAssignment::factory()
->forAssignee($admin)
->globalAdmin()
->create();
$testUser = User::factory()->create([
'name' => 'Test User',
'email' => 'test@example.com',
]);
$this->avatars->generate($testUser);
PermissionAssignment::factory()
->forAssignee($testUser)
->global()
->permission(Permission::ProjectCreate)
->create();
User::factory(8)
->create()
->each(fn (User $user) => $this->avatars->generate($user));
}
}