middleware(['auth' => 'contactPermissions'])->except( 'subscribe', 'subscribeSave', 'count', 'subscribeVaccinate', 'subscribeVaccinateSave', 'subscribeYouthFireFighter', 'subscribeYouthFireFighterSave', 'subscribeHelperParty', 'subscribeHelperPartySave'); parent::__construct(); } /********************************/ /* Anmeldung für Nikolausaktion */ /********************************/ 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 = SubscribeYou::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; } /*********************************/ /* Anmeldung zur Kinderfeuerwehr */ /*********************************/ public function subscribeYouthFireFighter(Request $request) { $formdata = new SubscribeYouthFireFighter(); $view = view("inc.contact.subscribeYouthFireFighter"); $view->with('url', $this->route); $view->with('formdata', $formdata); $view->with('expired', false); return $view; } public function subscribeYouthFireFighterSave(Request $request) { $request->request->add(['city' => $request->city[0]]); $formdata = $request->validate([ 'firstnameParent' => 'required|min:3', 'lastnameParent' => 'required|min:3', 'firstnameChild' => 'required|min:3', 'birthday' => 'required|date_format:d.m.Y', 'street' => 'required|min:3', 'streetnumber' => 'required', 'city' => 'required', 'phone' => 'required|min:4', 'email' => 'required|email' ], [ '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', 'email.email' => 'Es muss eine gültige Emailadresse angegeben werden', 'birthday.required' => 'Pflichtfeld', 'birthday.date_format' => 'Das Datum muss im Format tt.mm.jjjj (tag.monat.jahr) eingegeben werden', ]); $checkmodel = SubscribeYouthFireFighter::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 SubscribeYouthFireFighter(); $model->fill($request->all()); $model->birthday = Carbon::createFromFormat('d.m.Y', $request->birthday); # $model->city = $request->city[0]; $model->save(); $view = view("inc.contact.subscribeYouthFireFighterSuccess"); } return $view; } /********************************/ /* Anmeldung zur Coronaimnpfung */ /********************************/ 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', false); 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; } /****************************/ /* Anmeldung zum Helferfest */ /****************************/ public function subscribeHelperParty(Request $request) { $formdata = new SubscribeYouthFireFighter(); $view = view("inc.contact.subscribeHelperParty"); $view->with('url', $this->route); $view->with('formdata', $formdata); $view->with('expired', false); return $view; } public function subscribeHelperPartySave(Request $request) { $formdata = $request->validate([ 'firstname' => 'required|min:3', 'lastname' => 'required|min:3', 'countMatures' => 'integer', 'countChildren' => 'integer' ], [ 'firstname.required' => 'Pflichtfeld', 'firstname.min' => 'Mindestens :min Zeichen', 'lastname.required' => 'Pflichtfeld', 'lastname.min' => 'Mindestens :min Zeichen', 'countMatures.integer' => 'Es sind nur Zahlen erlaubt', 'countChildren.integer' => 'Es sind nur Zahlen erlaubt', ]); $model = SubscribeHelperParty::where('lastname', $request->lastname) ->where('firstname', $request->firstname) ->get(); $view = null; $view = view("inc.contact.subscribeHelperPartySuccess"); if($model->count()) { $model = $model->first(); $model->fill($request->all()); $model->save(); $view->with('exist', true); } else { $model = new SubscribeHelperParty(); $model->fill($request->all()); $model->save(); } $view->with('firstname', $request->firstname); $view->with('lastname', $request->lastname); $view->with('countMatures', $request->countMatures); $view->with('countChildren', $request->countChildren); return $view; } }