LoadUserData::load()   B
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 121
Code Lines 111

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 111
dl 0
loc 121
rs 8
c 0
b 0
f 0
cc 2
nc 2
nop 1

How to fix   Long Method   

Long Method

Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.

For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.

Commonly applied refactorings include:

1
<?php
2
3
namespace Application\Bundle\UserBundle\DataFixtures\ORM;
4
5
use Doctrine\Common\DataFixtures\AbstractFixture;
6
use Doctrine\Common\Persistence\ObjectManager;
7
use Application\Bundle\UserBundle\Entity\User;
8
9
/**
10
 * LoadUserData class.
11
 */
12
class LoadUserData extends AbstractFixture
13
{
14
    /**
15
     * Create and load user fixtures to database.
16
     *
17
     * @param ObjectManager $manager Entity manager object
18
     */
19
    public function load(ObjectManager $manager)
20
    {
21
        $userAdmin = (new User())
22
            ->setUsername('Администратор')
23
            ->setName('Super')
24
            ->setSurname('Super')
25
            ->setEmail('[email protected]')
26
            ->setPlainPassword('qwerty')
27
            ->setRoles(array('ROLE_SUPER_ADMIN'))
28
            ->setEnabled(true)
29
            ->setExpired(false)
30
            ->setLocked(false);
31
        $manager->persist($userAdmin);
32
        $this->addReference('user-admin', $userAdmin);
33
34
        $userVolunteer = (new User())
35
            ->setUsername('Волонтер')
36
            ->setName('Jack')
37
            ->setSurname('Volunteer')
38
            ->setEmail('[email protected]')
39
            ->setPlainPassword('qwerty')
40
            ->setRoles(array('ROLE_VOLUNTEER'))
41
            ->setEnabled(true)
42
            ->setExpired(false)
43
            ->setLocked(false);
44
        $manager->persist($userVolunteer);
45
        $this->addReference('user-volunteer', $userVolunteer);
46
47
        $userDefault = (new User())
48
            ->setUsername('Пользователь')
49
            ->setName('Michael')
50
            ->setSurname('Jordan')
51
            ->setEmail('[email protected]')
52
            ->setPlainPassword('qwerty')
53
            ->addRole('ROLE_USER')
54
            ->setCountry('USA')
55
            ->setCity('Boston')
56
            ->setCompany('NBA')
57
            ->setPost('Point Guard')
58
            ->setEnabled(true)
59
            ->setExpired(false)
60
            ->setLocked(false);
61
        $manager->persist($userDefault);
62
        $this->addReference('user-default', $userDefault);
63
64
        $userDefault2 = (new User())
65
            ->setUsername('Pirate')
66
            ->setName('Jack')
67
            ->setSurname('Sparrow')
68
            ->setEmail('[email protected]')
69
            ->setPlainPassword('qwerty')
70
            ->addRole('ROLE_USER')
71
            ->setCountry('Haiti')
72
            ->setCity('Tortuga')
73
            ->setCompany('Pirates of the Caribbean')
74
            ->setPost('Captain')
75
            ->setEnabled(true)
76
            ->setExpired(false)
77
            ->setLocked(false);
78
        $manager->persist($userDefault2);
79
        $this->addReference('user-default2', $userDefault2);
80
81
        $userDefault3 = (new User())
82
            ->setUsername('Spiderman')
83
            ->setName('Peter')
84
            ->setSurname('Parker')
85
            ->setEmail('[email protected]')
86
            ->setPhone('+380931234567')
87
            ->setPlainPassword('qwerty')
88
            ->addRole('ROLE_USER')
89
            ->setCountry('USA')
90
            ->setCity('New-York')
91
            ->setCompany('The New-York Times')
92
            ->setPost('Journalist')
93
            ->setEnabled(true)
94
            ->setExpired(false)
95
            ->setLocked(false);
96
        $manager->persist($userDefault3);
97
        $this->addReference('user-default3', $userDefault3);
98
99
        $userDefault4 = (new User())
100
            ->setUsername('Rasmus')
101
            ->setName('Rasmus')
102
            ->setSurname('Lerdorf')
103
            ->setEmail('[email protected]')
104
            ->setPhone('+380937654321')
105
            ->setPlainPassword('qwerty')
106
            ->addRole('ROLE_USER')
107
            ->setCountry('Greenland')
108
            ->setCity('Tortuga')
109
            ->setCompany('PHP')
110
            ->setPost('Core developer')
111
            ->setEnabled(true)
112
            ->setSubscribe(false)
113
            ->setExpired(false)
114
            ->setLocked(false);
115
        $manager->persist($userDefault4);
116
        $this->addReference('user-default4', $userDefault4);
117
118
        $basePhone = 380960000000;
119
        for ($i = 1; $i <= 100; ++$i) {
120
            $userDefault = (new User())
121
                ->setUsername('Пользователь '.$i)
122
                ->setName('User '.$i)
123
                ->setSurname('Default '.$i)
124
                ->setEmail('user'.$i.'@fwdays.com')
125
                ->setPhone(\sprintf('+%d', $basePhone + $i))
126
                ->setPlainPassword('qwerty')
127
                ->addRole('ROLE_USER')
128
                ->setCountry('Ukraine')
129
                ->setCity('Khmelnytskyi')
130
                ->setCompany('Anonumous')
131
                ->setPost('Tester')
132
                ->setEnabled(true)
133
                ->setExpired(false)
134
                ->setLocked(false);
135
            $manager->persist($userDefault);
136
            $this->addReference('user-default-'.$i, $userDefault);
137
        }
138
139
        $manager->flush();
140
    }
141
}
142