diff --git a/media/beutelsbach.jpg b/media/beutelsbach.jpg deleted file mode 100644 index aa77016..0000000 Binary files a/media/beutelsbach.jpg and /dev/null differ diff --git a/media/jumi.png b/media/jumi.png new file mode 100644 index 0000000..c7033f3 Binary files /dev/null and b/media/jumi.png differ diff --git a/survey/index.php b/survey/index.php index 41b8512..e426ff3 100644 --- a/survey/index.php +++ b/survey/index.php @@ -1,182 +1,257 @@ query("SELECT multiple - FROM jumi_umfragen_fragen - WHERE ufid = $frage;"); - $row_multiple = $result_multiple->fetch_array(); - if($row_multiple['multiple'] == '0'){ -# echo "Antwort: $_POST[antwort]
"; - } - if($row_multiple['multiple'] == '1'){ - $query = "SELECT uaid - FROM jumi_umfragen_antworten - WHERE ufid = $frage - ORDER BY ufid ASC"; - $result = $db->query( $query); - while ($row = $result->fetch_array()){ - $antwort = $_POST['antwort_'.$row['uaid']]; - if($antwort != ''){ -# echo "Antwort: $antwort
"; - } - } +if ($action == '') { + $db = dbconnect(); + $datum=date("Y-m-d H:i:s"); + $query_umid = $db->query("SELECT max(umid) umid + FROM jumi_umfragen + WHERE datum_von < '$datum' + AND datum_bis > '$datum' + "); + $row_umid = $query_umid->fetch_array(); + if($row_umid['umid'] == NULL ){ + $smarty->assign('umfrage_anzeigen', "0"); + }else{ + $smarty->assign('umfrage_anzeigen', "1"); + $smarty->assign('umfrage_umid', "$row_umid[umid]"); } + } - - - - $rowperpage = 1; - $row1234 = 0; - - // Previous Button - if(isset($_POST['but_prev'])){ - $row1234 = $_POST['row']; - $row1234 -= $rowperpage; - if( $row1234 < 0 ){ - $row1234 = 0; +if ($action == 'umfrage') { + $db = dbconnect(); + + + // Datendefinition + + $limit = 1; // Fragen pro Seite + + ############################################################################# + if (isset($_POST['umid'])) { + $umid = $_POST['umid']; + $_SESSION['umid'] = $umid; + }else{ + $umid = $_SESSION['umid']; + } + ####################### Abfrage, ob Umfrage schon teilgenommen ############## + + ####################### Speichern der Antworten ############################# + if (isset($_POST['but_next'])) { + $frage = $_POST['save']; + $session = session_id(); + $ip = $_SERVER["REMOTE_ADDR"]; + + if (!isset($_POST['freitext'])) { + $result_multiple = $db->query("SELECT multiple + FROM jumi_umfragen_fragen + WHERE ufid = $frage"); + $row_multiple = $result_multiple->fetch_array(); + + $del1 = $db->query("DELETE FROM jumi_umfragen_ergebnisse WHERE ufid = $frage AND ip='$ip' AND session='$session'"); + + if ($row_multiple['multiple'] == '0') { + # echo "Antwort: $_POST[antwort]
"; + $antwort = $_POST['antwort']; + $sql1 = $db->query("INSERT INTO jumi_umfragen_ergebnisse (ip, session, ufid, uaid) + VALUES ('$ip', '$session', '$frage', '$antwort') + "); + + } + if ($row_multiple['multiple'] == '1') { + $query = "SELECT uaid + FROM jumi_umfragen_antworten + WHERE ufid = $frage + ORDER BY ufid ASC"; + $result = $db->query($query); + while ($row = $result->fetch_array()) { + $antwort = $_POST['antwort_' . $row['uaid']]; + if ($antwort != '') { + # echo "Antwort: $antwort
"; + $sql1 = $db->query("INSERT INTO jumi_umfragen_ergebnisse (ip, session, ufid, uaid) + VALUES ('$ip', '$session', '$frage', '$antwort') + "); + } } } - - // Next Button - if(isset($_POST['but_next'])){ - $row1234 = $_POST['row']; - $allcount = $_POST['allcount']; - - $val = $row1234 + $rowperpage; - if( $val < $allcount ){ - $row1234 = $val; - } - } - - -$smarty->assign('pagination_row', $row1234); - - - - - -####################### Ausgabe der Fragen ##################################### - - $last = floor($total/$limit)*$limit; //Sprungziel zur letzten Seite BSP abrunden(1954/13)*13 ==> 150*13=1950 Sprungmarke auf Zeile 1950, 4 DS werden angezeigt - $akt = round((($start-$limit)/$limit+2),0); - - $result0 = $db->query("SELECT headline + } + if (isset($_POST['freitext'])) { + $freitext = $_POST['freitext']; + $del1 = $db->query("DELETE FROM jumi_umfragen_erg_freitext WHERE ip='$ip' AND session='$session'"); + $sql1 = $db->query("INSERT INTO jumi_umfragen_erg_freitext (umid, ip, session, freitext) + VALUES ('$umid', '$ip', '$session', '$freitext') + "); + } + + if ($_POST['exit'] == '1') { + $smarty->assign('umfrage_showende', "1"); + } + } + + $rowperpage = 1; + $row_page = 0; + + // Previous Button + if (isset($_POST['but_prev'])) { + + $row_page = $_POST['row']; + $row_page -= $rowperpage; + if ($row_page < 0) { + $row_page = 0; + $smarty->assign('umfrage_start0', "2"); + + } else { + $smarty->assign('umfrage_start0', "1"); + + } + } + + // Next Button + if (isset($_POST['but_next'])) { + $row_page = $_POST['row']; + $allcount = $_POST['allcount']; + + $val = $row_page + $rowperpage; + if ($val < $allcount) { + $row_page = $val; + } + } + $smarty->assign('pagination_row', $row_page); + + ####################### Ausgabe der Fragen ##################################### + + # $last = floor($total/$limit)*$limit; //Sprungziel zur letzten Seite BSP abrunden(1954/13)*13 ==> 150*13=1950 Sprungmarke auf Zeile 1950, 4 DS werden angezeigt + $akt = round((($row_page - $limit) / $limit + 2), 0); + + $result0 = $db->query("SELECT headline, freitext FROM jumi_umfragen WHERE umid = $umid;"); - $row0 = $result0->fetch_array(); - $smarty->assign('umfrage_headline', $row0['headline']); - - $result = $db->query("SELECT count(*)-1 Anz_limit, round(100/count(*)*$akt,1) progress, count(*) total + $row0 = $result0->fetch_array(); + if ($row0['freitext'] == '0') { + $freitext = 0; + } else { + $freitext = 1; + } + $smarty->assign('umfrage_headline', $row0['headline']); + + $result = $db->query("SELECT count(*)-1 Anz_limit, round(100/(count(*)+$freitext)*$akt,1) progress, count(*) total FROM jumi_umfragen_fragen WHERE umid = $umid;"); - $row = $result->fetch_array(); - $smarty->assign('umfrage_progress', $row['progress']); - $allcount = $row['total']; - $smarty->assign('pagination_allcount', $allcount); - - #$show = ceil($total/$limit); //Seitenzahlen aufrunden - -if(isset($_POST['start'])){ -#echo "hier|$total|$limit|$start"; - $start = ($_POST['start'] >= $total) ? $total - $limit : $start; -}else{ - - $start = 0; -} - -#echo "$row[Anz_limit]
"; - -// Datenbankabfrage ausführen. -$query = "SELECT ufid, frage, multiple + $row = $result->fetch_array(); + $smarty->assign('umfrage_progress', $row['progress']); + + if ($row0['freitext'] == '0') { + $allcount = $row['total']; + } else { + $allcount = $row['total'] + $freitext; + } + + + $smarty->assign('pagination_allcount', $allcount); + + // Zurück- und Vorblättern Buttons + if ($row_page > 0) { + $smarty->assign('umfrage_start0', "1"); + } else { + $smarty->assign('umfrage_start0', "2"); + } + + if ($row_page + $limit < $allcount) { + $smarty->assign('umfrage_end0', "1"); + } else { + $smarty->assign('umfrage_end0', "2"); + } + + #echo "$row[Anz_limit]
"; + + // Datenbankabfrage ausführen. + $query = "SELECT ufid, frage, multiple FROM jumi_umfragen_fragen WHERE umid = 1 ORDER BY ufid ASC - LIMIT ".$row1234.",1"; -$result = $db->query( $query); - -// Ergebnisse lesen und an den Client ausgeben - -while ($row = $result->fetch_array()){ -$value2 = ''; - - $query2 = "SELECT uaid, antwort + LIMIT " . $row_page . ",1"; + $result = $db->query($query); + + # Letzte Frage ggf. Freitext, wenn Ergebnis der Abfrage 0 ist und Freitext=1 + if (mysqli_num_rows($result) == '0' AND $row0['freitext'] == '1') { + # Jetzt Freitext einblenden, auf letzter Seite + $smarty->assign('umfrage_showfreitext', "1"); + $result_antw = $db->query("SELECT freitext + FROM jumi_umfragen_erg_freitext + WHERE umid = $umid + AND ip = '$ip' + AND session = '$session'"); + $row_antw = $result_antw->fetch_array(); + $smarty->assign('umfrage_value_freitext', "$row_antw[freitext]"); + + } else { + $smarty->assign('umfrage_showfreitext', "0"); + } + + // Ergebnisse lesen und an den Client ausgeben + while ($row = $result->fetch_array()) { + $value2 = ''; + + $query2 = "SELECT uaid, antwort FROM jumi_umfragen_antworten WHERE ufid = $row[ufid] ORDER BY userorder ASC "; - - $result2 = $db->query( $query2) - or die ("Cannot execute query2"); - $ln2 = 0; - while ($row2 = $result2->fetch_array()){ - $inner1[$ln2]['uaid'] = $row2['uaid']; - $inner1[$ln2]['antwort'] = $row2['antwort']; - $value2 = $inner1; - $ln2++; - } - $row['inner'] = $value2; - - - $table_data[] = $row; -} -$smarty->assign('table_data', $table_data); - -#echo"
";
-#print_r($table_data);
-#echo"
"; - - // Zurück- und Vorblättern - if ($start > 0){ - $newStart = ($start - $limit < 0) ? 0 : ($start-$limit); // wenn $start-$limit kleiner 0 dann $newstart=0 sonst $start-$limit -echo "
1: ".$newStart; - $smarty->assign('umfrage_start0', "1"); - $smarty->assign('umfrage_start_newstart', "$newStart"); - }else{ - $smarty->assign('umfrage_start0', "2"); - } - - - if ($start + $limit < $total){ - $newStart = $start + $limit; -echo "
2: ".$newStart; - $smarty->assign('umfrage_end0', "1"); - $smarty->assign('umfrage_end_newstart', "$newStart"); - $smarty->assign('umfrage_end_last', "$last"); - }else{ - $smarty->assign('umfrage_end0', "2"); - } + + $result2 = $db->query($query2) or die("Cannot execute query2"); + $ln2 = 0; + while ($row2 = $result2->fetch_array()) { + $session = session_id(); + $ip = $_SERVER["REMOTE_ADDR"]; + + $result_antw = $db->query("SELECT count(*) Anz + FROM jumi_umfragen_ergebnisse + WHERE ufid = $row[ufid] + AND uaid = $row2[uaid] + AND ip = '$ip' + AND session = '$session'"); + $row_antw = $result_antw->fetch_array(); + if ($row_antw['Anz'] == '0') { + $selected = 0; + } else { + $selected = 1; + } + + $inner1[$ln2]['selected'] = $selected; + $inner1[$ln2]['uaid'] = $row2['uaid']; + $inner1[$ln2]['antwort'] = $row2['antwort']; + $value2 = $inner1; + $ln2++; + } + $row['inner'] = $value2; + + + $table_data[] = $row; + } + $smarty->assign('table_data', $table_data); + + #echo"
";
+    #print_r($table_data);
+    #echo"
"; + } $smarty->assign('action', "$action"); $smarty->display("modern/survey/$templatename"); -?> \ No newline at end of file +?> \ No newline at end of file diff --git a/templates/modern/survey/index.html b/templates/modern/survey/index.html index 6387953..794330b 100644 --- a/templates/modern/survey/index.html +++ b/templates/modern/survey/index.html @@ -1,3 +1,4 @@ +{if $action == ''} @@ -9,7 +10,58 @@ + + + +
+
+
+

JU & MI

+
+
+ {if $umfrage_anzeigen == '0'} +
+

+

Aktuell sind keine Umfragen verfügbar

+

+
+ {/if} + {if $umfrage_anzeigen == '1'} + + +
+ {/if} +
+
+ + +{/if} +{if $action == 'umfrage'} + + + + + + Umfrage + + + + + +
+
+
+

JU & MI

+
+
+ tpl_vars['umfrage_anzeigen']->value == '0') {?> +
+

+

Aktuell sind keine Umfragen verfügbar

+

+
+ + tpl_vars['umfrage_anzeigen']->value == '1') {?> + + + type="text/javascript"> + window.onload=function(){ + window.setTimeout(document.start.submit.bind(document.start), 5000); + }; + +> +
+ +
+
+ + +tpl_vars['action']->value == 'umfrage') {?> + + + + + + Umfrage + + +