/** * Run the database seeds. * * @return void */ public function run() { $webinars = []; $users = [1, 2, 3]; foreach ($users as $uid) { for ($i = 0; $i < 5; $i++) { $faker = Faker\Factory::create(); $webinar = ['user_id' => $uid, 'title' => $faker->realText($faker->numberBetween(60, 80)), 'hosts' => $faker->realText($faker->numberBetween(60, 80)), 'share' => $faker->realText($faker->numberBetween(30, 50)), 'description' => $faker->realText($faker->numberBetween(120, 180)), 'starts_on' => $faker->dateTime($min = 'now'), 'duration' => rand(1, 4) . 'h', 'timezone' => 'EDT']; $webinar = Webinar::create($webinar); $hashedId = hashWebinar($webinar->id); $webinar->uuid = $hashedId; $webinar->save(); $webinar->subscribers_lists()->attach(rand(1, 3)); $webinar_subscriber_list = SubscribersList::whereWebinarId($webinar->id)->first(); $webinar->signup_subscribers_lists()->attach($webinar_subscriber_list->id); } } }
public function postClone(WebinarStoreRequest $request, $user_id, $webinar_id) { $sourceWebinar = Webinar::where('uuid', '=', $webinar_id)->first(); $user = User::find($user_id); $input = $request->input(); $starts = trim(explode(',', $input['date_starts_on'])[1]) . ' ' . $input['time_starts_on']; $starts = Carbon::createFromFormat('d F Y h:i A', $starts)->toDateTimeString(); $input['starts_on'] = $starts; $cloneWebinar = Webinar::create($input); $cloneWebinar->uuid = hashWebinar($cloneWebinar->id); foreach ($input['subscribers_lists'] as $listId) { $cloneWebinar->subscribers_lists()->attach($listId); } if (isset($input['excluded_subscribers_lists'])) { foreach ($input['excluded_subscribers_lists'] as $listId) { $cloneWebinar->excluded_subscribers_lists()->attach($listId); } } if (isset($input['panelists'])) { foreach ($input['panelists'] as $panelist) { $cloneWebinar->panelists()->attach($panelist); } } if (isset($input['signup_subscribers'])) { foreach ($input['signup_subscribers'] as $listId) { $cloneWebinar->signup_subscribers_lists()->attach($listId); } } $cloneWebinar->save(); return redirect()->route('users.webinars.edit', [$user_id, $cloneWebinar->uuid]); }