Feuerwehr-eppingen/app/Http/Controllers/ContactController.php
ppa. Marco Glietsch 3d5a07aafd Korrekturen
- In der NAvigationsleiste werden unter "Wer sind wir" wieder die Fahrzeuge angezeigt
- Im Anmeldefomular für die Kinderfeuerwehr wurde das Geburtsdatum falsch in der Datenbank gespeichert
2022-08-22 10:14:21 +02:00

248 lines
7.8 KiB
PHP

<?php
/**
* Created by PhpStorm.
* User: Marco Glietsch
* Date: 22.11.2018
* Time: 09:28
*/
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;
use App\Models\SubscribeChild;
use App\Models\SubscribeVaccinate;
use App\Models\SubscribeYouthFireFighter;
use App\Helpers\AccessHelper as Access;
use \Carbon\Carbon;
use Response;
use Illuminate\Support\Facades\Input;
use App\Helpers\StringHelper;
class ContactController extends ExtendedController
{
public function __construct()
{
$this->middleware(['auth' => 'contactPermissions'])->except('subscribe', 'subscribeSave', 'count', 'subscribeVaccinate', 'subscribeVaccinateSave', 'subscribeYouthFireFighter', 'subscribeYouthFireFighterSave');
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;
}
}