Anmeldeformular für Bevölkerungsschutzübung 2025
This commit is contained in:
parent
a52238dd5d
commit
c29160a240
@ -17,6 +17,7 @@ use App\Models\SubscribeYouthFireFighter;
|
||||
use App\Models\SubscribeDekon;
|
||||
use App\Models\SubscribeHelperParty;
|
||||
use App\Models\SubscribeEm2024;
|
||||
use App\Models\SubscribePopulationExercise;
|
||||
use App\Helpers\AccessHelper as Access;
|
||||
use \Carbon\Carbon;
|
||||
use Response;
|
||||
@ -43,7 +44,9 @@ class ContactController extends ExtendedController
|
||||
'subscribeHelperPartySave',
|
||||
'subscribeEm2024',
|
||||
'subscribeEm2024Save',
|
||||
'subscribeEm2024Info'
|
||||
'subscribeEm2024Info',
|
||||
'subscribePopulationExercise',
|
||||
'subscribePopulationExerciseSave'
|
||||
);
|
||||
parent::__construct();
|
||||
}
|
||||
@ -422,7 +425,7 @@ class ContactController extends ExtendedController
|
||||
'firstname.required' => 'Pflichtfeld',
|
||||
'firstname.min' => 'Mindestens :min Zeichen',
|
||||
'lastname.required' => 'Pflichtfeld',
|
||||
'lasstname.min' => 'Mindestens :min Zeichen',
|
||||
'lastname.min' => 'Mindestens :min Zeichen',
|
||||
]);
|
||||
|
||||
|
||||
@ -457,4 +460,68 @@ class ContactController extends ExtendedController
|
||||
|
||||
return $view;
|
||||
}
|
||||
|
||||
/*****************************************/
|
||||
/* Anmeldung zur Bevölkerungsschutzübung */
|
||||
/*****************************************/
|
||||
public function subscribePopulationExercise(Request $request)
|
||||
{
|
||||
$formdata = new SubscribePopulationExercise();
|
||||
$view = view("inc.contact.subscribePopulationExercise");
|
||||
$view->with('url', $this->route);
|
||||
$view->with('formdata', $formdata);
|
||||
$view->with('expired', false);
|
||||
|
||||
return $view;
|
||||
}
|
||||
|
||||
public function subscribePopulationExerciseSave(Request $request)
|
||||
{
|
||||
$request->request->add(['city' => $request->city[0]]);
|
||||
$formdata = $request->validate([
|
||||
'firstname' => 'required|min:3',
|
||||
'lastname' => 'required|min:3',
|
||||
'street' => 'required|min:3',
|
||||
'streetnumber' => 'required',
|
||||
'city' => 'required',
|
||||
'phone' => 'required|min:4',
|
||||
'email' => 'required|email'
|
||||
],
|
||||
[
|
||||
'firstname.required' => 'Pflichtfeld',
|
||||
'firstname.min' => 'Mindestens :min Zeichen',
|
||||
'lastname.required' => 'Pflichtfeld',
|
||||
'lastname.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',
|
||||
]);
|
||||
|
||||
|
||||
$checkmodel = SubscribePopulationExercise::where('lastname', $request->lastname)
|
||||
->where('firstname', $request->firstname)
|
||||
->where('city', $request->city);
|
||||
|
||||
$view = null;
|
||||
|
||||
$model = new SubscribePopulationExercise();
|
||||
if($checkmodel->get()->count())
|
||||
{
|
||||
$model = $checkmodel->first();
|
||||
$model->driving = $request->has('driving') ? $request->input('driving') : false;
|
||||
}
|
||||
|
||||
$model->fill($request->all());
|
||||
# $model->city = $request->city[0];
|
||||
$model->save();
|
||||
|
||||
$view = view("inc.contact.subscribePopulationExerciseSuccess");
|
||||
|
||||
return $view;
|
||||
}
|
||||
}
|
||||
29
app/Models/SubscribePopulationExercise.php
Normal file
29
app/Models/SubscribePopulationExercise.php
Normal file
@ -0,0 +1,29 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use App\Models\Traits\FullTextSearch;
|
||||
use App\Models\Traits\Documents;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use OwenIt\Auditing\Contracts\Auditable;
|
||||
use Illuminate\Support\Arr;
|
||||
use Cviebrock\EloquentSluggable\Sluggable;
|
||||
use App\Helpers\TagHelper;
|
||||
use Carbon\Carbon;
|
||||
use App\Helpers\PostHelper;
|
||||
use App\Http\Controllers\ServiceController;
|
||||
|
||||
class SubscribePopulationExercise extends ExtendedModel
|
||||
{
|
||||
protected $table = 'subscribe_population_exercise';
|
||||
protected $fillable = [
|
||||
'lastname',
|
||||
'firstname',
|
||||
'street',
|
||||
'streetnumber',
|
||||
'city',
|
||||
'phone',
|
||||
'email',
|
||||
'driving'
|
||||
];
|
||||
}
|
||||
@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
|
||||
class CreateSubscribePopulationExerciseTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('subscribe_population_exercise', function (Blueprint $table) {
|
||||
$table->increments('id');
|
||||
$table->string('lastname', 50);
|
||||
$table->string('firstname', 50);
|
||||
$table->string('street', 50);
|
||||
$table->string('streetnumber', 5);
|
||||
$table->string('city', 20);
|
||||
$table->string('phone', 50);
|
||||
$table->string('email', 100);
|
||||
$table->boolean('driving');
|
||||
$table->timestamps();
|
||||
$table->softDeletes();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('subscribe_population_exercise');
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,183 @@
|
||||
@extends('layouts.app')
|
||||
|
||||
@section('social_media')
|
||||
<meta property="fb:app_id" content="{{ config('social-media-manager.facebook.app_id') }}"/>
|
||||
<meta property="og:type" content="website"/>
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<article class="post-item card pt-3 pb-3 mb-lg-5 shadow-sm">
|
||||
<div class="row">
|
||||
<h1 class="col-lg-12 card-title">
|
||||
Anmeldung zur Bevölkerungsschutzübung
|
||||
</h1>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<hr>
|
||||
</div>
|
||||
</div>
|
||||
<!-- -- >
|
||||
<div class="row">
|
||||
<div class="col-lg-6">
|
||||
Links
|
||||
</div>
|
||||
<div class="col-lg-6 text-right">
|
||||
Rechts
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<hr>
|
||||
</div>
|
||||
</div>
|
||||
<!-- -->
|
||||
@if($expired)
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
Es tut uns Leid, aber der Anmeldezeitraum ist abgelaufen.
|
||||
</div>
|
||||
</div>
|
||||
@else
|
||||
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<p>
|
||||
Sehr geehrte Damen und Herren,<br/>
|
||||
<br/>
|
||||
die Stadt Eppingen plant zusammen mit der Feuerwehr Eppingen am 10.05.2025 eine
|
||||
Bevölkerungsschutzübung, bei der wir die Unterstützung möglichst vieler Statisten
|
||||
benötigen.<br/>
|
||||
In diesem Zusammenhang möchte ich Sie um ihre Hilfe bitten.
|
||||
Wir möchten die Einrichtung von Notrufposten und Notfalltreffpunkten welche bei
|
||||
Großschadenslagen wie z.B. bei einem flächendeckenden Stromausfall so realitätsnah wie
|
||||
möglich proben.<br/>
|
||||
Hierzu werden in allen Stadtteilen der Gesamtstadt Eppingen die Notrufposten und
|
||||
Notfalltreffpunkte durch ehrenamtliche in der Zeit zwischen 9 Uhr und 12 Uhr in Betrieb
|
||||
genommen.<br/>
|
||||
Die Statisten bekommen nach der Anmeldung über die Homepage der Feuerwehr Eppingen
|
||||
eine vorgefertigte Rolle zugeteilt. Den weiteren Anweisungen ist dann Folge zu leisten.
|
||||
Eine derartige Übung gab es bislang noch nicht. Das Gelingen wird maßgeblich davon
|
||||
abhängen, wie viele Statisten sich finden und mitmachen werden. Über ihren Beitrag zum
|
||||
positiven Verlauf der Übung würde ich mich sehr freuen und wäre Ihnen persönlich sehr
|
||||
dankbar.<br/>
|
||||
Sicherlich haben Sie noch einige Fragen. Hierzu verweise ich Sie an die FAQs am Ende dieser Seite.<br/>
|
||||
<br/>
|
||||
Mit freundlichen Grüßen<br/>
|
||||
<br/>
|
||||
Thomas Blösch
|
||||
Feuerwehr Eppingen
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-12 card-content">
|
||||
<form action="{{ config('app.url') . '/anmeldung-bevoelkerungsschutzuebung/abschliessen' }}" method="POST">
|
||||
{{ csrf_field() }}
|
||||
@include('inc.forms.inputText', [
|
||||
'name' => 'lastname',
|
||||
'label' => 'Nachname *',
|
||||
'placeholder' => 'Nachname',
|
||||
'value' => $formdata->firstnameParent
|
||||
])
|
||||
@include('inc.forms.inputText', [
|
||||
'name' => 'firstname',
|
||||
'label' => 'Vorname *',
|
||||
'placeholder' => 'Vorname',
|
||||
'value' => $formdata->lastnameParent
|
||||
])
|
||||
@include('inc.forms.inputText', [
|
||||
'name' => 'street',
|
||||
'label' => 'Straße *',
|
||||
'placeholder' => 'Straße',
|
||||
'value' => $formdata->street
|
||||
])
|
||||
@include('inc.forms.inputText', [
|
||||
'name' => 'streetnumber',
|
||||
'label' => 'Hausnummer *',
|
||||
'placeholder' => 'Hausnummer',
|
||||
'value' => $formdata->streetnumber
|
||||
])
|
||||
{{ $formdata->streetnumber }}
|
||||
@include('inc.forms.inputSelect', [
|
||||
'name' => 'city',
|
||||
'label' => 'Wohnort *',
|
||||
'placeholder' => 'Wohnort',
|
||||
'selected' => old('city.0'),
|
||||
'modelValue' => 'city',
|
||||
'modelLabel' => 'city',
|
||||
'models' => [
|
||||
(object)['city' => ''],
|
||||
(object)['city' => 'Adelshofen'],
|
||||
(object)['city' => 'Elsenz'],
|
||||
(object)['city' => 'Eppingen'],
|
||||
(object)['city' => 'Kleingartach'],
|
||||
(object)['city' => 'Mühlbach'],
|
||||
(object)['city' => 'Richen'],
|
||||
(object)['city' => 'Rohrbach']
|
||||
]
|
||||
])
|
||||
@include('inc.forms.inputText', [
|
||||
'name' => 'phone',
|
||||
'label' => 'Telefonnummer für Rückfragen *',
|
||||
'placeholder' => 'Telefonnummer',
|
||||
'value' => $formdata->phone
|
||||
])
|
||||
@include('inc.forms.inputText', [
|
||||
'name' => 'email',
|
||||
'label' => 'Emailadresse für weiterführende Informationen *',
|
||||
'placeholder' => 'Email',
|
||||
'value' => $formdata->email
|
||||
])
|
||||
Ich bin an diesem Tag Mobil und kann fahren.
|
||||
@include('inc.forms.inputCheckbox', [
|
||||
'name' => 'driving',
|
||||
'label' => 'Fahrmöglichkeit vorhanden',
|
||||
'model' => $formdata
|
||||
])
|
||||
|
||||
<div class="form-group">
|
||||
* Pflichtfeld
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<button class="btn btn-primary">Anmelden</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
<div class="row mt-3">
|
||||
<div class="col-lg-12">
|
||||
<h3>FAQs</h3>
|
||||
<p>
|
||||
<b>Was müssen die Statisten tun?</b><br/>
|
||||
Statisten bekommen per Mail in der Woche vor der Bevölkerungsschutzübung eine Rolle
|
||||
zugeteilt. Dort aufgeführt ist die jeweilige Adresse, an der die Rolle abgespielt werden soll
|
||||
und die Uhrzeit der Einspielung. Es wird versucht die Rolle auf das eigene Ortsteil zu
|
||||
beschränken. Das Übungsende ist für 12 Uhr vorgesehen.
|
||||
<br/>
|
||||
<br/>
|
||||
<b>Wie kann ich mich als Teilnehmender anmelden?</b><br/>
|
||||
Bitte melden Sie ihre Teilnahme online über www.feuerwehr-eppingen.de mit. Sie
|
||||
bekommen dann eine Anmeldebestätigung.<br/>
|
||||
<br/>
|
||||
<b>Wer darf teilnehmen?</b><br/>
|
||||
Alle volljährigen Personen, die sich zum Zeitpunkt der Übung geistig und körperlich in der
|
||||
Lage fühlen, an der Bevölkerungsschutzübung teilzunehmen. Dies liegt in ihrer eigenen
|
||||
Verantwortung. Durch ihre Anwesenheit bestätigen Sie uns, dass Sie sich fit für die Rolle als
|
||||
Statist fühlen.
|
||||
Minderjährige Personen dürfen nur dann teilnehmen, wenn Sie in Begleitung eines
|
||||
Erwachsenen sind, der die Aufsichtspflicht über sie ausüben kann und darf.<br/>
|
||||
<br/>
|
||||
<b>Bild- und Videoaufnahmen!!</b><br/>
|
||||
Wir möchten Sie darauf hinweisen, dass bei der Veranstaltung Fotos und Videos gefertigt
|
||||
werden. Die Fotos und Videos werden zum Zweck der Dokumentation der Veranstaltung und
|
||||
im Rahmen unserer Öffentlichkeitsarbeit verwendet. Wenn Sie nicht fotografiert oder gefilmt
|
||||
werden möchten, sprechen Sie dies bitte unmittelbar beim Fotografen an.<br/>
|
||||
<br/>
|
||||
Rechtsgrundlage für die o.g. Datenverarbeitung ist Art. 6 Abs. 1 Satz 1 lit. e, Abs. 2, Abs. 3
|
||||
DSGVO i.V.m. § 3 LDSG.
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
@endsection
|
||||
@ -0,0 +1,32 @@
|
||||
@extends('layouts.app')
|
||||
|
||||
@section('social_media')
|
||||
<meta property="fb:app_id" content="{{ config('social-media-manager.facebook.app_id') }}"/>
|
||||
<meta property="og:type" content="website"/>
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
<article class="post-item card pt-3 pb-3 mb-lg-5 shadow-sm">
|
||||
<div class="row">
|
||||
<h1 class="col-lg-12 card-title">
|
||||
Anmeldebestätigung
|
||||
</h1>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<hr>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
Vielen Dank für die Anmeldung zur Bevölkerungsschutzübung.<br/>
|
||||
Wir werden Ihre Anmeldung überprüfen uns uns mit Ihnen in Verbindung setznen
|
||||
<br/>
|
||||
Ihre Feuerwehr Eppingen
|
||||
<br/>
|
||||
<br/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</article>
|
||||
@endsection
|
||||
@ -164,6 +164,17 @@ Route::get("anmeldung-em-2024/info", [
|
||||
'middleware' => 'auth', function (){}
|
||||
]);
|
||||
|
||||
Route::get("anmeldung-bevoelkerungsschutzuebung", [
|
||||
"uses" => "ContactController@subscribePopulationExercise",
|
||||
], [
|
||||
'middleware' => 'auth', function (){}
|
||||
]);
|
||||
Route::post("anmeldung-bevoelkerungsschutzuebung/abschliessen", [
|
||||
"uses" => "ContactController@subscribePopulationExerciseSave",
|
||||
], [
|
||||
'middleware' => 'auth', function (){}
|
||||
]);
|
||||
|
||||
|
||||
|
||||
/****************************************/
|
||||
|
||||
Loading…
Reference in New Issue
Block a user