ldc-volena/database/seeders/Development/SiteSeeder.php
2024-03-26 12:23:04 +01:00

56 lines
1.7 KiB
PHP

<?php
namespace Database\Seeders\Development;
use App\Lib\Helpers\FileStorageHelper;
use App\Models\Logo;
use App\Models\Site;
use Illuminate\Database\Seeder;
/**
* @package Database\Seeders\Development
*/
class SiteSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
FileStorageHelper::removeModelFiles(new Site());
// @phpstan-ignore-next-line
Site::factory(10)->make()->each(function (Site $site) {
$site->logo = FileStorageHelper::storeFile(
new Site(),
new \SplFileInfo(\resource_path(
'../database/factories/assets/sites/default-picture-1000x727.jpg'
))
);
$site->picture_1 = FileStorageHelper::storeFile(
new Site(),
new \SplFileInfo(\resource_path(
'../database/factories/assets/sites/default-picture-1000x562.png'
))
);
$site->picture_2 = FileStorageHelper::storeFile(
new Site(),
new \SplFileInfo(\resource_path(
'../database/factories/assets/sites/default-picture-1000x562.png'
))
);
$site->picture_3 = FileStorageHelper::storeFile(
new Site(),
new \SplFileInfo(\resource_path(
'../database/factories/assets/sites/default-picture-1000x562.png'
))
);
$site->save();
});
$logos = Logo::query()->get();
Site::query()->each(function (Site $site) use ($logos) {
$site->logos()->saveManyQuietly($logos->random(\rand(0, 3)));
});
}
}