/** * @param Request $Request * @param $meetId * @return mixed */ public function postAthleteEventEntry(Request $Request, $meetId) { $message = ''; if ($Request->get('formType')) { $TrackEvent = $this->createTrackEventFromRequest($Request); switch ($Request->get('formType')) { case 'event': $StudentEvent = $this->createStudentEventFromRequest($Request); if ($this->MeetService->addAthleteToEvent($TrackEvent, $StudentEvent)) { $message = 'SUCCESS!'; } break; case 'relay': $RelayTeam = $this->createRelayTeamFromRequest($Request); $TeamMembers = $this->createRelayTeamMembersFromRequest($Request); if ($this->MeetService->addRelayTeamEvent($TrackEvent, $RelayTeam, $TeamMembers)) { $message = 'SUCCESS!'; } break; case 'result': $TrackEventResult = $this->createEventResultFromRequest($Request); $this->MeetService->addEventResult($TrackEventResult); $TrackStudentEvent = $this->createStudentEventFromRequest($Request); $this->MeetService->updateStudentEvent($TrackStudentEvent); break; case 'relayResult': $TrackRelayTeam = $this->createRelayTeamFromRequest($Request); $this->MeetService->updateRelayTeamResult($TrackRelayTeam); break; } } $data = $this->getPageData($meetId); $data['message'] = $message; return $this->App['twig']->render('Track/Admin/athleteEventEntry.twig', $data); }