first commit
This commit is contained in:
361
admin/termine.php
Normal file
361
admin/termine.php
Normal file
@ -0,0 +1,361 @@
|
||||
<?php
|
||||
if (!isset($_SESSION)) {
|
||||
session_start();
|
||||
}
|
||||
include_once '../classes/TestProjektSmarty.class_subdir.php';
|
||||
require_once("../config.inc.php");
|
||||
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
|
||||
$smarty = new SmartyAdmin();
|
||||
require_once "../language/german.inc.php";
|
||||
#require_once("../func_get_restplatz.php");
|
||||
#require_once("../func_get_parameter.php");
|
||||
require_once("../func_get_sitzplatz.php");
|
||||
require_once("../func_get_lfd_haushalt.php");
|
||||
require_once("../config/func_cryption.php");
|
||||
|
||||
|
||||
if (isset($_GET['action'])) {
|
||||
$action = $_GET['action'];
|
||||
} else {
|
||||
$action = '';
|
||||
}
|
||||
|
||||
|
||||
if ($action == '') {
|
||||
|
||||
if (isset($_GET['edit'])) {
|
||||
$_SESSION["termine_status"] = 'edit';
|
||||
$tid = $_GET['edit'];
|
||||
$_SESSION["termine_tid"] = $tid;
|
||||
} else {
|
||||
$_SESSION["termine_status"] = 'neu';
|
||||
}
|
||||
|
||||
# -- Fehlermeldungen -- #
|
||||
if (isset($_GET['error'])) {
|
||||
|
||||
$errorno = $_GET['error'];
|
||||
|
||||
$smarty->assign('termine_error', 1);
|
||||
|
||||
$smarty->assign('termine_value_datum', $_SESSION["termine_value_datum"]);
|
||||
$smarty->assign('termine_value_zeit', $_SESSION["termine_value_tm_zeit"]);
|
||||
$smarty->assign('termine_value_tm_standort', $_SESSION["termine_value_tm_standort"]);
|
||||
$smarty->assign('termine_value_tm_plaetze', $_SESSION["termine_value_tm_plaetze"]);
|
||||
$smarty->assign('termine_value_tm_raum', $_SESSION["termine_value_tm_raum"]);
|
||||
$smarty->assign('termine_value_hinweis', $_SESSION["termine_value_hinweis"]);
|
||||
$smarty->assign('termine_value_fellbach_gd', $_SESSION["termine_value_fellbach_gd"]);
|
||||
|
||||
if ($errorno == 3) {
|
||||
# ungültiges Datum
|
||||
$smarty->assign('termine_error_text', "Das eingegebene Datum ist nicht korrekt. Bitte korrigieren Sie das Datum!");
|
||||
}
|
||||
}
|
||||
|
||||
# --- Wenn Werte editiert werden ------------
|
||||
if ($_SESSION["termine_status"] == 'edit') {
|
||||
$result_edit = $db->query("SELECT tid, date_format(datum, '%d.%m.%Y') datum, date_format(datum, '%H:%i') zeit, hinweis, fellbach_gd
|
||||
FROM jumi_termine
|
||||
WHERE tid = $tid");
|
||||
$row_edit = $result_edit->fetch_array();
|
||||
$smarty->assign('termine_value_datum', "$row_edit[datum]");
|
||||
$smarty->assign('termine_value_zeit', "$row_edit[zeit]");
|
||||
$smarty->assign('termine_value_tm_standort', "$row_edit[tm_standort]");
|
||||
$smarty->assign('termine_value_tm_plaetze', "$row_edit[tm_plaetze]");
|
||||
$smarty->assign('termine_value_tm_raum', "$row_edit[tm_raum]");
|
||||
$smarty->assign('termine_value_hinweis', "$row_edit[hinweis]");
|
||||
$smarty->assign('termine_value_fellbach_gd', "$row_edit[fellbach_gd]");
|
||||
|
||||
}
|
||||
# --- Wenn Werte editiert werden Ende -------
|
||||
|
||||
if ($_GET['editende'] == 1) {
|
||||
# Editieren ist beendet, als ein update auf einen Datensatz. Dann ist der status wieder Neu, damit wird wieder ein Insert durchgeführt
|
||||
$_SESSION["termine_status"] = 'neu';
|
||||
}
|
||||
|
||||
|
||||
# Gespeicherte Werte
|
||||
$query1 = "SELECT tid, date_format(datum, '%d.%m.%Y') datum_form, date_format(datum, '%H:%i') zeit, hinweis, fellbach_gd
|
||||
FROM jumi_termine
|
||||
WHERE datum > DATE_SUB( NOW() , INTERVAL 14 DAY )
|
||||
ORDER BY datum desc, zeit ASC";
|
||||
|
||||
$result1 = $db->query($query1) or die("Cannot execute query1a");
|
||||
|
||||
while ($row1 = $result1->fetch_array()) {
|
||||
|
||||
$result_dis = $db->query("SELECT count(*) Anz
|
||||
FROM jumi_buchung
|
||||
WHERE tid = $row1[tid]");
|
||||
$row_dis = $result_dis->fetch_array();
|
||||
if ($row_dis['Anz'] > 0) {
|
||||
$disable = 0;
|
||||
} else {
|
||||
$disable = 1;
|
||||
}
|
||||
|
||||
$result2 = $db->query("SELECT COUNT(*) Anz
|
||||
FROM jumi_buchung
|
||||
WHERE tid=$row1[tid]");
|
||||
$row2 = $result2->fetch_array();
|
||||
|
||||
$result3 = $db->query("SELECT COUNT(distinct lfd_haushalt) Anz
|
||||
FROM jumi_buchung
|
||||
WHERE tid=$row1[tid]");
|
||||
$row3 = $result3->fetch_array();
|
||||
|
||||
$row1['anz_ges'] = $row2['Anz'];
|
||||
$row1['anz_fam'] = $row3['Anz'];
|
||||
|
||||
$row1['tm_disable'] = $disable;
|
||||
$table_data1[] = $row1;
|
||||
}
|
||||
$smarty->assign('table_data1', $table_data1);
|
||||
|
||||
}
|
||||
|
||||
|
||||
if ($action == 'save') {
|
||||
|
||||
$datum = $_POST['datum'];
|
||||
$tm_zeit = $_POST['tm_zeit'];
|
||||
$hinweis = trim($_POST['hinweis']);
|
||||
$fellbach_gd = trim($_POST['fellbach_gd']);
|
||||
|
||||
|
||||
$_SESSION["termine_value_datum"] = $datum;
|
||||
$_SESSION["termine_value_tm_zeit"] = $tm_zeit;
|
||||
$_SESSION["termine_value_hinweis"] = $hinweis;
|
||||
$_SESSION["termine_value_fellbach_gd"] = $fellbach_gd;
|
||||
|
||||
$datum_form = preg_replace('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', '$3-$2-$1', $datum);
|
||||
$gddatum = $datum_form . " " . $tm_zeit . ":00";
|
||||
$_SESSION["termine_value_tm_gddatum"] = $gddatum;
|
||||
function validateDate($date, $format = 'Y-m-d')
|
||||
{
|
||||
$d = DateTime::createFromFormat($format, $date);
|
||||
return $d && $d->format($format) == $date;
|
||||
}
|
||||
|
||||
if (!validateDate($datum_form)) {
|
||||
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?error=3\">";
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
#$datum = date("Y-m-d H:i:s");
|
||||
if ($_SESSION["termine_status"] == 'neu') {
|
||||
$sql1 = $db->query("INSERT INTO jumi_termine ( datum
|
||||
, hinweis
|
||||
, fellbach_gd
|
||||
)
|
||||
VALUES
|
||||
( '$gddatum'
|
||||
, '$hinweis'
|
||||
, '$fellbach_gd'
|
||||
)
|
||||
");
|
||||
$termin = $db->insert_id;
|
||||
|
||||
/* Daueranmelder wird es nicht geben.
|
||||
|
||||
$query1 = "SELECT DISTINCT lfd_haushalt FROM jumi_daueranmeldung";
|
||||
$result1 = $db->query($query1) or die("Cannot execute query1");
|
||||
while ($row1 = $result1->fetch_array()) {
|
||||
$lfd_haushalt = get_lfd_haushalt($termin);
|
||||
$datum = date("Y-m-d H:i:s");
|
||||
|
||||
$query2 = "SELECT mail
|
||||
FROM jumi_daueranmeldung
|
||||
WHERE lfd_haushalt = $row1[lfd_haushalt]
|
||||
GROUP BY lfd_haushalt, mail
|
||||
";
|
||||
$result2 = $db->query($query2) or die("Cannot execute query2");
|
||||
while ($row2 = $result2->fetch_array()) {
|
||||
|
||||
$query3 = "SELECT vorname, nachname
|
||||
FROM jumi_daueranmeldung
|
||||
WHERE mail= '$row2[mail]'
|
||||
AND lfd_haushalt = $row1[lfd_haushalt]
|
||||
";
|
||||
#echo $query3;
|
||||
$result3 = $db->query($query3) or die("Cannot execute query3");
|
||||
$nr = 0;
|
||||
while ($row3 = $result3->fetch_array()) {
|
||||
$data['vorname'][$nr] = $row3['vorname'];
|
||||
$data['nachname'][$nr] = $row3['nachname'];
|
||||
$data['sitzplatz'][$nr] = get_sitzplatz($data['nachname'][$nr], $data['vorname'][$nr]);
|
||||
$data['split'][$nr] = explode("|", $data['sitzplatz'][$nr]);
|
||||
$data['reihe'][$nr] = $data['split'][$nr][0];
|
||||
$data['platz'][$nr] = $data['split'][$nr][1];
|
||||
$sql1 = $db->query("insert into jumi_buchung (tid, nachname, vorname, reihe, platz, mail, lfd_haushalt, save_date) VALUES('$termin', '" . $data['nachname'][$nr] . "', '" . $data['vorname'][$nr] . "', '" . $data['reihe'][$nr] . "', '" . $data['platz'][$nr] . "', '$row2[mail]', '$lfd_haushalt', '$datum')");
|
||||
#echo "<pre>";
|
||||
#echo "<hr>";
|
||||
#echo "insert into jumi_buchung (tid, nachname, vorname, reihe, platz, mail, lfd_haushalt, save_date) VALUES('$termin', '".$data['nachname'][$nr]."', '".$data['vorname'][$nr]."', '".$data['reihe'][$nr]."', '".$data[platz][$nr]."', '$row2[mail]', '$lfd_haushalt', '$datum')<br>";
|
||||
$data['bid'][$nr] = $db->insert_id;
|
||||
$data['crypt'][$nr] = cryption($data['bid'][$nr] . "|" . $data['nachname'][$nr] . "|$termin", 'e');
|
||||
$nr++;
|
||||
}
|
||||
|
||||
#print_r($data);
|
||||
#echo "<hr>";
|
||||
#echo "</pre>";
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
$query_termin = $db->query("SELECT date_format(datum, '%d.%m.%Y - %H:%i') beginn, hinweis
|
||||
FROM jumi_termine
|
||||
WHERE tid = $termin
|
||||
LIMIT 1
|
||||
");
|
||||
$row_termin = $query_termin->fetch_array();
|
||||
|
||||
|
||||
|
||||
$empfaenger = "$row2[mail]";
|
||||
$betreff = "Registrierung zum Gottesdienst am $row_termin[beginn] Uhr";
|
||||
$text = "
|
||||
<html>
|
||||
<head>
|
||||
<title>Registrierung zum Gottesdienst</title>
|
||||
</head>
|
||||
<body>
|
||||
<font face='Arial' size='2'>
|
||||
Guten Tag!<br><br>
|
||||
Sie haben sich zum Gottesdienst in der neuapostolischen Kirche Weinstadt-Beutelsbach registriert.<br>
|
||||
Nachfolgend finden Sie die hinterlegten Daten:
|
||||
<br>
|
||||
<br>
|
||||
<table>
|
||||
<tr>
|
||||
<td valign='top' width='100'>
|
||||
<font face='Arial' size='2'>
|
||||
<b>Datum:</b>
|
||||
</font>
|
||||
</td>
|
||||
<td valign='top' colspan='2'>
|
||||
<font face='Arial' size='2'>
|
||||
$row_termin[beginn]";
|
||||
if ($row_termin['hinweis'] != '') {
|
||||
$text .= " ($row_termin[hinweis])";
|
||||
}
|
||||
$text .= "
|
||||
</font>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign='top' width='100'>
|
||||
|
||||
</td>
|
||||
<td valign='top'>
|
||||
|
||||
</td>
|
||||
<td valign='top'>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
";
|
||||
$person = 1;
|
||||
$vorname = "";
|
||||
$nachname = "";
|
||||
$crypt = "";
|
||||
for ($i = 0; $i < count($data['nachname']); $i++) {
|
||||
$vorname = $data['vorname'][$i];
|
||||
$nachname = $data['nachname'][$i];
|
||||
$crypt = $data['crypt'][$i];
|
||||
$text .= "
|
||||
<tr>
|
||||
<td valign='top' width='100'>
|
||||
<font face='Arial' size='2'>
|
||||
<b>Person $person:</b>
|
||||
</font>
|
||||
</td>
|
||||
<td valign='top'>
|
||||
<font face='Arial' size='2'>
|
||||
$nachname, $vorname
|
||||
</font>
|
||||
</td>
|
||||
<td valign='top'>
|
||||
<a href='http://gd.nak-btb.de/abmeldung.php?key=$crypt'>Abmeldung</a>
|
||||
</td>
|
||||
</tr>";
|
||||
$person++;
|
||||
}
|
||||
|
||||
$text .= "
|
||||
</table>
|
||||
<br>
|
||||
Sie wurden aufgrund Ihrer Dauerbuchung zu den Gottesdiensten benachrichtigt.
|
||||
<p>
|
||||
Diese Mail wurde automatisch generiert!<br>
|
||||
Antworten Sie daher nicht auf diese Mail<br>
|
||||
<br>
|
||||
Vielen Dank
|
||||
</body>
|
||||
</html>";
|
||||
|
||||
|
||||
$text = stripslashes($text);
|
||||
$headers = "MIME-Version: 1.0\n";
|
||||
$headers .= "Content-type: text/html; charset=utf-8\n";
|
||||
$headers .= "From: Gottesdienstregistrierung <service@nak-btb.de>\n";
|
||||
|
||||
$return = @mail($empfaenger, $betreff, $text, $headers);
|
||||
|
||||
|
||||
#echo "
|
||||
#<hr>
|
||||
#$empfaenger<br>
|
||||
#$betreff<br>
|
||||
#$text<br>
|
||||
#<hr>";
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
if ($_SESSION["termine_status"] == 'edit') {
|
||||
$tid = $_SESSION["termine_tid"];
|
||||
|
||||
|
||||
|
||||
$result = $db->query("UPDATE jumi_termine
|
||||
SET datum = '$gddatum'
|
||||
, hinweis = '$hinweis'
|
||||
, fellbach_gd = '$fellbach_gd'
|
||||
WHERE tid = $tid
|
||||
");
|
||||
|
||||
unset($_SESSION['termine_tid']);
|
||||
|
||||
|
||||
}
|
||||
# Dann bekommts beim refresh den status neu, also es wird beim Abschicken ein Insert gemacht
|
||||
$editende = 1;
|
||||
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?editende=$editende\">";
|
||||
|
||||
|
||||
}
|
||||
if ($action == 'del') {
|
||||
$tid = $_GET['tid'];
|
||||
|
||||
$del1 = $db->query("DELETE FROM jumi_termine WHERE tid = $tid");
|
||||
|
||||
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "\">";
|
||||
}
|
||||
|
||||
|
||||
$smarty->assign('action', "$action");
|
||||
$smarty->display("$template/admin/$templatename");
|
||||
|
||||
?>
|
Reference in New Issue
Block a user