2016-03-29 06:53:06 +00:00
|
|
|
<?php
|
2023-04-01 18:23:30 +00:00
|
|
|
declare(strict_types=1);
|
2016-03-29 06:53:06 +00:00
|
|
|
|
2023-04-01 18:23:30 +00:00
|
|
|
namespace App\DataFixtures;
|
2016-03-29 06:53:06 +00:00
|
|
|
|
2023-04-01 18:23:30 +00:00
|
|
|
use Doctrine\Bundle\FixturesBundle\Fixture;
|
2016-03-29 06:53:06 +00:00
|
|
|
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
|
2023-04-01 18:23:30 +00:00
|
|
|
use Doctrine\Persistence\ObjectManager;
|
|
|
|
use App\Entity\Blog\{Comment, Post};
|
|
|
|
use App\Entity\User;
|
2016-03-29 06:53:06 +00:00
|
|
|
|
2023-04-01 18:23:30 +00:00
|
|
|
class LoadCommentsData extends Fixture implements OrderedFixtureInterface
|
2016-03-29 06:53:06 +00:00
|
|
|
{
|
2023-04-01 18:23:30 +00:00
|
|
|
public function load(ObjectManager $om): void
|
2016-03-29 06:53:06 +00:00
|
|
|
{
|
|
|
|
/** @var Post $post */
|
2016-12-11 22:53:56 +00:00
|
|
|
$post = $this->getReference('test_post_longpost');
|
2016-03-29 06:53:06 +00:00
|
|
|
|
2016-12-11 22:53:56 +00:00
|
|
|
/** @var User[] $users */
|
|
|
|
$users = [
|
|
|
|
$this->getReference('test_user_99999'),
|
|
|
|
$this->getReference('test_user_99998'),
|
|
|
|
$this->getReference('test_user_99997'),
|
|
|
|
$this->getReference('test_user_99996'),
|
|
|
|
$this->getReference('test_user_99995'),
|
|
|
|
];
|
2016-03-29 06:53:06 +00:00
|
|
|
|
|
|
|
$comments = [];
|
|
|
|
|
|
|
|
foreach (range(1, 10000) as $num) {
|
|
|
|
$comment = (new Comment())
|
|
|
|
->setNumber($num)
|
2023-04-01 18:23:30 +00:00
|
|
|
->setDeleted(\random_int(0, 15) ? false : true)
|
2016-03-29 06:53:06 +00:00
|
|
|
->setCreatedAt(new \DateTime())
|
2016-12-11 22:58:58 +00:00
|
|
|
->setAuthor($users[array_rand($users)])
|
2016-03-29 06:53:06 +00:00
|
|
|
->setRec(false)
|
2016-12-11 22:53:56 +00:00
|
|
|
->setText(
|
|
|
|
'Some text with [link to @skobkin-ru site](https://skobk.in/) and `code block`'.PHP_EOL.
|
|
|
|
'and some quotation:'.PHP_EOL.
|
|
|
|
'> test test quote'.PHP_EOL.
|
|
|
|
'and some text after'
|
|
|
|
)
|
2016-03-29 06:53:06 +00:00
|
|
|
;
|
|
|
|
|
2023-04-01 18:23:30 +00:00
|
|
|
if (count($comments) > 0 && \random_int(0, 1)) {
|
|
|
|
$comment->setParent($comments[\random_int(0, count($comments) - 1)]);
|
2016-03-29 06:53:06 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
$post->addComment($comment);
|
|
|
|
$comments[] = $comment;
|
|
|
|
|
|
|
|
$om->persist($comment);
|
|
|
|
}
|
|
|
|
|
|
|
|
$om->flush();
|
|
|
|
}
|
|
|
|
|
2017-01-12 23:00:21 +00:00
|
|
|
public function getOrder(): int
|
2016-03-29 06:53:06 +00:00
|
|
|
{
|
|
|
|
return 3;
|
|
|
|
}
|
2023-04-01 18:23:30 +00:00
|
|
|
}
|