Initial commit: CloudOps infrastructure platform
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
<?php
|
||||
|
||||
namespace Mautic\UserBundle\DataFixtures\ORM;
|
||||
|
||||
use Doctrine\Bundle\FixturesBundle\FixtureGroupInterface;
|
||||
use Doctrine\Common\DataFixtures\AbstractFixture;
|
||||
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
|
||||
use Doctrine\Persistence\ObjectManager;
|
||||
use Mautic\UserBundle\Entity\Role;
|
||||
use Mautic\UserBundle\Model\RoleModel;
|
||||
|
||||
class LoadRoleData extends AbstractFixture implements OrderedFixtureInterface, FixtureGroupInterface
|
||||
{
|
||||
public static function getGroups(): array
|
||||
{
|
||||
return ['group_mautic_install_data'];
|
||||
}
|
||||
|
||||
public function __construct(
|
||||
private RoleModel $roleModel,
|
||||
) {
|
||||
}
|
||||
|
||||
public function load(ObjectManager $manager): void
|
||||
{
|
||||
if (!$this->hasReference('admin-role')) {
|
||||
$role = new Role();
|
||||
$role->setName('Administrators');
|
||||
$role->setDescription('Has access to everything.');
|
||||
$role->setIsAdmin(1);
|
||||
$manager->persist($role);
|
||||
$manager->flush();
|
||||
|
||||
$this->addReference('admin-role', $role);
|
||||
}
|
||||
|
||||
$role = new Role();
|
||||
$role->setName('Sales Team');
|
||||
$role->setDescription('Has access to sales');
|
||||
$role->setIsAdmin(0);
|
||||
|
||||
$permissions = [
|
||||
'user:profile' => ['editname'],
|
||||
'lead:leads' => ['full'],
|
||||
];
|
||||
$this->roleModel->setRolePermissions($role, $permissions);
|
||||
|
||||
$manager->persist($role);
|
||||
$manager->flush();
|
||||
|
||||
$this->addReference('sales-role', $role);
|
||||
}
|
||||
|
||||
public function getOrder()
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
<?php
|
||||
|
||||
namespace Mautic\UserBundle\DataFixtures\ORM;
|
||||
|
||||
use Doctrine\Bundle\FixturesBundle\FixtureGroupInterface;
|
||||
use Doctrine\Common\DataFixtures\AbstractFixture;
|
||||
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
|
||||
use Doctrine\Persistence\ObjectManager;
|
||||
use Mautic\UserBundle\Entity\User;
|
||||
use Symfony\Component\PasswordHasher\Hasher\UserPasswordHasher;
|
||||
|
||||
class LoadUserData extends AbstractFixture implements OrderedFixtureInterface, FixtureGroupInterface
|
||||
{
|
||||
public static function getGroups(): array
|
||||
{
|
||||
return ['group_mautic_install_data'];
|
||||
}
|
||||
|
||||
public function __construct(
|
||||
private UserPasswordHasher $hasher,
|
||||
) {
|
||||
}
|
||||
|
||||
public function load(ObjectManager $manager): void
|
||||
{
|
||||
$user = new User();
|
||||
$user->setFirstName('Admin');
|
||||
$user->setLastName('User');
|
||||
$user->setUsername('admin');
|
||||
$user->setEmail('admin@yoursite.com');
|
||||
$user->setPassword($this->hasher->hashPassword($user, 'Maut1cR0cks!'));
|
||||
$user->setRole($this->getReference('admin-role'));
|
||||
$manager->persist($user);
|
||||
$manager->flush();
|
||||
|
||||
$this->addReference('admin-user', $user);
|
||||
|
||||
$user = new User();
|
||||
$user->setFirstName('Sales');
|
||||
$user->setLastName('User');
|
||||
$user->setUsername('sales');
|
||||
$user->setEmail('sales@yoursite.com');
|
||||
$user->setPassword($this->hasher->hashPassword($user, 'Maut1cR0cks!'));
|
||||
$user->setRole($this->getReference('sales-role'));
|
||||
$manager->persist($user);
|
||||
$manager->flush();
|
||||
|
||||
$this->addReference('sales-user', $user);
|
||||
}
|
||||
|
||||
public function getOrder()
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user