survey/admin/gd_verwaltung.php
2023-03-14 14:47:50 +01:00

566 lines
18 KiB
PHP

<?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_sitzplatz.php");
require_once("../func_get_lfd_haushalt.php");
require_once("../func_get_parameter.php");
require_once("../func_kritische_haushalte.php");
require_once("../config/func_cryption.php");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
$termin = $_GET['tid'];
$_SESSION["termin"] = $termin;
$result1 = $db->query("SELECT COUNT(*) Anz
FROM jumi_buchung
WHERE tid=$termin");
$row1 = $result1->fetch_array();
$smarty->assign('verwaltung_anzges', $row1['Anz']);
$result2 = $db->query("SELECT COUNT(distinct lfd_haushalt) Anz
FROM jumi_buchung
WHERE tid=$termin");
$row2 = $result2->fetch_array();
$smarty->assign('verwaltung_lfd_haushalte', $row2['Anz']);
$smarty->assign('verwaltung_kritischemarke', get_parameter(2));
# Gesperrt?
$result3 = $db->query("SELECT loginstop, date_format(loginstop, '%d.%m.%Y - %H:%i') dateform
FROM jumi_termine
WHERE tid=$termin");
$row3 = $result3->fetch_array();
if($row3['loginstop'] != '0000-00-00 00:00:00'){
$sperrung = "1";
$smarty->assign('verwaltung_sperrdat', $row3['dateform']);
}else{
$sperrung = "0";
}
$smarty->assign('verwaltung_sperrung', $sperrung);
$query3 = "SELECT bid, nachname, vorname
FROM jumi_buchung
WHERE tid = $termin
ORDER BY nachname, vorname";
$result3 = $db->query($query3) or die("Cannot execute query3");
while ($row3 = $result3->fetch_array()) {
$table_data1[] = $row3;
}
$smarty->assign('table_data1', $table_data1);
## Fehlerhandling
$error1 = $_GET['error1'];
$smarty->assign('verwaltung_value_nachname1', $_SESSION["nachname1"]);
$smarty->assign('verwaltung_value_vorname1', $_SESSION["vorname1"]);
$smarty->assign('verwaltung_value_nachname2', $_SESSION["nachname2"]);
$smarty->assign('verwaltung_value_vorname2', $_SESSION["vorname2"]);
$smarty->assign('verwaltung_value_nachname3', $_SESSION["nachname3"]);
$smarty->assign('verwaltung_value_vorname3', $_SESSION["vorname3"]);
$smarty->assign('verwaltung_value_nachname4', $_SESSION["nachname4"]);
$smarty->assign('verwaltung_value_vorname4', $_SESSION["vorname4"]);
$smarty->assign('verwaltung_value_nachname5', $_SESSION["nachname5"]);
$smarty->assign('verwaltung_value_mail', $_SESSION["mail"]);
$smarty->assign('verwaltung_value_vorname5', $_SESSION["vorname5"]);
if($error1 == 1){
$smarty->assign('verwaltung_error', 1);
$smarty->assign('verwaltung_error_text', 'Sie müssen zumindest eine Person erfassen.');
}
}
if ($action == 'del') {
$bid = $_POST['del'];
$termin = $_SESSION["termin"];
$_SESSION["sabmelde_bid"] = $bid;
$result = $db->query("SELECT count(*) Anz
FROM jumi_buchung
WHERE bid = $bid
AND tid = $termin");
$row = $result->fetch_array();
if($row['Anz'] == 0 or $row['Anz'] >1){
$smarty->assign('abmelde_error', 1);
}else{
$smarty->assign('abmelde_error', 0);
$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();
$smarty->assign('abmelde_termin', $row_termin['beginn']);
$_SESSION["sabmelde_termin"] = $row_termin['beginn'];
$result_name = $db->query("SELECT nachname, vorname
FROM jumi_buchung
WHERE bid = $bid");
$row_name = $result_name->fetch_array();
$smarty->assign('abmelde_vorname', $row_name['vorname']);
$smarty->assign('abmelde_nachname', $row_name['nachname']);
$_SESSION["sabmelde_vorname"] = $row_name['vorname'];
$_SESSION["sabmelde_nachname"] = $row_name['nachname'];
}
}
if ($action == 'del2') {
$bid = $_SESSION["sabmelde_bid"];
$antwort = $_GET['antwort'];
$termin = $_SESSION["sabmelde_termin"];
$tid = $_SESSION["termin"];
$vorname = $_SESSION["sabmelde_vorname"];
$nachname = $_SESSION["sabmelde_nachname"];
# Platz herausfinden, für automatischen reload
$result_name = $db->query("SELECT concat(reihe,platz) iframe
FROM jumi_buchung
WHERE bid = $bid
AND vorname = '$vorname'
AND nachname = '$nachname'");
$row_name = $result_name->fetch_array();
if($row_name['iframe'] == ''){
$iframe = "unzugeordnet";
}else{
$iframe = $row_name['iframe'];
}
$smarty->assign('iframe', "$iframe");
if($antwort == 'Y'){
$sql1 = $db->query("DELETE FROM jumi_buchung WHERE bid = $bid");
$ausgabe = "Sie haben $vorname $nachname vom Gottesdienst am $termin Uhr abgemeldet";
}else{
$ausgabe = "Sie haben $vorname $nachname vom Gottesdienst am $termin Uhr <b>NICHT</b> abgemeldet";
}
echo "<meta http-equiv=\"refresh\" content=\"2; URL=?tid=$tid\">";
$smarty->assign('abmelde_ausgabe', $ausgabe);
}
if ($action == 'save') {
if(isset($_POST['nachname1'])){
$nachname1 = trim($_POST['nachname1']);
}else{
$nachname1 = $_SESSION["nachname1"];
}
if(isset($_POST['vorname1'])){
$vorname1 = trim($_POST['vorname1']);
}else{
$vorname1 = $_SESSION["vorname1"];
}
if(isset($_POST['nachname2'])){
$nachname2 = trim($_POST['nachname2']);
}else{
$nachname2 = $_SESSION["nachname2"];
}
if(isset($_POST['vorname2'])){
$vorname2 = trim($_POST['vorname2']);
}else{
$vorname2 = $_SESSION["vorname2"];
}
if(isset($_POST['nachname3'])){
$nachname3 = trim($_POST['nachname3']);
}else{
$nachname3 = $_SESSION["nachname3"];
}
if(isset($_POST['vorname3'])){
$vorname3 = trim($_POST['vorname3']);
}else{
$vorname3 = $_SESSION["vorname3"];
}
if(isset($_POST['nachname4'])){
$nachname4 = trim($_POST['nachname4']);
}else{
$nachname4 = $_SESSION["nachname4"];
}
if(isset($_POST['vorname4'])){
$vorname4 = trim($_POST['vorname4']);
}else{
$vorname4 = $_SESSION["vorname4"];
}
if(isset($_POST['nachname5'])){
$nachname5 = trim($_POST['nachname5']);
}else{
$nachname5 = $_SESSION["nachname5"];
}
if(isset($_POST['vorname5'])){
$vorname5 = trim($_POST['vorname5']);
}else{
$vorname5 = $_SESSION["vorname5"];
}
if(isset($_POST['mail'])){
$mail = trim($_POST['mail']);
}else{
$mail = $_SESSION["mail"];
}
$_SESSION["nachname1"] = $nachname1;
$_SESSION["vorname1"] = $vorname1;
$_SESSION["nachname2"] = $nachname2;
$_SESSION["vorname2"] = $vorname2;
$_SESSION["nachname3"] = $nachname3;
$_SESSION["vorname3"] = $vorname3;
$_SESSION["nachname4"] = $nachname4;
$_SESSION["vorname4"] = $vorname4;
$_SESSION["nachname5"] = $nachname5;
$_SESSION["vorname5"] = $vorname5;
$_SESSION["mail"] = $mail;
$termin = $_SESSION["termin"];
if ($nachname1 == '' AND $nachname2 == '' AND $nachname3 == '' AND $nachname4 == '' AND $nachname5 == '') {
$error1=1;
$error=true;
}
if(isset($error)){
echo "<meta http-equiv=\"refresh\" content=\"0; URL=?&error1=$error1&tid=$termin\">";
exit;
}
if(isset($termin)){
$lfd_haushalt = get_lfd_haushalt($termin);
$datum=date("Y-m-d H:i:s");
if($nachname1 != ''){
$sitzplatz1 = get_sitzplatz($nachname1, $vorname1);
$split1 = explode("|", $sitzplatz1);
$reihe1 = $split1[0];
$platz1 = $split1[1];
$sql1 = $db->query("insert into jumi_buchung (tid, nachname, vorname, reihe, platz, mail, lfd_haushalt, save_date) VALUES('$termin', '$nachname1', '$vorname1', '$reihe1', '$platz1', '$mail', '$lfd_haushalt', '$datum')");
$bid1 = $db->insert_id;
$crypt1 = cryption("$bid1|$nachname1|$termin", 'e');
if($reihe1!=''){
$smarty->assign('iframe1', "$reihe1$platz1");
}else{
$smarty->assign('iframe1', "unzugeordnet");
}
}
if($nachname2 != ''){
$sitzplatz2 = get_sitzplatz($nachname2, $vorname2);
$split2 = explode("|", $sitzplatz2);
$reihe2 = $split2[0];
$platz2 = $split2[1];
$sql1 = $db->query("insert into jumi_buchung (tid, nachname, vorname, reihe, platz, mail, lfd_haushalt, save_date) VALUES('$termin', '$nachname2', '$vorname2', '$reihe2', '$platz2', '$mail', '$lfd_haushalt', '$datum')");
$bid2 = $db->insert_id;
$crypt2 = cryption("$bid2|$nachname2|$termin", 'e');
if($reihe2!=''){
$smarty->assign('iframe2', "$reihe2$platz2");
}else{
$smarty->assign('iframe2', "unzugeordnet");
}
}
if($nachname3 != ''){
$sitzplatz3 = get_sitzplatz($nachname3, $vorname3);
$split3 = explode("|", $sitzplatz3);
$reihe3 = $split3[0];
$platz3 = $split3[1];
$sql1 = $db->query("insert into jumi_buchung (tid, nachname, vorname, reihe, platz, mail, lfd_haushalt, save_date) VALUES('$termin', '$nachname3', '$vorname3', '$reihe3', '$platz3', '$mail', '$lfd_haushalt', '$datum')");
$bid3 = $db->insert_id;
$crypt3 = cryption("$bid3|$nachname3|$termin", 'e');
if($reihe3!=''){
$smarty->assign('iframe3', "$reihe3$platz3");
}else{
$smarty->assign('iframe3', "unzugeordnet");
}
}
if($nachname4 != ''){
$sitzplatz4 = get_sitzplatz($nachname4, $vorname4);
$split4 = explode("|", $sitzplatz4);
$reihe4 = $split4[0];
$platz4 = $split4[1];
$sql1 = $db->query("insert into jumi_buchung (tid, nachname, vorname, reihe, platz, mail, lfd_haushalt, save_date) VALUES('$termin', '$nachname4', '$vorname4', '$reihe4', '$platz4', '$mail', '$lfd_haushalt', '$datum')");
$bid4 = $db->insert_id;
$crypt4 = cryption("$bid4|$nachname4|$termin", 'e');
if($reihe4!=''){
$smarty->assign('iframe4', "$reihe4$platz4");
}else{
$smarty->assign('iframe4', "unzugeordnet");
}
}
if($nachname5 != ''){
$sitzplatz5 = get_sitzplatz($nachname5, $vorname5);
$split5 = explode("|", $sitzplatz5);
$reihe5 = $split5[0];
$platz5 = $split5[1];
$sql1 = $db->query("insert into jumi_buchung (tid, nachname, vorname, reihe, platz, mail, lfd_haushalt, save_date) VALUES('$termin', '$nachname5', '$vorname5', '$reihe5', '$platz5', '$mail', '$lfd_haushalt', '$datum')");
$bid5 = $db->insert_id;
$crypt5 = cryption("$bid5|$nachname5|$termin", 'e');
if($reihe5!=''){
$smarty->assign('iframe5', "$reihe5$platz5");
}else{
$smarty->assign('iframe5', "unzugeordnet");
}
}
#Anzahl der gemeldeten Haushalte überschritten?
kritische_haushalte($termin);
}
if(isset($_SESSION["mail"]) AND $mail !=''){
$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 = "$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'>
&nbsp;
</td>
<td valign='top'>
&nbsp;
</td>
<td valign='top'>
&nbsp;
</td>
</tr>
";
if($nachname1 != ''){
$text .="
<tr>
<td valign='top' width='100'>
<font face='Arial' size='2'>
<b>Person 1:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$nachname1, $vorname1
</font>
</td>
<td valign='top'>
<a href='http://gd.nak-btb.de/abmeldung.php?key=$crypt1'>Abmeldung</a>
</td>
</tr>";
}
if($nachname2 != ''){
$text .="
<tr>
<td valign='top' width='100'>
<font face='Arial' size='2'>
<b>Person 2:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$nachname2, $vorname2
</font>
</td>
<td valign='top'>
<a href='http://gd.nak-btb.de/abmeldung.php?key=$crypt2'>Abmeldung</a>
</td>
</tr>";
}
if($nachname3 != ''){
$text .="
<tr>
<td valign='top' width='100'>
<font face='Arial' size='2'>
<b>Person 3:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$nachname3, $vorname3
</font>
</td>
<td valign='top'>
<a href='http://gd.nak-btb.de/abmeldung.php?key=$crypt3'>Abmeldung</a>
</td>
</tr>";
}
if($nachname4 != ''){
$text .="
<tr>
<td valign='top' width='100'>
<font face='Arial' size='2'>
<b>Person 4:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$nachname4, $vorname4
</font>
</td>
<td valign='top'>
<a href='http://gd.nak-btb.de/abmeldung.php?key=$crypt4'>Abmeldung</a>
</td>
</tr>";
}
if($nachname5 != ''){
$text .="
<tr>
<td valign='top' width='100'>
<font face='Arial' size='2'>
<b>Person 5:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$nachname5, $vorname5
</font>
</td>
<td valign='top'>
<a href='http://gd.nak-btb.de/abmeldung.php?key=$crypt5'>Abmeldung</a>
</td>
</tr>";
}
$text .="
</table>
<br>
Link zur Registrierung: <a href=\"http://gd.nak-btb.de\">Registrierung zum Gottesdienst</a>
<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=iso-8859-1\n";
$headers .= "Content-type: text/html; charset=utf-8\n";
$headers .= "From: Gottesdienstregistrierung <service@nak-btb.de>\n";
#$headers .= "Bcc: \n";
$return = @mail($empfaenger, $betreff, $text, $headers);
}
echo "<meta http-equiv=\"refresh\" content=\"2; URL=?tid=$termin\">";
}
if ($action == 'sperrung') {
# 0 --> öffnen
# 1 --> sperren
$aktion = $_GET['aktion'];
$termin = $_SESSION["termin"];
$datum = date("Y-m-d H:i:s");
if($aktion == 0){
$update = $db->query("UPDATE jumi_termine
SET loginstop ='0000-00-00 00:00:00'
WHERE tid = $termin
");
}
if($aktion == 1){
$update = $db->query("UPDATE jumi_termine
SET loginstop ='$datum'
WHERE tid = $termin
");
}
echo "<meta http-equiv=\"refresh\" content=\"0; URL=?tid=$termin\">";
}
if ($action == 'resetstandard') {
$termin = $_SESSION["termin"];
# Alle löschen zum Termin, die einen Standardplatz haben laut Liste
$update = $db->query("UPDATE jumi_buchung
SET reihe='$reihe'
,platz='$platz'
WHERE tid=$termin
");
$query3 = "SELECT bid, nachname, vorname
FROM jumi_buchung
WHERE tid = $termin
ORDER BY nachname, vorname";
$result3 = $db->query($query3) or die("Cannot execute query3");
while ($row3 = $result3->fetch_array()) {
$reihe = "";
$platz = "";
$vorname = $row3['vorname'];
$nachname = $row3['nachname'];
$sitzplatz = get_sitzplatz($nachname, $vorname);
$split = explode("|", $sitzplatz);
$reihe = $split[0];
$platz = $split[1];
if ($reihe != ''){
$update = $db->query("UPDATE jumi_buchung
SET reihe='$reihe'
,platz='$platz'
WHERE bid = $row3[bid]
AND tid=$termin
");
}
}
# Refresh der Ansicht
echo "<script>window.parent.location.href = \"sitzplatz.php?action=edit&tid=$termin\";</script>";
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>