public function handleActivityPlan(Request $request) { $occurrences = $request->input('occurrences'); $eventPatterns = $request->input('patterns'); // occurrencejen käsittely foreach ($occurrences as $occurrence) { $eventOccurrence = EventOccurrence::findOrFail($occurrence['id']); foreach ($occurrence['activities'] as $activityId) { $activity = Activity::findOrFail($activityId); $eventOccurrence->activities()->attach($activity); } } // eventPatternien käsittely foreach ($eventPatterns as $eventPattern) { $eventPatternReal = EventPattern::findOrFail($eventPattern['id']); $event = new Event(); $event->time = Carbon::createFromFormat('d.m.Y H:i', $eventPattern['date']); $event->endDate = Carbon::createFromFormat('d.m.Y', $eventPattern['datePart']); $event->description = " "; $event->place = " "; $event->name = $eventPatternReal->name; $event->group_id = $request->input('group'); $event->save(); $eventOccurrence = new EventOccurrence(); $eventOccurrence->date = Carbon::createFromFormat('d.m.Y', $eventPattern['datePart']); $eventOccurrence->event_id = $event->id; $eventOccurrence->save(); foreach ($eventPattern['activities'] as $activityId) { $activity = Activity::findOrFail($activityId); $eventOccurrence->activities()->attach($activity); } } return 2; }
public function store(Request $request) { $messages = ['name.required' => 'Tapahtumapohjalla tulee olla nimi', 'date.required' => 'Tapahtumapohjalla tulee olla aika', 'start.required' => 'Tapahtumapohjalla tulee olla aika', 'end.required' => 'Tapahtumapohjalla tulee olla aika', 'selectedAgeGroups.required' => 'Tapahtumapohjalla tulee olla ikäryhmä']; $validator = Validator::make($request->all(), ['name' => 'required', 'date' => 'required_if:start,null', 'start' => 'required_if:date,null', 'end' => 'required_if:date,null', 'selectedAgeGroups' => 'required'], $messages); if ($validator->fails()) { return redirect('event_patterns/new')->withErrors($validator)->withInput(); } $selected_activities = $request->input('selected_activity'); $event_pattern = new EventPattern(); $event_pattern->name = $request->input('name'); $event_pattern->ageGroups = $request->input('selectedAgeGroups'); if ($request->input('date') != NULL) { $event_pattern->date = Carbon::createFromFormat('d.m.Y', $request->input('date')); } else { $event_pattern->date = Carbon::createFromFormat('d.m.Y', $request->input('start')); $event_pattern->endDate = Carbon::createFromFormat('d.m.Y', $request->input('end')); } $event_pattern->save(); for ($i = 0; $i < count($selected_activities); $i++) { $activity = Activity::findOrFail($selected_activities[$i]); $event_pattern->activities()->attach($activity); } return redirect('/'); }