336 lines
8.8 KiB
PHP
336 lines
8.8 KiB
PHP
<form id="registration_form" method="post" action="{{URL}}" onsubmit="return validationCheck()">
|
|
<input type="hidden" name="eventId" value="{{eventId}}" />
|
|
<div class="step" id="step1">
|
|
{{altersstufe}}
|
|
</div>
|
|
|
|
<div class="step" id="step2">
|
|
<h3>Persönliche Daten (Eltern)</h3>
|
|
{{persönliche daten eltern}}
|
|
</div>
|
|
|
|
<div class="step" id="step3">
|
|
<h3>Persönliche Daten (Teili)</h3>
|
|
{{persönliche daten}}
|
|
</div>
|
|
|
|
<div class="step" id="step4">
|
|
<h3>Deine Teilnahme</h3>
|
|
{{gruppe}}
|
|
</div>
|
|
|
|
<div class="step" id="step5">
|
|
<h3>An- und Abreise</h3>
|
|
{{anreise}}
|
|
</div>
|
|
|
|
<div class="step" id="step6">
|
|
<h3>Beitrag</h3>
|
|
{{beitrag}}
|
|
</div>
|
|
|
|
<div class="step" id="step7">
|
|
<h3>Foto-Erlaubnis</h3>
|
|
{{fotoerlaubnis}}
|
|
</div>
|
|
|
|
<div class="step" id="step8">
|
|
<h3>Besondere Merkmale</h3>
|
|
{{allergien}}
|
|
</div>
|
|
|
|
|
|
</form>
|
|
|
|
<style>
|
|
.step h3 {
|
|
margin-bottom: 30px;
|
|
display: block;
|
|
}
|
|
|
|
table {
|
|
margin: auto;
|
|
width: 95%;
|
|
}
|
|
|
|
#registration_form {
|
|
color: #000000;
|
|
padding: 10px;
|
|
}
|
|
|
|
#registration_form input[type=button],
|
|
#registration_form input[type=submit]
|
|
{
|
|
background-color: #ffffff;
|
|
width: 125px;
|
|
padding: 10px;
|
|
border-style: solid;
|
|
border-color: #f0f0f0;
|
|
cursor: pointer;
|
|
border-width: 1px;
|
|
margin-top: 25px;
|
|
}
|
|
|
|
#registration_form input[type="button"]:hover,
|
|
#registration_form input[type="submit"]:hover
|
|
{
|
|
color: #ffffff;
|
|
background-color: #394993;
|
|
}
|
|
|
|
#registration_form table {
|
|
width: 100%;
|
|
color: #757575;
|
|
}
|
|
|
|
#registration_form table td:nth-child(1) {
|
|
padding-right: 10px;
|
|
}
|
|
|
|
#registration_form table td:nth-child(2){
|
|
width: 80%;
|
|
padding-right: 10px;
|
|
}
|
|
#registration_form table td {
|
|
|
|
}
|
|
|
|
#registration_form table td input,
|
|
#registration_form table td select,
|
|
#registration_form table td textarea
|
|
{
|
|
|
|
width: 350px;
|
|
background-color: #ffffff;
|
|
border-color: #c0c0c0;
|
|
border-width: 1px;
|
|
border-style: solid;
|
|
border-radius: 5px;
|
|
font-size: 14pt;
|
|
padding: 5px;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
#registration_form label
|
|
{
|
|
font-size: 12pt;
|
|
cursor: pointer;
|
|
}
|
|
|
|
#registration_form table td select {
|
|
width: 363px;
|
|
}
|
|
|
|
.emblems_selection {
|
|
widh: 100%;
|
|
margin-top: 50px;
|
|
text-align: center;
|
|
padding: 5px 0;
|
|
border-style: solid none none;
|
|
border-width: 1px;
|
|
border-color: #c0c0c0;
|
|
}
|
|
|
|
.altersstufe_td {
|
|
display: inline-block;
|
|
box-shadow: 5px 5px 10px #c0c0c0;
|
|
background-color: #f9f9f9;
|
|
padding: 0;
|
|
cursor: pointer;
|
|
margin-right: 20px;
|
|
width: 46%;
|
|
}
|
|
|
|
.altersstufe_td div
|
|
{
|
|
height: 50px;
|
|
padding: 0px 10px !important;
|
|
}
|
|
|
|
.dsgvo_error {
|
|
color: #a94442;
|
|
}
|
|
|
|
@media screen and (max-width: 768px) {
|
|
.altersstufe_td {
|
|
display: block;
|
|
margin: 0 auto 25px;
|
|
width: 95%;
|
|
}
|
|
|
|
#registration_form table td input,
|
|
#registration_form table td select,
|
|
#registration_form table td textarea
|
|
{
|
|
width: 100%;
|
|
}
|
|
|
|
#strasse {
|
|
width: 70% !important;
|
|
}
|
|
|
|
#ort {
|
|
width: 608% !important;
|
|
}
|
|
}
|
|
|
|
|
|
</style>
|
|
|
|
<script>
|
|
let currentStep = 1;
|
|
const form = document.getElementById('multi-step-form');
|
|
const steps = document.querySelectorAll('.step');
|
|
|
|
function checkAnsprechpartner() {
|
|
var errors = false;
|
|
|
|
var ids = ['ansprechpartner', 'telefon_2','email_2'];
|
|
|
|
for (var idx = 0; idx < ids.length; idx++) {
|
|
var currentElement = ids[idx];
|
|
|
|
if (document.getElementById(currentElement).value == '') {
|
|
document.getElementById(currentElement).style.backgroundColor = "#fd9393";
|
|
document.getElementById(currentElement).style.color = "red";
|
|
errors = true;
|
|
} else {
|
|
document.getElementById(currentElement).style.backgroundColor = "#ffffff";
|
|
document.getElementById(currentElement).style.color = "#c0c0c0";
|
|
}
|
|
}
|
|
|
|
if (!errors) {
|
|
showStep(3);
|
|
}
|
|
}
|
|
|
|
function checkAnreise() {
|
|
var errors = false;
|
|
|
|
var ids = ['anreise', 'abreise'];
|
|
|
|
for (var idx = 0; idx < ids.length; idx++) {
|
|
var currentElement = ids[idx];
|
|
|
|
if (document.getElementById(currentElement).value == '') {
|
|
document.getElementById(currentElement).style.backgroundColor = "#fd9393";
|
|
document.getElementById(currentElement).style.color = "red";
|
|
errors = true;
|
|
} else {
|
|
document.getElementById(currentElement).style.backgroundColor = "#ffffff";
|
|
document.getElementById(currentElement).style.color = "#c0c0c0";
|
|
}
|
|
}
|
|
|
|
if (errors)
|
|
return;
|
|
|
|
var anreise = new Date(document.getElementById('anreise').value);
|
|
var abreise = new Date(document.getElementById('abreise').value);
|
|
|
|
if(abreise < anreise) {
|
|
document.getElementById('anreise').style.backgroundColor = "#fd9393";
|
|
document.getElementById('anreise').style.color = "red";
|
|
document.getElementById('abreise').style.backgroundColor = "#fd9393";
|
|
document.getElementById('abreise').style.color = "red";
|
|
return;
|
|
}
|
|
|
|
|
|
if(anreise < new Date('{{startdate}}')) {
|
|
document.getElementById('anreise').style.backgroundColor = "#fd9393";
|
|
document.getElementById('anreise').style.color = "red";
|
|
errors = true;
|
|
} else {
|
|
document.getElementById('anreise').style.backgroundColor = "#ffffff";
|
|
document.getElementById('anreise').style.color = "#c0c0c0";
|
|
}
|
|
|
|
if(abreise > new Date('{{enddate}}')) {
|
|
document.getElementById('abreise').style.backgroundColor = "#fd9393";
|
|
document.getElementById('abreise').style.color = "red";
|
|
errors = true;
|
|
} else {
|
|
document.getElementById('abreise').style.backgroundColor = "#ffffff";
|
|
document.getElementById('abreise').style.color = "#c0c0c0";
|
|
}
|
|
|
|
if (!errors) {
|
|
showStep(6);
|
|
}
|
|
}
|
|
|
|
|
|
function checkAddress() {
|
|
var errors = false;
|
|
|
|
var ids = ['vorname', 'nachname','geburtsdatum', 'telefon_1', 'email_1', 'strasse', 'hausnummer', 'plz', 'ort'];
|
|
|
|
for (var idx = 0; idx < ids.length; idx++) {
|
|
var currentElement = ids[idx];
|
|
|
|
if (document.getElementById(currentElement).value == '') {
|
|
document.getElementById(currentElement).style.backgroundColor = "#fd9393";
|
|
document.getElementById(currentElement).style.color = "red";
|
|
errors = true;
|
|
} else {
|
|
document.getElementById(currentElement).style.backgroundColor = "#ffffff";
|
|
document.getElementById(currentElement).style.color = "#c0c0c0";
|
|
}
|
|
}
|
|
|
|
if (!errors) {
|
|
showStep(4);
|
|
}
|
|
}
|
|
|
|
|
|
function showStep(stepNumber) {
|
|
steps.forEach(step => step.style.display = 'none');
|
|
document.getElementById(`step${stepNumber}`).style.display = 'block';
|
|
}
|
|
|
|
function nextStep() {
|
|
if (currentStep < steps.length) {
|
|
currentStep++;
|
|
showStep(currentStep);
|
|
}
|
|
}
|
|
|
|
function validationCheck()
|
|
{
|
|
if (!document.getElementById('dsgvo_accept').checked) {
|
|
document.getElementById('dsgvo_text').classList.add('dsgvo_error');
|
|
}
|
|
var ids = ['vorname', 'nachname','geburtsdatum', 'telefon_1', 'email_1', 'anreise', 'abreise', 'strasse', 'hausnummer', 'plz', 'ort'];
|
|
|
|
for (var idx = 0; idx < ids.length; idx++) {
|
|
var currentElement = ids[idx];
|
|
if (document.getElementById(currentElement).value == '') {
|
|
return false;
|
|
}
|
|
}
|
|
|
|
var anreise = new Date(document.getElementById('anreise').value);
|
|
var abreise = new Date(document.getElementById('abreise').value);
|
|
|
|
if(anreise < new Date('{{startdate}}')) {
|
|
return false;
|
|
}
|
|
|
|
if(abreise > new Date('{{enddate}}')) {
|
|
return false;
|
|
}
|
|
|
|
if (!document.getElementById('dsgvo_accept').checked) {
|
|
document.getElementById('dsgvo_text').classList.add('dsgvo_error');
|
|
}
|
|
|
|
return document.getElementById('dsgvo_accept').checked;
|
|
|
|
|
|
}
|
|
|
|
showStep(currentStep);
|
|
</script> |