middleware(['auth' => 'surveyPermissions'])->except( 'surveyVaccinationState', 'surveyVaccinationStateSave', 'survey1', 'survey1Save' ); parent::__construct(); } public function surveyVaccinationState(Request $request) { $formdata = new SurveyVaccinationState(); $view = view("inc.survey.vaccinationState"); $view->with('url', $this->route); $view->with('formdata', $formdata); $view->with('expired', false); return $view; } public function surveyVaccinationStateSave(Request $request) { $request->request->add(['state' => $request->state[0]]); $request->request->add(['age' => $request->age[0]]); $validationData = [ 'department' => 'required', 'state' => 'required|min:3', 'age' => 'required', ]; if(strtolower($request->state) == 'geimpft' or strtolower($request->state) == 'genesen' or strtolower($request->state) == 'geboostert') { $validationData['expiration_date'] = 'date_format:d.m.Y|after:today'; } $formdata = $request->validate( $validationData, [ 'department.required' => 'Pflichtfeld', 'age.required' => 'Pflichtfeld', 'state.required' => 'Pflichtfeld', 'state.min' => 'Mindestens :min Zeichen', 'expiration_date.date_format' => 'Das Datum muss im Format tt.mm.jjjj (tag.monat.jahr) eingegeben werden', 'expiration_date.after' => 'Das Datum muss in der Zukunft liegen', ]); $expiration_date = Carbon::createFromDate(1900, 1, 1); if(strtolower($request->state) == 'geimpft' or strtolower($request->state) == 'genesen' or strtolower($request->state) == 'geboostert') { $expiration_date = Carbon::createFromFormat('d.m.Y', $request->expiration_date); } $model = new SurveyVaccinationState(); $model->fill($request->all()); $model->expiration_date = $expiration_date; $model->department = $request->department[0]; $model->survey_id = 1; $model->save(); $view = view("inc.survey.vaccinationStateSuccess"); return $view; } public function survey1(Request $request) { $formdata = new Survey1(); $view = view("inc.survey.survey1"); $view->with('url', $this->route); $view->with('formdata', $formdata); $view->with('expired', false); return $view; } public function survey1Save(Request $request) { $request->request->add(['state' => $request->state[0]]); $request->request->add(['age' => $request->age[0]]); $request->request->add(['city' => $request->city[0]]); $formdata = $request->validate([ 'firstname' => 'required|min:3', 'lastname' => 'required|min:3', 'city' => 'required|min:3', 'email' => 'required|email', ], [ 'firstname.required' => 'Pflichtfeld', 'firstname.min' => 'Mindestens :min Zeichen', 'lastname.required' => 'Pflichtfeld', 'lastname.min' => 'Mindestens :min Zeichen', 'city.required' => 'Pflichtfeld', 'city.min' => 'Mindestens :min Zeichen', 'email.required' => 'Pflichtfeld', 'email.email' => 'Keine gültige Emailadresse', ]); $model = new Survey1(); $model->fill($request->all()); $model->city = $request->city; $model->support = $request->has('support') ? $request->input('support') : false; $model->save(); $view = view("inc.survey.survey1Success"); return $view; } }