@@ -101,9 +101,7 @@ protected function loadCalendars()
101101 $ day ->setTime (18 , 0 , 0 );
102102 $ event ->setEnd (clone $ day );
103103 $ event ->setAllDay (true );
104-
105104 $ events ['workday ' ][] = $ event ;
106-
107105 //call
108106 $ event = new CalendarEvent ();
109107 $ event ->setTitle ('Client Call ' );
@@ -112,9 +110,7 @@ protected function loadCalendars()
112110 $ day ->setTime (12 , 0 , 0 );
113111 $ event ->setEnd (clone $ day );
114112 $ event ->setAllDay (false );
115-
116113 $ events ['call ' ][] = $ event ;
117-
118114 //meeting
119115 $ event = new CalendarEvent ();
120116 $ event ->setTitle ('Meeting ' );
@@ -123,9 +119,7 @@ protected function loadCalendars()
123119 $ day ->setTime (18 , 0 , 0 );
124120 $ event ->setEnd (clone $ day );
125121 $ event ->setAllDay (false );
126-
127122 $ events ['meeting ' ][] = $ event ;
128-
129123 //lunch
130124 $ event = new CalendarEvent ();
131125 $ event ->setTitle ('Lunch ' );
@@ -134,9 +128,7 @@ protected function loadCalendars()
134128 $ day ->setTime (12 , 30 , 0 );
135129 $ event ->setEnd (clone $ day );
136130 $ event ->setAllDay (false );
137-
138131 $ events ['lunch ' ][] = $ event ;
139-
140132 //business trip
141133 $ event = new CalendarEvent ();
142134 $ event ->setTitle ('Business trip ' );
@@ -146,7 +138,6 @@ protected function loadCalendars()
146138 $ day ->add (\DateInterval::createFromDateString ('+3 days ' ));
147139 $ event ->setEnd (clone $ day );
148140 $ event ->setAllDay (true );
149-
150141 $ events ['b_trip ' ][] = $ event ;
151142 } else {
152143 $ event = new CalendarEvent ();
@@ -156,12 +147,11 @@ protected function loadCalendars()
156147 $ day ->setTime (18 , 0 , 0 );
157148 $ event ->setEnd (clone $ day );
158149 $ event ->setAllDay (true );
159-
160150 $ events ['weekend ' ][] = $ event ;
161151 }
162152 }
163153
164- foreach ($ this ->users as $ user ) {
154+ foreach ($ this ->users as $ index => $ user ) {
165155 //get default calendar, each user has default calendar after creation
166156 $ calendar = $ this ->calendar ->findDefaultCalendar ($ user ->getId (), $ this ->organization ->getId ());
167157 $ this ->setSecurityContext ($ calendar ->getOwner ());
@@ -176,9 +166,18 @@ protected function loadCalendars()
176166 }
177167
178168 $ this ->em ->persist ($ calendar );
169+ if ($ index > 0 && $ index % 5 === 0 ) {
170+ $ this ->em ->flush ();
171+ $ this ->em ->clear ('Oro\Bundle\ActivityListBundle\Entity\ActivityOwner ' );
172+ $ this ->em ->clear ('Oro\Bundle\ActivityListBundle\Entity\ActivityList ' );
173+ $ this ->em ->clear ('Oro\Bundle\CalendarBundle\Entity\CalendarEvent ' );
174+ $ this ->em ->clear ('Oro\Bundle\CalendarBundle\Entity\Calendar ' );
175+ }
179176 }
180177
181178 $ this ->em ->flush ();
179+ $ this ->em ->clear ('Oro\Bundle\ActivityListBundle\Entity\ActivityOwner ' );
180+ $ this ->em ->clear ('Oro\Bundle\ActivityListBundle\Entity\ActivityList ' );
182181 $ this ->em ->clear ('Oro\Bundle\CalendarBundle\Entity\CalendarEvent ' );
183182 $ this ->em ->clear ('Oro\Bundle\CalendarBundle\Entity\Calendar ' );
184183
@@ -263,12 +262,7 @@ protected function getRandomUsers($limit = 5)
263262 ->getScalarResult ();
264263
265264 if (count ($ userIds ) > $ limit ) {
266- $ rawList = [];
267- foreach ($ userIds as $ key => $ value ) {
268- // due array_rand() will pick only keywords
269- $ rawList [$ value ['id ' ]] = null ;
270- }
271-
265+ $ rawList = array_column ($ userIds , 'id ' , 'id ' );
272266 $ keyList = array_rand ($ rawList , $ limit );
273267
274268 $ criteria = new Criteria ();
@@ -332,17 +326,20 @@ protected function setSecurityContext(User $user)
332326 */
333327 protected function getRecurringEvents ()
334328 {
329+ $ baseEvent = new CalendarEvent ();
330+ $ baseRecurrence = new Recurrence ();
331+
335332 $ recurringEvents = [];
336333
337334 $ day = new \DateTime ('+2 day ' , $ this ->getTimeZone ());
338- $ event = new CalendarEvent () ;
335+ $ event = clone $ baseEvent ;
339336 $ event ->setTitle ('Gym Visiting ' );
340337 $ day ->setTime (19 , 0 , 0 );
341338 $ event ->setEnd (clone $ day );
342339 $ day ->setTime (18 , 0 , 0 );
343340 $ event ->setStart (clone $ day );
344341 $ event ->setAllDay (true );
345- $ recurrence = new Recurrence () ;
342+ $ recurrence = clone $ baseRecurrence ;
346343 $ recurrence ->setRecurrenceType (Model \Recurrence::TYPE_DAILY );
347344 $ recurrence ->setInterval (3 )
348345 ->setTimeZone ('America/Los_Angeles ' )
@@ -352,14 +349,14 @@ protected function getRecurringEvents()
352349 $ recurringEvents [] = $ event ;
353350
354351 $ day = new \DateTime ('+1 day ' , $ this ->getTimeZone ());
355- $ event = new CalendarEvent () ;
352+ $ event = clone $ baseEvent ;
356353 $ event ->setTitle ('Standup meeting ' );
357354 $ day ->setTime (10 , 15 , 0 );
358355 $ event ->setEnd (clone $ day );
359356 $ day ->setTime (10 , 0 , 0 );
360357 $ event ->setStart (clone $ day );
361358 $ event ->setAllDay (true );
362- $ recurrence = new Recurrence () ;
359+ $ recurrence = clone $ baseRecurrence ;
363360 $ recurrence ->setRecurrenceType (Model \Recurrence::TYPE_WEEKLY );
364361 $ recurrence ->setInterval (1 )
365362 ->setTimeZone ('America/Los_Angeles ' )
@@ -375,14 +372,14 @@ protected function getRecurringEvents()
375372 $ recurringEvents [] = $ event ;
376373
377374 $ day = new \DateTime ('-3 day ' , $ this ->getTimeZone ());
378- $ event = new CalendarEvent () ;
375+ $ event = clone $ baseEvent ;
379376 $ event ->setTitle ('Monthly Team Meeting ' );
380377 $ day ->setTime (18 , 0 , 0 );
381378 $ event ->setEnd (clone $ day );
382379 $ day ->setTime (16 , 0 , 0 );
383380 $ event ->setStart (clone $ day );
384381 $ event ->setAllDay (false );
385- $ recurrence = new Recurrence () ;
382+ $ recurrence = clone $ baseRecurrence ;
386383 $ recurrence ->setRecurrenceType (Model \Recurrence::TYPE_MONTHLY );
387384 $ recurrence ->setInterval (2 )
388385 ->setTimeZone ('America/Los_Angeles ' )
@@ -393,14 +390,14 @@ protected function getRecurringEvents()
393390 $ recurringEvents [] = $ event ;
394391
395392 $ day = new \DateTime ('+5 day ' , $ this ->getTimeZone ());
396- $ event = new CalendarEvent () ;
393+ $ event = clone $ baseEvent ;
397394 $ event ->setTitle ('Update News ' );
398395 $ day ->setTime (14 , 0 , 0 );
399396 $ event ->setEnd (clone $ day );
400397 $ day ->setTime (10 , 0 , 0 );
401398 $ event ->setStart (clone $ day );
402399 $ event ->setAllDay (true );
403- $ recurrence = new Recurrence () ;
400+ $ recurrence = clone $ baseRecurrence ;
404401 $ recurrence ->setRecurrenceType (Model \Recurrence::TYPE_MONTH_N_TH );
405402 $ recurrence ->setInterval (2 )
406403 ->setTimeZone ('America/Los_Angeles ' )
@@ -412,14 +409,14 @@ protected function getRecurringEvents()
412409 $ recurringEvents [] = $ event ;
413410
414411 $ day = new \DateTime ('now ' , $ this ->getTimeZone ());
415- $ event = new CalendarEvent () ;
412+ $ event = clone $ baseEvent ;
416413 $ event ->setTitle ('Yearly Conference ' );
417414 $ day ->setTime (19 , 0 , 0 );
418415 $ event ->setEnd (clone $ day );
419416 $ day ->setTime (10 , 0 , 0 );
420417 $ event ->setStart (clone $ day );
421418 $ event ->setAllDay (true );
422- $ recurrence = new Recurrence () ;
419+ $ recurrence = clone $ baseRecurrence ;
423420 $ recurrence ->setRecurrenceType (Model \Recurrence::TYPE_YEARLY );
424421 $ recurrence ->setInterval (12 )
425422 ->setTimeZone ('America/Los_Angeles ' )
@@ -430,14 +427,14 @@ protected function getRecurringEvents()
430427 $ recurringEvents [] = $ event ;
431428
432429 $ day = new \DateTime ('-2 day ' , $ this ->getTimeZone ());
433- $ event = new CalendarEvent () ;
430+ $ event = clone $ baseEvent ;
434431 $ event ->setTitle ('New Year Party ' );
435432 $ day ->setTime (23 , 0 , 0 );
436433 $ event ->setEnd (clone $ day );
437434 $ day ->setTime (18 , 0 , 0 );
438435 $ event ->setStart (clone $ day );
439436 $ event ->setAllDay (true );
440- $ recurrence = new Recurrence () ;
437+ $ recurrence = clone $ baseRecurrence ;
441438 $ recurrence ->setRecurrenceType (Model \Recurrence::TYPE_YEAR_N_TH );
442439 $ recurrence ->setInterval (12 )
443440 ->setTimeZone ('America/Los_Angeles ' )
0 commit comments