287 lines
11 KiB
PHP
287 lines
11 KiB
PHP
<?php
|
|
require_once($_SERVER['DOCUMENT_ROOT'].'jformer.php');
|
|
require_once($_SERVER['DOCUMENT_ROOT'].'db.php');
|
|
|
|
session_start();
|
|
|
|
if ( (!isset($_SESSION['uid'])) || ($_SESSION['uid'] == "") )
|
|
{
|
|
error_log("ERROR: STEP 4 wurde mit folgender UID aufgerufen:>".$_SESSION['uid']."<");
|
|
header('Location: index.php');
|
|
}
|
|
$uid = $_SESSION['uid'];
|
|
|
|
$mydb = new DB_MySQL();
|
|
|
|
$mydb->query("SELECT *, DATE_FORMAT(vorbereitungstag,'%d.%m.%Y') AS FormateDate, DATE_FORMAT(beginn,'%d.%m.%Y') AS Zeltlagerstart FROM `VerwaltungLagerplatz` ORDER BY `VerwaltungLagerplatz`.`jahr` DESC LIMIT 1");
|
|
$row = $mydb->fetchRow();
|
|
$DatumVorbereitungstag = $row['FormateDate'];
|
|
$DatumStartZeltlager = $row['Zeltlagerstart'];
|
|
|
|
$mydb->query("SELECT DATE_FORMAT(a.geburtstag,'%d.%m.%Y') as geburtsdatum, b.mitglied FROM `AnmeldungPerson` as a join `AnmeldungPerson` as b on a.uid=b.uid WHERE a.uid='$uid'");
|
|
$row = $mydb->fetchRow();
|
|
$Geburtsdatum = $row['geburtsdatum'];
|
|
$Mitglied = $row['mitglied'];
|
|
|
|
$mydb->disconnect();
|
|
|
|
$Form = new JFormer('AdressForm', array('submitButtonText' => '-> Anmeldung Step5'));
|
|
|
|
$Form->addJFormComponentArray(array(
|
|
|
|
new JFormComponentHtml('<p><b>Zeltwunsch, Mitarbeiter,Auf- und Abbau...</b></p>'),
|
|
new JFormComponentMultipleChoice('mitarbeiter', '', array(
|
|
array(
|
|
'value' => '1', 'label' => 'Ich bin dieses Jahr Mitarbeiter',
|
|
'tip' => '<p>Wenn Ihr das erste mal als Mitarbeiter mitfahren wollt, klärt dies bitte <b><u>vorher</u></b> mit der Lagerleitung ab.</p>',
|
|
'checked' => false,
|
|
),
|
|
|
|
),
|
|
array()
|
|
),
|
|
|
|
|
|
new JFormComponentName('zeltwunsch', 'Er/Sie möchte ins Zelt zu:<br>(Die Reihenfolge der Wünsche legt die Priorität fest)', array(
|
|
'instanceOptions' => array(
|
|
'max' => 4,
|
|
'addButtonText' => 'Namen hinzufügen',
|
|
'removeButtonText' => 'Namen löschen',
|
|
'tip' => 'reihenfolge legt die Priorität fest',
|
|
),
|
|
'dependencyOptions' => array(
|
|
'dependentOn' => 'mitarbeiter',
|
|
'display' => 'hide',
|
|
'jsFunction' => '!$("#mitarbeiter-choice1").is(":checked");'
|
|
),
|
|
'middleInitialHidden' => true,
|
|
|
|
|
|
)),
|
|
|
|
//nur für Mitarbeter
|
|
new JFormComponentSingleLineText('aufgabe', 'Im Zeltlager möchte ich folgende Aufgabe(n) übernehmen:', array(
|
|
'width' => 'long',
|
|
'validationOptions' => array('required'),
|
|
'dependencyOptions' => array(
|
|
'dependentOn' => 'mitarbeiter',
|
|
'display' => 'hide',
|
|
'jsFunction' => '$("#mitarbeiter-choice1").is(":checked");'
|
|
),
|
|
|
|
)),
|
|
|
|
/*
|
|
new JFormComponentDropDown('mitfahrzeitraum', 'Ich bin für folgenden Zeitraum im Zeltlager dabei:', array(
|
|
array('value' => '1','label' => 'kompletten zwei Wochen', 'selected' => true),
|
|
array('value' => '2','label' => 'nur die erste Woche inkl. Wochenende'),
|
|
array('value' => '3','label' => 'nur die zweite Woche inkl. Wochenende'),
|
|
array('value' => '4','label' => 'nur die erste Woche ohne Wochenende'),
|
|
array('value' => '5','label' => 'nur die zweite Woche ohne Wochenende'),
|
|
array('value' => '10','label' => 'freie Zeitangabe'),
|
|
),
|
|
array(
|
|
'dependencyOptions' => array(
|
|
'dependentOn' => 'mitarbeiter',
|
|
'display' => 'hide',
|
|
'jsFunction' => '$("#mitarbeiter-choice1").is(":checked");'
|
|
),
|
|
)),
|
|
|
|
new JFormComponentSingleLineText('freiermitfahrzeitraum', 'Ich bin von-bis im Zeltlager', array(
|
|
'validationOptions' => array('required'),
|
|
'width' => 'long',
|
|
'tip' => 'Hier könnt Ihr einen freien Zeitraum bzw. einzelne Tage angeben.',
|
|
'dependencyOptions' => array(
|
|
'dependentOn' => array('mitarbeiter', 'mitfahrzeitraum'),
|
|
'display' => 'hide',
|
|
'jsFunction' => '$("#mitarbeiter-choice1").is(":checked") && $("#mitfahrzeitraum").val() == 10;'
|
|
),
|
|
|
|
)),
|
|
|
|
));
|
|
*/
|
|
|
|
new JFormComponentDropDown('mitfahrzeitraum', 'Mitfahrzeitraum:', array(
|
|
array('value' => '1','label' => 'zwei Wochen', 'selected' => true),
|
|
array('value' => '2','label' => 'erste Woche inkl. Wochenende'),
|
|
array('value' => '3','label' => 'zweite Woche inkl. Wochenende'),
|
|
array('value' => '4','label' => 'Wochenende (Freitag bis Sonntag'),
|
|
),
|
|
array(
|
|
'dependencyOptions' => array(
|
|
'dependentOn' => 'mitarbeiter',
|
|
'display' => 'hide',
|
|
'jsFunction' => '$("#mitarbeiter-choice1").is(":checked");'
|
|
),
|
|
)),
|
|
));
|
|
|
|
//Wenn das Anmeldedatum nach dem Vorbereitungstag ist, wird das Feld nicht mehr angezeigt
|
|
if (strtotime("now") < strtotime($DatumVorbereitungstag))
|
|
{
|
|
$Form->addJFormComponentArray(array(
|
|
|
|
new JFormComponentMultipleChoice('vorbereitungstag', '<font size=+1>Zeltlagervorbereitungstag '. $DatumVorbereitungstag . '</font>', array(
|
|
array('value' => '1', 'label' => '<b>Ja</b>, ich bin dabei'),
|
|
array('value' => '2', 'label' => '<b>Nein</b>, ich kann leider nicht. Ich melde mich beim Lagerleiter, welchen Job ich im Zeltlager übernehme!'),
|
|
array('value' => '3', 'label' => 'Kann ich jetzt nocht nicht sagen. Ich melde mich aber noch vor dem Vorbereitungstag beim Lagerleiter zurück!'),
|
|
),
|
|
array(
|
|
'multipleChoiceType' => 'radio',
|
|
'validationOptions' => array('required'),
|
|
'dependencyOptions' => array(
|
|
'dependentOn' => 'mitarbeiter',
|
|
'display' => 'hide',
|
|
'jsFunction' => '$("#mitarbeiter-choice1").is(":checked");'
|
|
),
|
|
)),
|
|
|
|
));
|
|
}
|
|
|
|
//Berechnung Alter am ersten Zeltlagertag
|
|
$geburtstag = new DateTime($Geburtsdatum);
|
|
$ersterLagertag = new DateTime($DatumStartZeltlager);
|
|
$alter = $geburtstag->diff($ersterLagertag)->y;
|
|
|
|
if ( ($Mitglied=='1' && $alter >= 13) || $alter >= 15)
|
|
{
|
|
$Form->addJFormComponentArray(array(
|
|
new JFormComponentMultipleChoice('aufbau', '', array(
|
|
array('value' => '1', 'label' => 'Ich möchte zum Aufbau mitfahren.'),)
|
|
),
|
|
));
|
|
|
|
$Form->addJFormComponentArray(array(
|
|
new JFormComponentMultipleChoice('abbau', '', array(
|
|
array('value' => '1', 'label' => 'Ich bleibe noch zum Abbau.'),)
|
|
),
|
|
));
|
|
|
|
|
|
$Form->addJFormComponentArray(array(
|
|
new JFormComponentMultipleChoice('feldbett', '', array(
|
|
array('value' => '1', 'label' => 'Ich habe privat ein Feldbett und bringe dieses mit ins Zeltlager'),
|
|
),
|
|
array( 'dependencyOptions' => array(
|
|
'dependentOn' => 'mitarbeiter',
|
|
'display' => 'hide',
|
|
'jsFunction' => '$("#mitarbeiter-choice1").is(":checked");'
|
|
),
|
|
)),
|
|
));
|
|
|
|
}
|
|
|
|
function onSubmit($formValues)
|
|
{
|
|
$uid = $_SESSION['uid'];
|
|
|
|
$mydb = new DB_MySQL();
|
|
$mydb->query("SELECT *, DATE_FORMAT(vorbereitungstag,'%d.%m.%Y') AS FormateDate FROM `VerwaltungLagerplatz` ORDER BY `VerwaltungLagerplatz`.`jahr` DESC LIMIT 1");
|
|
$row = $mydb->fetchRow();
|
|
$DatumVorbereitungstag = $row['FormateDate'];
|
|
$mydb->disconnect();
|
|
|
|
$aufbau = $formValues->aufbau[0];
|
|
if ($aufbau == '')
|
|
{
|
|
$aufbau = 0;
|
|
}
|
|
|
|
$abbau = $formValues->abbau[0];
|
|
if ($abbau == '')
|
|
{
|
|
$abbau = 0;
|
|
}
|
|
|
|
if ($formValues->mitarbeiter)
|
|
{
|
|
|
|
$mitarbeiter= 1;
|
|
$aufgabe= $formValues->aufgabe;
|
|
|
|
|
|
if (strtotime("now") < strtotime($DatumVorbereitungstag))
|
|
{
|
|
$vorbereitungstag= $formValues->vorbereitungstag;
|
|
}
|
|
else
|
|
{
|
|
$vorbereitungstag = 4;
|
|
}
|
|
|
|
|
|
$mitfahrzeitraum = $formValues->mitfahrzeitraum;
|
|
|
|
$feldbett= $formValues->feldbett[0];
|
|
if ($feldbett == '')
|
|
{
|
|
$feldbett = 0;
|
|
}
|
|
|
|
if ($mitfahrzeitraum == 10)
|
|
{
|
|
$mitfahrzeitraum_freitext = $formValues->freiermitfahrzeitraum;
|
|
}
|
|
else
|
|
{
|
|
$mitfahrzeitraum_freitext = "-";
|
|
}
|
|
|
|
$insasse[0] = "-";
|
|
$insasse[1] = "-";
|
|
$insasse[2] = "-";
|
|
$insasse[3] = "-";
|
|
}
|
|
else
|
|
{
|
|
$mitarbeiter= 0;
|
|
$feldbett = 0;
|
|
$aufgabe="-";
|
|
$vorbereitungstag = "0";
|
|
$mitfahrzeitraum= "1";
|
|
$mitfahrzeitraum_freitext = "-";
|
|
|
|
$iLoop = 0;
|
|
if(is_array($formValues->zeltwunsch))
|
|
{
|
|
foreach($formValues->zeltwunsch as $wunsch)
|
|
{
|
|
$insasse[$iLoop] = $wunsch->lastName.', '.$wunsch->firstName;
|
|
$iLoop++;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$insasse[$iLoop] = $formValues->zeltwunsch->firstName.', '. $formValues->zeltwunsch->lastName;
|
|
}
|
|
}
|
|
|
|
if ($uid == "")
|
|
{
|
|
error_log("ERROR: SUBMIT bei STEP 4 wurde ohne UID aufgerufen");
|
|
$_SESSION['step'] = "0";
|
|
}
|
|
else
|
|
{
|
|
$_SESSION['step'] = "5";
|
|
|
|
$mydb = new DB_MySQL();
|
|
$mydb->query("UPDATE AnmeldungStatus SET step = '4' WHERE uid='$uid' AND step < '10' ");
|
|
$mydb->query("INSERT INTO AnmeldungZeltwunsch (uid, insasse1, insasse2, insasse3, insasse4, mitarbeiter, aufgabe, mitfahrzeitraum, mitfahrzeitraum_freitext, vorbereitungstag, aufbau, abbau, feldbett) VALUES ('$uid', '$insasse[0]', '$insasse[1]', '$insasse[2]','$insasse[3]', '$mitarbeiter', '$aufgabe', '$mitfahrzeitraum' , '$mitfahrzeitraum_freitext', '$vorbereitungstag', '$aufbau', '$abbau', '$feldbett') ON DUPLICATE KEY UPDATE insasse1 = '$insasse[0]', insasse2 = '$insasse[1]', insasse3 = '$insasse[2]', insasse4 = '$insasse[3]' ,mitarbeiter = '$mitarbeiter', aufgabe = '$aufgabe', mitfahrzeitraum = '$mitfahrzeitraum', mitfahrzeitraum_freitext = '$mitfahrzeitraum_freitext', vorbereitungstag = '$vorbereitungstag', aufbau = '$aufbau', abbau = '$abbau' , feldbett = '$feldbett' ");
|
|
|
|
}
|
|
$mydb->disconnect();
|
|
|
|
$response = array('redirect' => 'index.php');
|
|
return $response;
|
|
}
|
|
|
|
// Process any request to the form
|
|
$Form->processRequest();
|
|
|
|
?>
|