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;
|
|
|
|
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
|
|
|
|
use Doctrine\Persistence\ObjectManager;
|
|
|
|
use App\Entity\Blog\Post;
|
|
|
|
use App\Entity\User;
|
2016-03-29 06:53:06 +00:00
|
|
|
|
2023-04-01 18:23:30 +00:00
|
|
|
class LoadPostData extends Fixture implements OrderedFixtureInterface
|
2016-03-29 06:53:06 +00:00
|
|
|
{
|
2023-04-01 18:23:30 +00:00
|
|
|
private const POST_ID_LONG = 'longpost';
|
2019-04-03 15:55:29 +00:00
|
|
|
public const POST_ID_SHORT = 'shortpost';
|
|
|
|
public const POST_ID_PR_USER = 'prusrpst';
|
|
|
|
public const POST_ID_WL_USER = 'wlusrpst';
|
|
|
|
public const POST_ID_PR_WL_USER = 'prwlusrpst';
|
|
|
|
|
2016-03-29 06:53:06 +00:00
|
|
|
public function load(ObjectManager $om)
|
|
|
|
{
|
2019-04-03 15:38:53 +00:00
|
|
|
/** @var User $mainUser */
|
|
|
|
$mainUser = $this->getReference('test_user_'.LoadUserData::USER_MAIN_ID);
|
|
|
|
/** @var User $privateUser */
|
|
|
|
$privateUser = $this->getReference('test_user_'.LoadUserData::USER_PRIV_ID);
|
|
|
|
/** @var User $wlUser */
|
|
|
|
$wlUser = $this->getReference('test_user_'.LoadUserData::USER_WLON_ID);
|
|
|
|
/** @var User $prWlUser */
|
|
|
|
$prWlUser = $this->getReference('test_user_'.LoadUserData::USER_PRWL_ID);
|
2016-03-29 06:53:06 +00:00
|
|
|
|
2019-04-03 15:55:29 +00:00
|
|
|
$longPost = (new Post(self::POST_ID_LONG, $mainUser, new \DateTime(), Post::TYPE_POST))
|
2016-03-29 06:53:06 +00:00
|
|
|
->setText('Test post with many comments')
|
|
|
|
->setPrivate(false)
|
|
|
|
->setDeleted(false)
|
|
|
|
;
|
|
|
|
|
2019-04-03 15:55:29 +00:00
|
|
|
$shortPost = (new Post(self::POST_ID_SHORT, $mainUser, new \DateTime(), Post::TYPE_POST))
|
2016-12-12 16:58:29 +00:00
|
|
|
->setText('Test short post')
|
|
|
|
->setPrivate(false)
|
|
|
|
->setDeleted(false)
|
|
|
|
;
|
|
|
|
|
2019-04-03 15:55:29 +00:00
|
|
|
$privateUserPost = (new Post(self::POST_ID_PR_USER, $privateUser, new \DateTime(), Post::TYPE_POST))
|
2019-04-03 15:38:53 +00:00
|
|
|
->setText('Post from private user. Should not be visible in the public feed.')
|
|
|
|
->setPrivate(false)
|
|
|
|
->setDeleted(false)
|
|
|
|
;
|
|
|
|
|
2019-04-03 15:55:29 +00:00
|
|
|
$wlUserPost = (new Post(self::POST_ID_WL_USER, $wlUser, new \DateTime(), Post::TYPE_POST))
|
2019-04-03 15:38:53 +00:00
|
|
|
->setText('Post from whitelist-only user. Should only be visible for whitelisted users.')
|
|
|
|
->setPrivate(false)
|
|
|
|
->setDeleted(false)
|
|
|
|
;
|
|
|
|
|
2019-04-03 15:55:29 +00:00
|
|
|
$privateWlUserPost = (new Post(self::POST_ID_PR_WL_USER, $prWlUser, new \DateTime(), Post::TYPE_POST))
|
2019-04-03 15:38:53 +00:00
|
|
|
->setText('Post from private AND whitelist-only user. Should not be visible in the public feed.')
|
|
|
|
->setPrivate(false)
|
|
|
|
->setDeleted(false)
|
|
|
|
;
|
|
|
|
|
2016-12-12 16:58:29 +00:00
|
|
|
$om->persist($longPost);
|
|
|
|
$om->persist($shortPost);
|
2019-04-03 15:38:53 +00:00
|
|
|
$om->persist($privateUserPost);
|
|
|
|
$om->persist($wlUserPost);
|
|
|
|
$om->persist($privateWlUserPost);
|
2016-03-29 06:53:06 +00:00
|
|
|
$om->flush();
|
|
|
|
|
2016-12-12 16:58:29 +00:00
|
|
|
$this->addReference('test_post_longpost', $longPost);
|
2016-03-29 06:53:06 +00:00
|
|
|
}
|
|
|
|
|
2017-01-12 23:00:21 +00:00
|
|
|
public function getOrder(): int
|
2016-03-29 06:53:06 +00:00
|
|
|
{
|
|
|
|
return 2;
|
|
|
|
}
|
2023-04-01 18:23:30 +00:00
|
|
|
}
|