diff --git a/config/datenbankanbindung.php b/config/datenbankanbindung.php index e618b28..4c2d11c 100644 --- a/config/datenbankanbindung.php +++ b/config/datenbankanbindung.php @@ -5,6 +5,7 @@ { $db = @new mysqli( 'localhost', 'root', '', 'survey' ); + $db->query("set sql_mode = 'ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'"); $db->set_charset('utf8mb4'); $db->query("SET NAMES 'utf8mb4'"); return $db; diff --git a/controller/admin_edit.php b/controller/admin_edit.php new file mode 100644 index 0000000..397f6a5 --- /dev/null +++ b/controller/admin_edit.php @@ -0,0 +1,26 @@ +query("DELETE FROM jumi_umfragen_erg_freitext WHERE umid = $umid"); + $stmt2 = $db->query("DELETE FROM jumi_umfragen_ende WHERE umid = $umid"); + $stmt4 = $db->query("DELETE FROM jumi_umfragen_ergebnisse WHERE ufid IN (SELECT ufid FROM jumi_umfragen_fragen WHERE umid = $umid)"); + $stmt4 = $db->query("DELETE FROM jumi_umfragen_antworten WHERE ufid IN (SELECT ufid FROM jumi_umfragen_fragen WHERE umid = $umid)"); + $stmt5 = $db->query("DELETE FROM jumi_umfragen_fragen WHERE umid = $umid"); + $stmt6 = $db->query("DELETE FROM jumi_umfragen WHERE umid = $umid"); + + + if ($stmt1 and $stmt2 and $stmt3 and $stmt4 and $stmt5 and $stmt6) { + echo "Success"; + } else { + echo "Nicht geklappt"; + } +} + + +?> \ No newline at end of file diff --git a/controller/admin_erfassen.php b/controller/admin_erfassen.php index c696ae7..38da457 100644 --- a/controller/admin_erfassen.php +++ b/controller/admin_erfassen.php @@ -130,9 +130,9 @@ if ($function == 'deleteQuestion') { if ($stmt1 and $stmt2) { - echo "DELETE FROM jumi_umfragen_antworten WHERE ufid = $id2 | DELETE FROM jumi_umfragen_fragen WHERE ufid = $id2"; + echo "Success"; } else { - echo "Nicht geklappt"; + echo "Error"; } } diff --git a/controller/admin_parameter.php b/controller/admin_parameter.php new file mode 100644 index 0000000..25aa7e9 --- /dev/null +++ b/controller/admin_parameter.php @@ -0,0 +1,37 @@ +query( $query2) + or die ("Cannot execute query2"); + + while ($row2 = $result2->fetch_array()){ + $pid = $row2['pid']; + $pid_value = $_POST[$pid]; + + + $sql1 = $db->query( "UPDATE jumi_parameter + SET wert = '$pid_value' + WHERE pid = $pid + " ); + } + + if(!$sql1){ + echo "Success"; + }else{ + echo "Error: PDATE jumi_parameter + SET wert = '$pid_value' + WHERE pid = $pid"; + } + + + +} + + +?> \ No newline at end of file diff --git a/dashboard/401.html b/dashboard/401.html deleted file mode 100644 index d733474..0000000 --- a/dashboard/401.html +++ /dev/null @@ -1,52 +0,0 @@ - - -
- - - - - -"; +# print_r($table_data); +# echo""; + + + $query3 = "SELECT freitext + FROM jumi_umfragen_erg_freitext + WHERE umid = $umid + ORDER BY uefid desc"; + $result3 = $db->query($query3); + + + // Ergebnisse lesen und an den Client ausgeben + while ($row3 = $result3->fetch_array()) { + $table_data3[] = $row3; + } + $smarty->assign('table_data3', $table_data3); + + +} + + +$smarty->assign('action', "$action"); +$smarty->display("modern/admin/$templatename"); +?> diff --git a/dashboard/survey_edit.php b/dashboard/survey_edit.php new file mode 100644 index 0000000..133dbfe --- /dev/null +++ b/dashboard/survey_edit.php @@ -0,0 +1,226 @@ +query($query1) or die("Cannot execute query1a"); + + while ($row1 = $result1->fetch_array()) { + $table_data1[] = $row1; + } + $smarty->assign('table_data1', $table_data1); + +} + + +if ($action == 'fragen') { + + $umid = $_SESSION["umfrageerf_umid"]; + + # Focus/Session setzen + $result = $db->query("SELECT count(*) Anz FROM jumi_umfragen_fragen WHERE umid='$umid'"); + $row = $result->fetch_array(); + # Wenn man bei mehreren Fragen eine Frage löscht ist Anz nicht 0 und der Focus sitzt bei Antwort + if ($umid == '' or $_GET['tabufid'] == "neuefrage" or $row['Anz'] == '0') { + $smarty->assign('umfrageerf_focus', "frage"); + unset($_SESSION["umfrageerf_ufid"]); + unset($_SESSION["umfrageerf_uaid"]); + } else { + $smarty->assign('umfrageerf_focus', "antwort"); + } + + + if (isset($_POST['datumvon']) and $_POST['datumvon'] != '') { + $datumvon = $_POST['datumvon']; + $_SESSION["umfrageerf_value_datumvon"] = $datumvon; + } else { + if ($_SESSION["umfrageerf_value_datumvon"] == '') { + echo ""; + } + $datumvon = $_SESSION["umfrageerf_value_datumvon"]; + } + + if (isset($_POST['zeitvon']) and $_POST['zeitvon'] != '') { + $zeitvon = $_POST['zeitvon']; + $_SESSION["umfrageerf_value_zeitvon"] = $zeitvon; + } else { + if ($_SESSION["umfrageerf_value_zeitvon"] == '') { + echo ""; + } + $zeitvon = $_SESSION["umfrageerf_value_zeitvon"]; + } + + if (isset($_POST['datumbis']) and $_POST['datumbis'] != '') { + $datumbis = $_POST['datumbis']; + $_SESSION["umfrageerf_value_datumbis"] = $datumbis; + } else { + if ($_SESSION["umfrageerf_value_datumbis"] == '') { + echo ""; + } + $datumbis = $_SESSION["umfrageerf_value_datumbis"]; + } + + if (isset($_POST['zeitbis']) and $_POST['zeitbis'] != '') { + $zeitbis = $_POST['zeitbis']; + $_SESSION["umfrageerf_value_zeitbis"] = $zeitbis; + } else { + if ($_SESSION["umfrageerf_value_zeitbis"] == '') { + echo ""; + } + $zeitbis = $_SESSION["umfrageerf_value_zeitbis"]; + } + + if (isset($_POST['headline']) and trim($_POST['headline']) != '') { + $headline = trim($_POST['headline']); + $_SESSION["umfrageerf_value_headline"] = $headline; + } else { + if ($_SESSION["umfrageerf_value_headline"] == '') { + echo ""; + } + $headline = $_SESSION["umfrageerf_value_headline"]; + } + + if(!isset($_GET['erfassen'])){ + if (isset($_POST['freitext']) and trim($_POST['freitext']) != '') { + $freitext = '1'; + $_SESSION["umfrageerf_value_freitext"] = $freitext; + }else{ + $freitext = '0'; + $_SESSION["umfrageerf_value_freitext"] = $freitext; + } + }else{ + $freitext = $_SESSION["umfrageerf_value_freitext"]; + } + + + $datumvon_form = preg_replace('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', '$3-$2-$1', $datumvon); + $datumbis_form = preg_replace('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', '$3-$2-$1', $datumbis); + $datum_von = $datumvon_form . " " . $zeitvon . ":00"; + $datum_bis = $datumbis_form . " " . $zeitbis . ":00"; + + function validateDate($date, $format = 'Y-m-d') + { + $d = DateTime::createFromFormat($format, $date); + return $d && $d->format($format) == $date; + } + + if (!validateDate($datumvon_form)) { + echo ""; + exit; + } + + if (!validateDate($datumbis_form)) { + echo ""; + exit; + } + + + if(!isset($_GET['erfassen'])){ + if ($umid == '') { + $datum = date("Y-m-d H:i:s"); + + $sql1 = $db->query("INSERT INTO jumi_umfragen ( datum_von + , datum_bis + , headline + , uid + , datum_erfasst + , freitext + ) + VALUES + ( '$datum_von' + , '$datum_bis' + , '$headline' + , '$uid' + , '$datum' + , '$freitext' + ) + "); + $umid = $db->insert_id; + $_SESSION["umfrageerf_umid"] = $umid; + }else{ + $update = $db->query("UPDATE jumi_umfragen + SET datum_von ='$datum_von' + ,datum_bis ='$datum_bis' + ,headline = '$headline' + ,freitext = '$freitext' + WHERE umid = $umid + "); + + } + } + + if (isset($_GET['tabufid']) and $_GET['tabufid'] != '') { + if ($_GET['tabufid'] == "neuefrage") { + $_SESSION["umfrageerf_ufid"] = ""; + } else { + $_SESSION["umfrageerf_ufid"] = $_GET['tabufid']; + } + } + $ufid = $_SESSION["umfrageerf_ufid"]; + if ($ufid != '') { + $result_frage = $db->query("SELECT frage, multiple + FROM jumi_umfragen_fragen + WHERE ufid = $ufid"); + $row_frage = $result_frage->fetch_array(); + $smarty->assign('umfrageerf_value_frage', htmlspecialchars($row_frage['frage'])); + $smarty->assign('umfrageerf_value_multiple', $row_frage['multiple']); + $smarty->assign('umfrageerf_value_ufid', $ufid); + } + + # Gespeicherte Werte + if ($umid != '') { + $query1 = "SELECT ufid, frage + FROM jumi_umfragen_fragen + WHERE umid=$umid + ORDER BY ufid ASC"; + + $result1 = $db->query($query1) or die("Cannot execute query1a"); + + while ($row1 = $result1->fetch_array()) { + $table_data1[] = $row1; + } + } + + $smarty->assign('table_data1', $table_data1); + if ($ufid != '') { + $smarty->assign('umfrageerf_gesp_werte_value_ufid2', "$ufid"); + $query2 = "SELECT uaid, antwort + FROM jumi_umfragen_antworten + WHERE ufid=$ufid + ORDER BY userorder ASC, uaid ASC"; + + $result2 = $db->query($query2) or die("Cannot execute query2"); + $anzahl = $result2->num_rows; + $smarty->assign('table_data2_anz', $anzahl); + while ($row2 = $result2->fetch_array()) { + $table_data2[] = $row2; + } + $smarty->assign('table_data2', $table_data2); + } +} + + + +$smarty->assign('action', "$action"); +$smarty->display("$template/dashboard/$templatename"); + +?> diff --git a/dashboard/survey_erfassen.php b/dashboard/survey_erfassen.php index 4fda770..7bf0df8 100644 --- a/dashboard/survey_erfassen.php +++ b/dashboard/survey_erfassen.php @@ -27,6 +27,7 @@ if ($action == '') { # } # # # -- Fehlermeldungen -- # + if($_GET['new'] == 1){ unset($_SESSION["umfrageerf_value_datumvon"]); unset($_SESSION["umfrageerf_value_zeitvon"]); @@ -41,6 +42,31 @@ if ($action == '') { # $_SESSION["umfrageerf_new"] = 1; }else{ + if($_GET['edit'] == 1){ + $umid = $_GET['umid']; + $_SESSION["umfrageerf_umid"] = $umid; + $result_edit = $db->query("SELECT date_format(datum_von, '%d.%m.%Y') datum_von + , date_format(datum_von, '%H:%i') zeit_von + , date_format(datum_bis, '%d.%m.%Y') datum_bis + , date_format(datum_bis, '%H:%i') zeit_bis + , headline + , freitext + FROM jumi_umfragen + WHERE umid = $umid"); + $row_edit = $result_edit->fetch_array(); + $_SESSION["umfrageerf_value_datumvon"] = $row_edit['datum_von']; + $_SESSION["umfrageerf_value_zeitvon"] = $row_edit['zeit_von']; + $_SESSION["umfrageerf_value_datumbis"] = $row_edit['datum_bis']; + $_SESSION["umfrageerf_value_zeitbis"] = $row_edit['zeit_bis']; + $_SESSION["umfrageerf_value_headline"] = $row_edit['headline']; + $_SESSION["umfrageerf_value_freitext"] = $row_edit['freitext']; + # Erste Frage selektieren, damit der Reiter für die Frage gleich aktiv ist + $result_q1 = $db->query("SELECT min(ufid) ufid + FROM jumi_umfragen_fragen + WHERE umid = $umid"); + $row_q1 = $result_q1->fetch_array(); + $_SESSION["umfrageerf_ufid"] = $row_q1['ufid']; + } $smarty->assign('umfrageerf_value_datumvon', $_SESSION["umfrageerf_value_datumvon"]); $smarty->assign('umfrageerf_value_zeitvon', $_SESSION["umfrageerf_value_zeitvon"]); $smarty->assign('umfrageerf_value_datumbis', $_SESSION["umfrageerf_value_datumbis"]); @@ -106,18 +132,18 @@ if ($action == '') { if ($action == 'fragen') { $umid = $_SESSION["umfrageerf_umid"]; - + # Focus/Session setzen $result = $db->query("SELECT count(*) Anz FROM jumi_umfragen_fragen WHERE umid='$umid'"); $row = $result->fetch_array(); # Wenn man bei mehreren Fragen eine Frage löscht ist Anz nicht 0 und der Focus sitzt bei Antwort - if ($umid == '' or $_GET['tabufid'] == "neuefrage" or $row['Anz'] == '0') { - $smarty->assign('umfrageerf_focus', "frage"); - unset($_SESSION["umfrageerf_ufid"]); - unset($_SESSION["umfrageerf_uaid"]); - } else { - $smarty->assign('umfrageerf_focus', "antwort"); - } +# if ($umid == '' or $_GET['tabufid'] == "neuefrage" or $row['Anz'] == '0') { +# $smarty->assign('umfrageerf_focus', "frage"); +# unset($_SESSION["umfrageerf_ufid"]); +# unset($_SESSION["umfrageerf_uaid"]); +# } else { +# $smarty->assign('umfrageerf_focus', "antwort"); +# } if (isset($_POST['datumvon']) and $_POST['datumvon'] != '') { @@ -239,14 +265,18 @@ if ($action == 'fragen') { } } + if (isset($_GET['tabufid']) and $_GET['tabufid'] != '') { + if ($_GET['tabufid'] == "neuefrage") { $_SESSION["umfrageerf_ufid"] = ""; } else { $_SESSION["umfrageerf_ufid"] = $_GET['tabufid']; + } } $ufid = $_SESSION["umfrageerf_ufid"]; + if ($ufid != '') { $result_frage = $db->query("SELECT frage, multiple FROM jumi_umfragen_fragen @@ -259,11 +289,12 @@ if ($action == 'fragen') { # Gespeicherte Werte if ($umid != '') { + $query1 = "SELECT ufid, frage FROM jumi_umfragen_fragen WHERE umid=$umid ORDER BY ufid ASC"; - + $result1 = $db->query($query1) or die("Cannot execute query1a"); while ($row1 = $result1->fetch_array()) { @@ -275,10 +306,9 @@ if ($action == 'fragen') { if ($ufid != '') { $smarty->assign('umfrageerf_gesp_werte_value_ufid2', "$ufid"); $query2 = "SELECT uaid, antwort - FROM jumi_umfragen_antworten - WHERE ufid=$ufid - ORDER BY userorder ASC, uaid ASC"; - + FROM jumi_umfragen_antworten + WHERE ufid=$ufid + ORDER BY userorder ASC, uaid ASC"; $result2 = $db->query($query2) or die("Cannot execute query2"); $anzahl = $result2->num_rows; $smarty->assign('table_data2_anz', $anzahl); diff --git a/js/components/admin_edit.js b/js/components/admin_edit.js new file mode 100644 index 0000000..a4f341a --- /dev/null +++ b/js/components/admin_edit.js @@ -0,0 +1,20 @@ +function onClickDeleteSurvey(id) { + r = confirm('Gesamte Umfrage löschen?'); + if (r) { + $.ajax({ + type: 'POST', + url: '../controller/admin_edit.php', + data: { + 'function': 'deleteSurvey', + 'id': id + }, + success: function(result) { + // document.getElementById("del").innerHTML = "entfernt"; + //Text einblenden geht nicht, da ein Refresh gemacht wird. Dann sieht man den Text nicht + $(document).ajaxStop(function(){ + window.location = "?"; + }); + } + }); + } +} \ No newline at end of file diff --git a/js/components/admin_parameter.js b/js/components/admin_parameter.js new file mode 100644 index 0000000..1b74ed9 --- /dev/null +++ b/js/components/admin_parameter.js @@ -0,0 +1,17 @@ +function onClickSaveParameter() { + $.ajax({ + type: 'POST', + url: '../controller/admin_parameter.php', + data: { + 'function': 'saveParameter' + }, + success: function(result) { + alert(result); + // document.getElementById("del").innerHTML = "entfernt"; + //Text einblenden geht nicht, da ein Refresh gemacht wird. Dann sieht man den Text nicht + $(document).ajaxStop(function(){ + window.location = "?"; + }); + } + }); +} \ No newline at end of file diff --git a/templates/modern/abmeldung.html b/templates/modern/abmeldung.html deleted file mode 100644 index bb18531..0000000 --- a/templates/modern/abmeldung.html +++ /dev/null @@ -1,243 +0,0 @@ - -{if $action == ''} - - - - - - -
- - | -
-
-
-
- {if $abmelde_error == 1}
-
- Fehler bei der Abmeldung
- {/if}
- {if $abmelde_error == 0}
- Abmeldung vom Gottesdienst am {$abmelde_termin} Uhr
- {/if}
-
-
- - {if $index_error == '1'} -
- {/if} -
|
- - - | -
- - | -
-
-
-
-
- Abmeldung beendet
-
-
- - {if $save_error == '1'} -
- {else} - - -
- - {/if} - |
- - - | -