2018-04-14 23:17:47 +02:00
|
|
|
<?php
|
|
|
|
|
2021-10-30 22:29:59 +02:00
|
|
|
namespace Database\Seeders;
|
|
|
|
|
2019-09-14 15:17:55 +02:00
|
|
|
use BookStack\Auth\Permissions\PermissionService;
|
|
|
|
use BookStack\Auth\Role;
|
|
|
|
use BookStack\Auth\User;
|
2020-11-22 01:17:45 +01:00
|
|
|
use BookStack\Entities\Models\Chapter;
|
|
|
|
use BookStack\Entities\Models\Page;
|
|
|
|
use BookStack\Entities\Tools\SearchIndex;
|
2018-04-14 23:17:47 +02:00
|
|
|
use Illuminate\Database\Seeder;
|
2019-09-14 15:17:55 +02:00
|
|
|
use Illuminate\Support\Str;
|
2018-04-14 23:17:47 +02:00
|
|
|
|
|
|
|
class LargeContentSeeder extends Seeder
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* Run the database seeds.
|
|
|
|
*
|
|
|
|
* @return void
|
|
|
|
*/
|
|
|
|
public function run()
|
|
|
|
{
|
|
|
|
// Create an editor user
|
2021-10-30 22:29:59 +02:00
|
|
|
$editorUser = User::factory()->create();
|
2019-09-14 15:17:55 +02:00
|
|
|
$editorRole = Role::getRole('editor');
|
2018-04-14 23:17:47 +02:00
|
|
|
$editorUser->attachRole($editorRole);
|
|
|
|
|
2021-10-30 22:29:59 +02:00
|
|
|
$largeBook = \BookStack\Entities\Models\Book::factory()->create(['name' => 'Large book' . Str::random(10), 'created_by' => $editorUser->id, 'updated_by' => $editorUser->id]);
|
|
|
|
$pages = Page::factory()->count(200)->make(['created_by' => $editorUser->id, 'updated_by' => $editorUser->id]);
|
|
|
|
$chapters = Chapter::factory()->count(50)->make(['created_by' => $editorUser->id, 'updated_by' => $editorUser->id]);
|
2018-04-14 23:17:47 +02:00
|
|
|
$largeBook->pages()->saveMany($pages);
|
|
|
|
$largeBook->chapters()->saveMany($chapters);
|
2019-09-14 15:17:55 +02:00
|
|
|
app(PermissionService::class)->buildJointPermissions();
|
2020-11-22 01:17:45 +01:00
|
|
|
app(SearchIndex::class)->indexAllEntities();
|
2018-04-14 23:17:47 +02:00
|
|
|
}
|
|
|
|
}
|