middleware(['auth' => 'contactPermissions'])->except('subscribe', 'subscribeSave', 'count', 'subscribeVaccinate', 'subscribeVaccinateSave'); parent::__construct(); } public function subscribe(Request $request) { $formdata = new SubscribeChild(); $view = view("inc.contact.subscribe"); $view->with('url', $this->route); $view->with('formdata', $formdata); $view->with('expired', true); return $view; } public function subscribeSave(Request $request) { $request->request->add(['city' => $request->city[0]]); $formdata = $request->validate([ 'firstnameParent' => 'required|min:3', 'lastnameParent' => 'required|min:3', 'firstnameChild' => 'required|min:3', 'street' => 'required|min:3', 'streetnumber' => 'required', 'city' => 'required', 'phone' => 'required|min:4', 'age' => 'required|integer', ], [ 'firstnameParent.required' => 'Pflichtfeld', 'firstnameParent.min' => 'Mindestens :min Zeichen', 'lastnameParent.required' => 'Pflichtfeld', 'lastnameParent.min' => 'Mindestens :min Zeichen', 'firstnameChild.required' => 'Pflichtfeld', 'firstnameChild.min' => 'Mindestens :min Zeichen', 'street.required' => 'Pflichtfeld', 'street.min' => 'Mindestens :min Zeichen', 'streetnumber.required' => 'Pflichtfeld', 'streetnumber.min' => 'Mindestens :min Zeichen', 'city.required' => 'Pflichtfeld', 'phone.required' => 'Pflichtfeld', 'phone.min' => 'Mindestens :min Zeichen', 'age.required' => 'Pflichtfeld', 'age.integer' => 'Muss eine Zahl sein', ]); $checkmodel = SubscribeChild::where('lastnameParent', $request->lastnameParent) ->where('firstnameParent', $request->firstnameParent) ->where('firstnameChild', $request->firstnameChild) ->where('city', $request->city) ->get(); $view = null; if($checkmodel->count()) { $view = view("inc.contact.subscribeDouble"); $view->with('firstnameChild', $request->firstnameChild); $view->with('lastnameChild', $request->lastnameParent); } else { $model = new SubscribeChild(); $model->fill($request->all()); $model->age = $request->age; # $model->city = $request->city[0]; $model->save(); $view = view("inc.contact.subscribeSuccess"); } return $view; } public function subscribeVaccinate(Request $request) { $formdata = new SubscribeVaccinate(); $view = view("inc.contact.subscribeVaccinate"); $view->with('url', $this->route); $view->with('formdata', $formdata); $view->with('expired', true); return $view; } public function subscribeVaccinateSave(Request $request) { $request->request->add(['city' => $request->city[0]]); $formdata = $request->validate([ 'firstname' => 'required|min:3', 'lastname' => 'required|min:3', 'birthday' => 'required|date_format:d.m.Y', 'street' => 'required|min:3', 'streetnumber' => 'required', 'city' => 'required', 'department' => 'required', ], [ 'firstname.required' => 'Pflichtfeld', 'firstname.min' => 'Mindestens :min Zeichen', 'lastname.required' => 'Pflichtfeld', 'lastname.min' => 'Mindestens :min Zeichen', 'birthday.required' => 'Pflichtfeld', 'birthday.date_format' => 'Das Datum muss im Format tt.mm.jjjj (tag.monat.jahr) eingegeben werden', 'street.required' => 'Pflichtfeld', 'street.min' => 'Mindestens :min Zeichen', 'streetnumber.required' => 'Pflichtfeld', 'streetnumber.min' => 'Mindestens :min Zeichen', 'city.required' => 'Pflichtfeld', 'department.required' => 'Pflichtfeld', ]); $checkmodel = SubscribeVaccinate::where('lastname', $request->lastname) ->where('firstname', $request->firstname) ->get(); $view = null; if($checkmodel->count()) { $view = view("inc.contact.subscribeVaccinateDouble"); $view->with('firstname', $request->firstname); $view->with('lastname', $request->lastname); } else { $model = new SubscribeVaccinate(); $model->fill($request->all()); $model->birthday = Carbon::createFromFormat('d.m.Y', $request->birthday); $model->department = $request->department[0]; $model->save(); $view = view("inc.contact.subscribeVaccinateSuccess"); } return $view; } }