mc-cms-namelessmc/dev/scripts/seeder/ForumTopicSeeder.php

37 lines
1.3 KiB
PHP
Raw Permalink Normal View History

2022-05-30 22:56:16 -06:00
<?php
class ForumTopicSeeder extends Seeder
{
2022-05-30 22:56:16 -06:00
public array $tables = [
'nl2_topics',
];
protected function run(DB $db, \Faker\Generator $faker): void
{
2022-05-30 22:56:16 -06:00
$forums = $db->get('forums', ['id', '<>', 0])->results();
$users = $db->get('users', ['id', '<>', 0])->results();
foreach ($forums as $forum) {
$this->times(FORUM_TOPIC_COUNT, function () use ($db, $faker, $forum, $users) {
2022-05-30 22:56:16 -06:00
if ($forum->forum_type === 'category' && !$faker->boolean) {
return;
}
$user = $faker->randomElement($users);
$topic_date = $this->since($user->joined, $faker)->format('U');
$db->insert('topics', [
'forum_id' => $forum->id,
'topic_title' => $faker->sentence,
'topic_creator' => $user->id,
'topic_last_user' => $user->id,
'topic_date' => $topic_date,
'topic_reply_date' => $this->since($topic_date, $faker)->format('U'),
'topic_views' => $faker->numberBetween(0, 1000),
'locked' => $faker->boolean(40),
'sticky' => $faker->boolean(20),
]);
});
}
}
}