first commit

This commit is contained in:
aschwarz 2023-03-14 14:47:50 +01:00
commit 062b2dfae8
4752 changed files with 505842 additions and 0 deletions

646
2022-01-12_index.php Normal file
View File

@ -0,0 +1,646 @@
<?php
if(!isset($_SESSION)) { session_start(); }
include_once 'classes/TestProjektSmarty.class.php';
require_once("config.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("func_doppelanmelder.php");
require_once("config/func_cryption.php");
require_once("func_generate_qr_by_name.php");
$smarty = new Smarty();
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
require_once "language/german.inc.php";
$action = $_GET['action'];
if ($action == '') {
}
if ($action == 'terminwahl') {
# Gespeicherte Termine
$anmeldestopp = get_parameter(3);
$gesperrt = get_parameter(4);
$query1 = "SELECT tid, date_format(datum, '%d.%m.%Y') datum, date_format(datum, '%H:%i') zeit, hinweis, loginstop, date_format(DATE_SUB(datum, INTERVAL $anmeldestopp HOUR), '%Y%m%d%H%i%s') Anmeldestopp
FROM gd_termine
WHERE datum > now()
ORDER BY date_format(datum, '%Y%m%d') ASC";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
$query_anzgesp = $db->query("SELECT count(distinct lfd_haushalt) Anz
FROM gd_buchung
WHERE tid = $row1[tid]
");
$row_anzgesp = $query_anzgesp->fetch_array();
#04.07.2021 | 1 | 0
#11.07.2021 | 1 | 2
#18.07.2021 | 1 | 3
#25.07.2021 | 1 | 4
// Überprüfung, ob die Anmeldefrist überschritten ist
$heute = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y")); // heutiges Datum
$heute_format = date("YmdHis", $heute); // ISO-8601 Format wie in der Datenbank: Formatierung f&uuml;r Vergleiche erforderlich
$a = strtotime ($heute_format); //Umrechnung des Fristgrenztages in eine Zahl
$b = strtotime ($row1['Anmeldestopp']); // Umrechnung des Enddatums in eine Zahl
#echo "$row1[datum] | $a | $b<br>";
if(($row_anzgesp['Anz'] >= $gesperrt) or ($row1['loginstop'] != '0000-00-00 00:00:00') or ($b<=$a)){
$hinweis_gepserrt =1;
}else{
$hinweis_gepserrt =0;
}
if(!isset($zaehler) or $zaehler == 1){
$zaehler = 0;
}else{
$zaehler = 1;
}
$row1['hinweis_gepserrt'] = $hinweis_gepserrt;
$row1['zaehler'] = $zaehler;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
#
for($i=0;$i<count($_SESSION["termin"]);$i++){
$smarty->assign('checked_'.$_SESSION["termin"][$i], "1");
}
#Session wird zurückgesetzt, da Sie nach dem Auslesen wieder durch POST gesetzt wird
unset($_SESSION["termin"]);
#echo "<pre>";
#print_r($table_data1);
#echo "</pre>";
## Fehlerhandling
$error1 = $_GET['error1'];
if($error1 == 1){
$smarty->assign('termin_error', 1);
if($error1 == 1){
$smarty->assign('termin_error_text', 'Sie müssen einen Termin auswählen für den nächsten Schritt');
}
}
}
if ($action == 'hausstand') {
if(isset($_POST["termin"])){
$termin = $_POST["termin"];
$_SESSION["termin"] = $termin;
}else{
if(isset($_SESSION["termin"])){
$termin = $_SESSION["termin"];
}else{
$error1=1;
$error=true;
}
}
if(isset($error)){
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=terminwahl&error1=$error1\">";
exit;
}
$smarty->assign('hausstand_value_nachname1', $_SESSION["nachname1"]);
$smarty->assign('hausstand_value_vorname1', $_SESSION["vorname1"]);
$smarty->assign('hausstand_value_nachname2', $_SESSION["nachname2"]);
$smarty->assign('hausstand_value_vorname2', $_SESSION["vorname2"]);
$smarty->assign('hausstand_value_nachname3', $_SESSION["nachname3"]);
$smarty->assign('hausstand_value_vorname3', $_SESSION["vorname3"]);
$smarty->assign('hausstand_value_nachname4', $_SESSION["nachname4"]);
$smarty->assign('hausstand_value_vorname4', $_SESSION["vorname4"]);
$smarty->assign('hausstand_value_nachname5', $_SESSION["nachname5"]);
$smarty->assign('hausstand_value_mail', $_SESSION["mail"]);
$smarty->assign('hausstand_value_vorname5', $_SESSION["vorname5"]);
## Fehlerhandling
$error1 = $_GET['error1'];
if($error1 == 1){
$smarty->assign('hausstand_error', 1);
if($error1 == 1){
$smarty->assign('hausstand_error_text', 'Sie müssen zumindest eine Person erfassen.');
}
}
}
if ($action == 'overview') {
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['mail'])){
$mail = trim($_POST['mail']);
}else{
$mail = $_SESSION["mail"];
}
if(isset($_POST['vorname5'])){
$vorname5 = trim($_POST['vorname5']);
}else{
$vorname5 = $_SESSION["vorname5"];
}
$_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;
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=" . $_SERVER['PHP_SELF'] . "?action=hausstand&error1=$error1\">";
exit;
}
for($i=0;$i<count($_SESSION["termin"]);$i++){
$termin = $_SESSION["termin"][$i];
$query_termin = $db->query("SELECT date_format(datum, '%d.%m.%Y - %H:%i') beginn, hinweis
FROM gd_termine
WHERE tid = $termin
LIMIT 1
");
$row_termin = $query_termin->fetch_array();
$row1['beginn'] = $row_termin['beginn'];
$row1['hinweis'] = $row_termin['hinweis'];
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
$smarty->assign('overview_value_beginn', $row_termin["beginn"]);
$smarty->assign('overview_value_hinweis', $row_termin["hinweis"]);
$smarty->assign('overview_value_nachname1', $_SESSION["nachname1"]);
$smarty->assign('overview_value_vorname1', $_SESSION["vorname1"]);
$smarty->assign('overview_value_nachname2', $_SESSION["nachname2"]);
$smarty->assign('overview_value_vorname2', $_SESSION["vorname2"]);
$smarty->assign('overview_value_nachname3', $_SESSION["nachname3"]);
$smarty->assign('overview_value_vorname3', $_SESSION["vorname3"]);
$smarty->assign('overview_value_nachname4', $_SESSION["nachname4"]);
$smarty->assign('overview_value_vorname4', $_SESSION["vorname4"]);
$smarty->assign('overview_value_nachname5', $_SESSION["nachname5"]);
$smarty->assign('overview_value_vorname5', $_SESSION["vorname5"]);
$smarty->assign('overview_value_mail', $_SESSION["mail"]);
}
if ($action == 'save') {
$nachname1 = $_SESSION["nachname1"];
$vorname1 = $_SESSION["vorname1"];
$nachname2 = $_SESSION["nachname2"];
$vorname2 = $_SESSION["vorname2"];
$nachname3 = $_SESSION["nachname3"];
$vorname3 = $_SESSION["vorname3"];
$nachname4 = $_SESSION["nachname4"];
$vorname4 = $_SESSION["vorname4"];
$nachname5 = $_SESSION["nachname5"];
$vorname5 = $_SESSION["vorname5"];
$mail = $_SESSION["mail"];
for($i=0;$i<count($_SESSION["termin"]);$i++){
$termin = $_SESSION["termin"][$i];
$lfd_haushalt = get_lfd_haushalt($termin);
# echo "
# get_lfd_haushalt($termin)
# <br>
# $lfd_haushalt
# <br>
# ";
$datum=date("Y-m-d H:i:s");
if($nachname1 != ''){
if($return = doppelanmelder($termin, $vorname1, $nachname1)){
$crypt1 = "$return";
}else{
$sitzplatz1 = get_sitzplatz($nachname1, $vorname1);
$split1 = explode("|", $sitzplatz1);
$reihe1 = $split1[0];
$platz1 = $split1[1];
$sql1 = $db->query("insert into gd_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 = rawurlencode(cryption("$bid1|$nachname1|$termin", 'e'));
}
}
if($nachname2 != ''){
if($return = doppelanmelder($termin, $vorname2, $nachname2)){
$crypt2 = "$return";
}else{
$sitzplatz2 = get_sitzplatz($nachname2, $vorname2);
$split2 = explode("|", $sitzplatz2);
$reihe2 = $split2[0];
$platz2 = $split2[1];
$sql1 = $db->query("insert into gd_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 = rawurlencode(cryption("$bid2|$nachname2|$termin", 'e'));
}
}
if($nachname3 != ''){
if($return = doppelanmelder($termin, $vorname3, $nachname3)){
$crypt3 = "$return";
}else{
$sitzplatz3 = get_sitzplatz($nachname3, $vorname3);
$split3 = explode("|", $sitzplatz3);
$reihe3 = $split3[0];
$platz3 = $split3[1];
$sql1 = $db->query("insert into gd_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 = rawurlencode(cryption("$bid3|$nachname3|$termin", 'e'));
}
}
if($nachname4 != ''){
if($return = doppelanmelder($termin, $vorname4, $nachname4)){
$crypt4 = "$return";
}else{
$sitzplatz4 = get_sitzplatz($nachname4, $vorname4);
$split4 = explode("|", $sitzplatz4);
$reihe4 = $split4[0];
$platz4 = $split4[1];
$sql1 = $db->query("insert into gd_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 = rawurlencode(cryption("$bid4|$nachname4|$termin", 'e'));
}
}
if($nachname5 != ''){
if($return = doppelanmelder($termin, $vorname5, $nachname5)){
$crypt5 = "$return";
}else{
$sitzplatz5 = get_sitzplatz($nachname5, $vorname5);
$split5 = explode("|", $sitzplatz5);
$reihe5 = $split5[0];
$platz5 = $split5[1];
$sql1 = $db->query("insert into gd_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 = rawurlencode(cryption("$bid5|$nachname5|$termin", 'e'));
}
}
#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, fellbach_gd
FROM gd_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>";
$nname[] = "$nachname1";
$vname[] = "$vorname1";
}
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>";
$nname[] = "$nachname2";
$vname[] = "$vorname2";
}
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>";
$nname[] = "$nachname3";
$vname[] = "$vorname3";
}
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>";
$nname[] = "$nachname4";
$vname[] = "$vorname4";
}
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>";
$nname[] = "$nachname5";
$vname[] = "$vorname5";
}
$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);
if($row_termin['fellbach_gd'] == 'N'){
$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);
}else{
require_once("./mpdf/vendor/autoload.php");
$mpdf = new \Mpdf\Mpdf([
'mode' => 'utf-8',
'format' => 'A4',
'orientation' => 'P',
'margin_top' => 10,
'margin_bottom' => 20,
'margin_left' => 10,
'margin_right' => 16,
'default_font' => 'arial',
]);
$buffer = '<page backtop="7mm" backbottom="10mm" style="font-size: 11pt">';
$buffer.="<table cellspacing='2' cellpadding='2' border='1'
style='border-collapse: collapse;
font-size: 12px;
font-weight: 700;
margin-top: 5px;
border-top: 1px solid #777;
width: 100%;'>
<tr>";
$cnt=0;
for($i=0;$i<count($nname);$i++){
if($cnt == 3){
$buffer.="</tr><tr>";
}
$qr_id = generate_qr_by_name($nname[$i], $vname[$i]);
if($qr_id != 'NA'){
$buffer.="
<td align='center' width='100'>
QR-Code zur Erfassung der Gottesdienstteilnehmer in der Neuapostolischen Kirche Fellbach<br>
<br>
<img width='60' src='./admin/phpqrcode/temp/".$qr_id.".png' /><br>
$qr_id
<h3 style='text-align: center;'>$vname[$i] $nname[$i]</h3><br>
Dieser QR-Code dient lediglich zur Einlasskontrolle in die KircheFellbach und enthält keine persönlichen Daten.<br><br>
Neuapostolische Kirche Fellbach<br>
Kastanienweg 5<br>
70734 Fellbach
</td>";
}else{
$buffer.="
<td align='center' width='100'>
Kein QR Code vorhanden!
<br>
<h3 style='text-align: center;'>$vname[$i] $nname[$i]</h3>
</td>";
}
if($cnt == 3){
#$buffer.="<tr>";
$cnt = 0;
}
$cnt++;
}
$buffer.="
</tr>
</table>
</page>";
$mpdf->WriteHTML($buffer);
$mpdf->Output("./admin/pdfs/QR_Codes_Fellbach_$nachname1.pdf", F);
$pdfLocation = "./admin/pdfs/QR_Codes_Fellbach_$nachname1.pdf"; // file location
$pdfName = "QR_Codes_Fellbach_$nachname1.pdf"; // pdf file name recipient will get
$filetype = "application/pdf"; // type
// create headers and mime boundry
$eol = PHP_EOL;
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
$headers = "From: Gottesdienstregistrierung <service@nak-btb.de>$eol" .
"MIME-Version: 1.0$eol" .
"Content-Type: multipart/mixed;$eol" .
" boundary=\"$mime_boundary\"";
// add html message body
$message = "--$mime_boundary$eol" .
"Content-Type: text/html; charset=\"utf-8\"$eol" .
"Content-Transfer-Encoding: 7bit$eol$eol" .
$text . $eol;
// fetch pdf
$file = fopen($pdfLocation, 'rb');
$data = fread($file, filesize($pdfLocation));
fclose($file);
$pdf = chunk_split(base64_encode($data));
// attach pdf to email
$message .= "--$mime_boundary$eol" .
"Content-Type: $filetype;$eol" .
" name=\"$pdfName\"$eol" .
"Content-Disposition: attachment;$eol" .
" filename=\"$pdfName\"$eol" .
"Content-Transfer-Encoding: base64$eol$eol" .
$pdf . $eol .
"--$mime_boundary--";
// Send the email
$return = @mail($empfaenger, $betreff, $message, $headers);
unlink($pdfLocation);
}
}
}
session_destroy();
}
$smarty->assign('action', "$action");
$smarty->display("$template/$templatename");
?>

175
abmeldung.php Normal file
View File

@ -0,0 +1,175 @@
<?php
if(!isset($_SESSION)) { session_start(); }
include_once 'classes/TestProjektSmarty.class.php';
require_once("config.inc.php");
require_once("func_get_sitzplatz.php");
require_once("func_get_lfd_haushalt.php");
require_once("func_get_parameter.php");
require_once("config/func_cryption.php");
$smarty = new Smarty();
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
require_once "language/german.inc.php";
$action = $_GET['action'];
if ($action == '') {
$key = rawurldecode($_GET['key']);
$decrypt = cryption("$key", 'd');
$expl = explode("|", $decrypt);
$bid = $expl[0];
$nachname = $expl[1];
$termin = $expl[2];
$_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'];
$_SESSION["sabmelde_tid"] = $termin;
$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 == 'del') {
$bid = $_SESSION["sabmelde_bid"];
$antwort = $_GET['antwort'];
$termin = $_SESSION["sabmelde_termin"];
$vorname = $_SESSION["sabmelde_vorname"];
$nachname = $_SESSION["sabmelde_nachname"];
$tid = $_SESSION["sabmelde_tid"];
if($antwort == 'Y'){
$result_mail = $db->query("SELECT mail
FROM jumi_buchung
WHERE bid = $bid");
$row_mail = $result_mail->fetch_array();
$sql1 = $db->query("DELETE FROM jumi_buchung WHERE bid = $bid");
$ausgabe = "Sie haben $vorname $nachname vom Gottesdienst am $termin Uhr abgemeldet";
$anmeldestopp = get_parameter(3);
$result_stop = $db->query("SELECT 1 offen
FROM jumi_termine
WHERE tid = $tid
AND (DATE_SUB(datum, INTERVAL $anmeldestopp HOUR) > now()
OR loginstop != '0000-00-00 00:00:00')");
$row_stop = $result_stop->fetch_array();
if($row_stop['offen'] != '1'){
# Anmeldungen sind bereits gesperrt, dann Mail senden
$empfaenger = get_parameter(5); // addresses to email pdf to
$betreff = "Abmeldung zum Gottesdienst am ".$termin; // email subject
$text = "<html>
<head>
<title>Abmeldung zum Gottesdienst</title>
</head>
<body>
<font face='Arial' size='2'>
Guten Tag!<br><br>
Folgende Abmeldungen zum Gottesdienstes haben sich ergeben:
<br><br>
Datum: $termin<br>
Person: $nachname, $vorname
<br>
<p>
Ggf. wird dadurch ein Sitzplatz verfügbar!<br>
Diese Mail wurde automatisch generiert!<br>
Antworten Sie daher nicht auf diese Mail<br>
<br>
Vielen Dank
</body>
</html>";
// create headers and mime boundry
$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: NAK Beutelsbach <service@nak-btb.de>\n";
#$headers .= "Bcc: \n";
$return = @mail($empfaenger, $betreff, $text, $headers);
}
if($row_mail['mail'] != ''){
$empfaenger = $row_mail['mail']; // addresses to email pdf to
$betreff = "Abmeldung zum Gottesdienst am ".$termin; // email subject
$text = "<html>
<head>
<title>Abmeldung 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 abgemeldet.<br>
<br><br>
Datum: $termin<br>
Person: $nachname, $vorname
<br>
<p>
Link zur Registrierung: <a href=\"http://gd.nak-btb.de\">Registrierung zum Gottesdienst</a>
<br><br>
Diese Mail wurde automatisch generiert!<br>
Antworten Sie daher nicht auf diese Mail<br>
<br>
Vielen Dank
</body>
</html>";
// create headers and mime boundry
$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: NAK Beutelsbach <service@nak-btb.de>\n";
#$headers .= "Bcc: \n";
$return = @mail($empfaenger, $betreff, $text, $headers);
}
}else{
$ausgabe = "Sie haben $vorname $nachname vom Gottesdienst am $termin Uhr <b>NICHT</b> abgemeldet";
}
$smarty->assign('abmelde_ausgabe', $ausgabe);
session_destroy();
}
$smarty->assign('action', "$action");
$smarty->display("$template/$templatename");
?>

142
abmeldung.php_20210111 Normal file
View File

@ -0,0 +1,142 @@
<?php
if(!isset($_SESSION)) { session_start(); }
include_once 'classes/TestProjektSmarty.class.php';
require_once("config.inc.php");
require_once("func_get_sitzplatz.php");
require_once("func_get_lfd_haushalt.php");
require_once("func_get_parameter.php");
require_once("config/func_cryption.php");
$smarty = new Smarty();
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
require_once "language/german.inc.php";
$action = $_GET['action'];
if ($action == '') {
$key = rawurldecode($_GET['key']);
$decrypt = cryption("$key", 'd');
$expl = explode("|", $decrypt);
$bid = $expl[0];
$nachname = $expl[1];
$termin = $expl[2];
$_SESSION["sabmelde_bid"] = $bid;
$result = $db->query("SELECT count(*) Anz
FROM gd_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 gd_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'];
$_SESSION["sabmelde_tid"] = $termin;
$result_name = $db->query("SELECT nachname, vorname
FROM gd_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 == 'del') {
$bid = $_SESSION["sabmelde_bid"];
$antwort = $_GET['antwort'];
$termin = $_SESSION["sabmelde_termin"];
$vorname = $_SESSION["sabmelde_vorname"];
$nachname = $_SESSION["sabmelde_nachname"];
$tid = $_SESSION["sabmelde_tid"];
if($antwort == 'Y'){
$sql1 = $db->query("DELETE FROM gd_buchung WHERE bid = $bid");
$ausgabe = "Sie haben $vorname $nachname vom Gottesdienst am $termin Uhr abgemeldet";
$anmeldestopp = get_parameter(3);
$result_stop = $db->query("SELECT 1 offen
FROM gd_termine
WHERE tid = $tid
AND (DATE_SUB(datum, INTERVAL $anmeldestopp HOUR) > now()
OR loginstop != '0000-00-00 00:00:00')");
$row_stop = $result_stop->fetch_array();
if($row_stop['offen'] != '1'){
# Anmeldungen sind bereits gesperrt, dann Mail senden
$to = get_parameter(5); // addresses to email pdf to
$from = "NAK Beutelsbach <nak-beutelsbach@gmx.de>"; // address message is sent from
$subject = "Abmeldung zum Gottesdienst am ".$termin; // email subject
$body = "<html>
<head>
<title>Abmeldung zum Gottesdienst</title>
</head>
<body>
<font face='Arial' size='2'>
Guten Tag!<br><br>
Folgende Abmeldungen zum Gottesdienstes haben sich ergeben:
<br><br>
Datum: $termin<br>
Person: $nachname, $vorname
<br>
<p>
Ggf. wird dadurch ein Sitzplatz verfügbar!
Antworten Sie daher nicht auf diese Mail<br>
<br>
Vielen Dank
</body>
</html>";
$pdfLocation = "./pdfs/".$row_get_termin['datum_output']."_Gottesdienstteilnehmer.pdf"; // file location
$pdfName = $row_get_termin['datum_output']."_Gottesdienstteilnehmer.pdf"; // pdf file name recipient will get
$filetype = "application/pdf"; // type
// create headers and mime boundry
$eol = PHP_EOL;
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
$headers = "From: $from$eol" .
"MIME-Version: 1.0$eol" .
"Content-Type: multipart/mixed;$eol" .
" boundary=\"$mime_boundary\"";
// add html message body
$message = "--$mime_boundary$eol" .
"Content-Type: text/html; charset=\"iso-8859-1\"$eol" .
"Content-Transfer-Encoding: 7bit$eol$eol" .
$body . $eol;
// Send the email
mail($to, $subject, $message, $headers);
}
}else{
$ausgabe = "Sie haben $vorname $nachname vom Gottesdienst am $termin Uhr <b>NICHT</b> abgemeldet";
}
$smarty->assign('abmelde_ausgabe', $ausgabe);
session_destroy();
}
$smarty->assign('action', "$action");
$smarty->display("$template/$templatename");
?>

View File

@ -0,0 +1,77 @@
<?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_parameter.php");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
$termin = $_GET['tid'];
if ($action == '') {
$query1 = "SELECT lfd_haushalt, count(*) Anz
FROM gd_buchung
WHERE reihe = ''
AND tid = $termin
GROUP BY lfd_haushalt";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
$value2 = '';
$mehrfachbelegung = trim(get_parameter(6));
if($mehrfachbelegung == 0){
$query2 = "SELECT reihe, platz
FROM gd_verfplaetze
WHERE concat(reihe,platz) not in (select concat(reihe,platz) from gd_buchung where tid=$termin and lfd_haushalt!=$row1[lfd_haushalt])
AND reihe not in ('Sonntagschule', 'Vorsonntagschule')
order by reihe, platz
";
}else{
$query2 = "SELECT reihe, platz
FROM gd_verfplaetze
WHERE reihe not in ('Sonntagschule', 'Vorsonntagschule')
order by reihe, platz
";
}
$result2 = $db->query( $query2)
or die ("Cannot execute query2");
$ln2 = 0;
while ($row2 = $result2->fetch_array()){
$inner1[$ln2]['reihe'] = $row2['reihe'];
$inner1[$ln2]['platz'] = $row2['platz'];
$value2 = $inner1;
$ln2++;
}
$query_name = $db->query("SELECT bid, vorname, nachname
FROM gd_buchung
WHERE reihe = ''
AND lfd_haushalt= $row1[lfd_haushalt]
AND tid = $termin
ORDER BY bid
LIMIT 1");
$row_name = $query_name->fetch_array();
$row1['inner'] = $value2;
$row1['tid'] = $termin;
$row1['vorname'] = $row_name['vorname'];
$row1['nachname'] = $row_name['nachname'];
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

View File

@ -0,0 +1,9 @@
<?php
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";
$smarty->display("$template/admin/$templatename");
?>

26
admin/fill_qr.php Normal file
View File

@ -0,0 +1,26 @@
<?php
if(!isset($_SESSION)) { session_start(); }
require_once("../config.inc.php");
$query3 = "SELECT id, nachname, vorname
FROM jumi_qr_fellbach
WHERE mail =''";
$result3 = $db->query($query3) or die("Cannot execute query3");
while ($row3 = $result3->fetch_array()) {
$result1 = $db->query("SELECT mail
FROM jumi_buchung
WHERE nachname='$row3[nachname]'
AND vorname='$row3[vorname]'
AND mail != ''
ORDER BY bid DESC
LIMIT 1");
$row1 = $result1->fetch_array();
$update = $db->query("UPDATE jumi_qr_fellbach
SET mail ='$row1[mail]'
WHERE id = $row3[id]
");
}
?>

565
admin/gd_verwaltung.php Normal file
View File

@ -0,0 +1,565 @@
<?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");
?>

9
admin/hauptframe.php Normal file
View File

@ -0,0 +1,9 @@
<?php
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";
$smarty->display("$template/admin/$templatename");
?>

86
admin/index.php Normal file
View File

@ -0,0 +1,86 @@
<?php
## INDEX gegen DB
if(!isset($_SESSION)) { session_start(); }
include_once '../classes/TestProjektSmarty.class_subdir.php';
require_once("../config.inc.php");
require_once("../config/datenbankanbindung.php");
$smarty = new SmartyAdmin();
$templatename = substr(basename($_SERVER['PHP_SELF']),0,-3)."html";
require_once "../language/german.inc.php";
$action = $_GET['action'];
if($action == ''){
if(isset($_GET['error'])){
$errorno = $_GET['error'];
$smarty->assign('index_error', 1);
if($errorno == 1){
$smarty->assign('index_error_text', "Es m&uuml;ssen alle Felder ausgef&uuml;llt werden");
}
if($errorno == 2){
$smarty->assign('index_error_text', "Der Benutzername ist im System nicht vorhanden");
}
if($errorno == 3){
$smarty->assign('index_error_text', "Der Benutzername oder das Passwort ist nicht korrekt.");
}
# Daten aufbereiten bei Fehler
if(isset($_SESSION["global_username"])){
$smarty->assign('index_user', $_SESSION["global_username"]);
}
}
}
if($action == 'anmeld'){
$username=strtoupper($_POST["user"]); //remove case sensitivity on the username
$password=$_POST["password"];
if($_POST["user"] != ""){
$_SESSION["global_username"]=$username;
}
if($username == "" OR $password == ""){
echo "<meta http-equiv=\"refresh\" content=\"0; URL=".$_SERVER['PHP_SELF']."?error=1\">";
}else{
$db = dbconnect();
$result = $db->query("SELECT bpmuid, uid, passwort FROM jumi_admin WHERE UPPER(uid)='$username'");
$row = $result->fetch_array();
if ($username != strtoupper($row['uid'])) {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=".$_SERVER['PHP_SELF']."?error=2\">";
}
// Passwort falsch
elseif (md5($password) != $row['passwort']){ //verschlüsseltes Passwort überprüfen
# Cookies werden bereits gesetzt, falls sich jemand ein passwort zusenden lässt.
$_SESSION["global_uid"] = $row['bpmuid'];
$_SESSION["global_username"] = $row['uid'];
echo "<meta http-equiv=\"refresh\" content=\"0; URL=".$_SERVER['PHP_SELF']."?error=3\">";
}else{
$db = dbconnect();
$datum=date("Y-m-d H:i:s");
$ip=getenv("REMOTE_ADDR");
$agent=getenv("HTTP_USER_AGENT");
$user_admin = $row['bpmuid'];
$_SESSION["global_uid"] = $user_admin;
$_SESSION["global_username"] = $row['uid'];
$result_1 = $db->query("INSERT INTO jumi_adminlog (Datum, IP, user_agent, bpmuid) VALUES ('$datum', '$ip', '$agent', '$user_admin')");
$smarty->assign('index_login', "1");
}
}
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

8
admin/indexframe.php Normal file
View File

@ -0,0 +1,8 @@
<?php
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";
$smarty->display("$template/admin/$templatename");
?>

252
admin/liste_qr_name.php Normal file
View File

@ -0,0 +1,252 @@
<?php
if(!isset($_SESSION)) { session_start(); }
include_once '../classes/TestProjektSmarty.class_subdir.php';
require_once("../config.inc.php");
require_once("../func_get_parameter.php");
include('phpqrcode/qrlib.php');
$templatename = substr(basename($_SERVER['PHP_SELF']),0,-3)."html";
$smarty = new SmartyAdmin();
require_once "../language/german.inc.php";
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
$PNG_TEMP_DIR = dirname(__FILE__).DIRECTORY_SEPARATOR.'phpqrcode'.DIRECTORY_SEPARATOR.'temp'.DIRECTORY_SEPARATOR;
$PNG_WEB_DIR = 'phpqrcode/temp/';
if ($action == '') {
if ($handle = opendir($PNG_WEB_DIR)) {
while (false !== ($file = readdir($handle))) {
if ((time()-filectime($PNG_WEB_DIR.$file)) < 86400) {
if (preg_match('/\.png$/i', $file)) {
unlink($PNG_WEB_DIR.$file);
}
}
}
}
$german = $db->query("SET lc_time_names = 'de_DE';");
$query1 = "SELECT id, vorname, nachname, qr
FROM jumi_qr_fellbach
ORDER BY nachname ASC, vorname ASC
";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
$filename = $PNG_TEMP_DIR.$row1['qr'].'.png';
QRcode::png($row1['qr'], $filename, H, 10, 2);
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if ($action == 'ausgabe') {
require_once("../mpdf/vendor/autoload.php");
$name = $_POST["name"];
#echo "Mailsend: ".$_POST['mailsend'];
#exit;
// Output a PDF file directly to the browser
if($_POST['mailsend'] != '1'){
$smarty->assign('mailwindow', '0');
$mpdf = new \Mpdf\Mpdf([
'mode' => 'utf-8',
'format' => 'A4',
'orientation' => 'P',
'margin_top' => 10,
'margin_bottom' => 20,
'margin_left' => 10,
'margin_right' => 16,
'default_font' => 'arial',
]);
$buffer = '<page backtop="7mm" backbottom="10mm" style="font-size: 11pt">';
$buffer.="<table cellspacing='2' cellpadding='2' border='1'
style='border-collapse: collapse;
font-size: 12px;
font-weight: 700;
margin-top: 5px;
border-top: 1px solid #777;
width: 100%;'>
<tr>";
$cnt=0;
for($i=0;$i<count($name);$i++){
if($cnt == 3){
$buffer.="</tr><tr>";
}
$result_qr = $db->query("SELECT id, nachname, vorname, qr, mail
FROM jumi_qr_fellbach
WHERE id = $name[$i]");
$row_qr = $result_qr->fetch_array();
$buffer.="
<td align='center' width='100'>
QR-Code zur Erfassung der Gottesdienstteilnehmer in der Neuapostolischen Kirche Fellbach<br>
<br>
<img width='60' src=".$PNG_WEB_DIR.basename($row_qr['qr'].".png")." /><br>
$row_qr[qr]
<h3 style='text-align: center;'>$row_qr[vorname] $row_qr[nachname]</h3><br>
Dieser QR-Code dient lediglich zur Einlasskontrolle in die KircheFellbach und enthält keine persönlichen Daten.<br><br>
Neuapostolische Kirche Fellbach<br>
Kastanienweg 5<br>
70734 Fellbach
</td>";
if($cnt == 3){
#$buffer.="<tr>";
$cnt = 0;
}
$cnt++;
}
$buffer.="
</tr>
</table>
</page>";
$mpdf->WriteHTML($buffer);
$mpdf->Output('QR_Codes_Fellbach.pdf', D);
}else{
$smarty->assign('mailwindow', '1');
for($i=0;$i<count($name);$i++){
$mpdf = new \Mpdf\Mpdf([
'mode' => 'utf-8',
'format' => 'A6',
'orientation' => 'P',
'margin_top' => 10,
'margin_bottom' => 20,
'margin_left' => 10,
'margin_right' => 16,
'default_font' => 'arial',
]);
$result_qr = $db->query("SELECT id, nachname, vorname, qr, mail
FROM jumi_qr_fellbach
WHERE id = $name[$i]");
$row_qr = $result_qr->fetch_array();
if($row_qr['mail'] != ''){
$buffer = '<page backtop="7mm" backbottom="10mm" style="font-size: 11pt">';
$buffer.="<table cellspacing='2' cellpadding='2' border='1'
style='border-collapse: collapse;
font-size: 12px;
font-weight: 700;
margin-top: 5px;
border-top: 1px solid #777;
width: 100%;'>
<tr>";
$buffer.="
<td align='center' width='100'>
QR-Code zur Erfassung der Gottesdienstteilnehmer in der Neuapostolischen Kirche Fellbach<br>
<br>
<img width='60' src=".$PNG_WEB_DIR.basename($row_qr['qr'].".png")." /><br>
$row_qr[qr]
<h3 style='text-align: center;'>$row_qr[vorname] $row_qr[nachname]</h3><br>
Dieser QR-Code dient lediglich zur Einlasskontrolle in die KircheFellbach und enthält keine persönlichen Daten.<br><br>
Neuapostolische Kirche Fellbach<br>
Kastanienweg 5<br>
70734 Fellbach
</td>";
$buffer.="
</tr>
</table>
</page>";
$mpdf->WriteHTML($buffer);
$mpdf->Output("./pdfs/QR-Code_Fellbach_$row_qr[nachname]_$row_qr[vorname].pdf", F);
/* leere Mail ausgeben */
$to = $row_qr['mail']; // addresses to email pdf to
$from = "NAK Beutelsbach <service@nak-btb.de>"; // address message is sent from
$subject = "CR Code Fellbach: $row_qr[nachname], $row_qr[vorname] Nr. $row_qr[qr]"; // email subject
$body = "<html>
<head>
<title>QR Code Fellbach</title>
</head>
<body>
<font face='Arial' size='2'>
Guten Tag!<br><br>
im Anhang finden Sie Ihren QR Code f&uuml;r den Einlass in die Gemeinde Fellbach.
<br>
<br>
<p>
Diese Mail wurde automatisch generiert!<br>
Antworten Sie daher nicht auf diese Mail<br>
<br>
Vielen Dank
</body>
</html>";
$pdfLocation = "./pdfs/QR-Code_Fellbach_$row_qr[nachname]_$row_qr[vorname].pdf"; // file location
$pdfName = "QR-Code_Fellbach_$row_qr[nachname]_$row_qr[vorname].pdf"; // pdf file name recipient will get
$filetype = "application/pdf"; // type
// create headers and mime boundry
$eol = PHP_EOL;
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
$headers = "From: $from$eol" .
"MIME-Version: 1.0$eol" .
"Content-Type: multipart/mixed;$eol" .
" boundary=\"$mime_boundary\"";
// add html message body
$message = "--$mime_boundary$eol" .
"Content-Type: text/html; charset=\"utf-8\"$eol" .
"Content-Transfer-Encoding: 7bit$eol$eol" .
$body . $eol;
// fetch pdf
$file = fopen($pdfLocation, 'rb');
$data = fread($file, filesize($pdfLocation));
fclose($file);
$pdf = chunk_split(base64_encode($data));
// attach pdf to email
$message .= "--$mime_boundary$eol" .
"Content-Type: $filetype;$eol" .
" name=\"$pdfName\"$eol" .
"Content-Disposition: attachment;$eol" .
" filename=\"$pdfName\"$eol" .
"Content-Transfer-Encoding: base64$eol$eol" .
$pdf . $eol .
"--$mime_boundary--";
// Send the email
if(mail($to, $subject, $message, $headers)) {
$smarty->assign('message', 'Die Mails wurden versendet!');
}else {
$smarty->assign('message', 'Die Mails wurde <b>nicht</b> alle versendet!');
$name_kein_mailversand .= "$row_qr[vorname] $row_qr[nachname]<br>";
}
}else{
# Keine Mailadresse hinterlegt
$name_keine_mailadresse .= "$row_qr[vorname] $row_qr[nachname]<br>";
}
unlink($pdfLocation);
}
$smarty->assign('kein_mailversand', "$name_kein_mailversand");
$smarty->assign('keine_Mailadresse', "$name_keine_mailadresse");
} # Ende Häkchen Mailversand
#echo "<pre>";
#echo $buffer;
#echo "<pre>";
#exit;
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

1549
admin/liste_tn.php Normal file

File diff suppressed because it is too large Load Diff

12
admin/logout.php Normal file
View File

@ -0,0 +1,12 @@
<?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";
session_destroy();
$smarty->display("$template/admin/$templatename");
?>

View File

@ -0,0 +1,16 @@
<?php
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";
$action = $_GET['action'];
if($action == ''){
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

16
admin/menu_qr.php Normal file
View File

@ -0,0 +1,16 @@
<?php
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";
$action = $_GET['action'];
if($action == ''){
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

16
admin/menu_survey.php Normal file
View File

@ -0,0 +1,16 @@
<?php
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";
$action = $_GET['action'];
if($action == ''){
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

16
admin/menu_verwaltung.php Normal file
View File

@ -0,0 +1,16 @@
<?php
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";
$action = $_GET['action'];
if($action == ''){
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

16
admin/menu_youtube.php Normal file
View File

@ -0,0 +1,16 @@
<?php
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";
$action = $_GET['action'];
if($action == ''){
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

Binary file not shown.

1221
admin/old/bewerber_daten.php Normal file

File diff suppressed because it is too large Load Diff

161
admin/old/datencheck.php Normal file
View File

@ -0,0 +1,161 @@
<?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";
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
#Anzahl der getesteten Kandidaten
$result_anzget = $db->query("SELECT count(distinct ka_id) Anz
FROM bpm_term_kand a, bpm_tanpool b
WHERE a.tp_id = b.tp_id
AND b.login_dat != '0000-00-00 00:00:00'");
$row_anzget = $result_anzget->fetch_array();
$smarty->assign('datenchk_anzget', $row_anzget['Anz']);
#Anzahl der Kandidaten mit ausstehendem Test
$result_aussttest = $db->query("SELECT count(*) Anz
FROM bpm_tanpool b
WHERE verw_dat != '0000-00-00 00:00:00'
AND b.login_dat = '0000-00-00 00:00:00'");
$row_aussttest = $result_aussttest->fetch_array();
$smarty->assign('datenchk_aussttest', $row_aussttest['Anz']);
#Anzahl aller Anmeldung
$result_alleranm = $db->query("SELECT count(distinct ka_id) Anz
FROM bpm_term_kand a, bpm_tanpool b
WHERE a.tp_id = b.tp_id
AND b.verw_dat != '0000-00-00 00:00:00'");
$row_alleranm = $result_alleranm->fetch_array();
$smarty->assign('datenchk_alleranm', $row_alleranm['Anz']);
#Anzahl Durchfaller - komplizierter. Wenn er nach dem ersten Mal durchgefallen doch bestanden hat, gilt er nicht als Durchfaller
$query = "SELECT ka_id, max(tp_id) tp_id
FROM bpm_term_kand
GROUP BY ka_id
";
$result = $db->query($query) or die("Cannot execute query1");
$zaehler = 0;
while ($row = $result->fetch_array()) {
$result_tan = $db->query("SELECT tan
FROM bpm_tanpool
WHERE tp_id = $row[tp_id]");
$row_tan = $result_tan->fetch_array();
$result_bestanden = $db->query("SELECT bestanden
FROM bpm_ergebnisse
WHERE ka_id = $row[ka_id]
AND tan = '$row_tan[tan]'");
$row_bestanden = $result_bestanden->fetch_array();
if($row_bestanden['bestanden'] == 0 and $row_bestanden['bestanden'] != ''){
$zaehler++;
}
}
$smarty->assign('datenchk_anzdurchfaller', $zaehler);
# Gespeicherte Werte
$query1 = "SELECT a.ka_id, vorname, nachname, date_format(tm_datum, '%d.%m.%Y um %H:%i Uhr') tm_datum, CASE tm_standort
WHEN 'L' THEN 'Ludwigsburg'
WHEN 'K' THEN 'Kehl'
ELSE '' END as tm_standort
, behinderung, verkuerzung
FROM bpm_kandidat a, bpm_term_kand b, bpm_termine c, bpm_ergebnisse d, bpm_tanpool e
WHERE a.ka_id = b.ka_id
AND b.tm_id = c.tm_id
AND a.ka_id = d.ka_id
AND b.tp_id = e.tp_id
AND a.ka_id IN (SELECT distinct ka_id FROM bpm_ergebnisse)
AND a.ka_id IN (SELECT distinct ka_id FROM bpm_upload WHERE upload_dat != '0000-00-00 00:00:00')
AND d.bestanden = '1'
AND e.tan=d.tan
ORDER BY tm_datum DESC, nachname ASC, vorname ASC
";
$result1 = $db->query($query1) or die("Cannot execute query1");
$row_cnt = $result1->num_rows;
$smarty->assign('dokverw_anzdb', $row_cnt);
while ($row1 = $result1->fetch_array()) {
$result_test = $db->query("SELECT summe
FROM bpm_ergebnisse
WHERE ka_id = '$row1[ka_id]'
AND bestanden = '1'");
$row_test = $result_test->fetch_array();
$result_anzhzb = $db->query("SELECT count(*) Anz
FROM bpm_upload
WHERE beschreibung = 'HZB'
AND ka_id = '$row1[ka_id]'");
$row_anzhzb = $result_anzhzb->fetch_array();
if($row_anzhzb['Anz'] > 0){
$image_hzb = "ok.gif";
}else{
$image_hzb = "cross.jpg";
}
$result_anzzeug = $db->query("SELECT count(*) Anz
FROM bpm_upload
WHERE beschreibung like 'Zeugnis%'
AND ka_id = '$row1[ka_id]'");
$row_anzzeug = $result_anzzeug->fetch_array();
if($row_anzzeug['Anz'] >= 2){
$image_zeug = "ok.gif";
}else{
$image_zeug = "cross.jpg";
}
$result_anzleben = $db->query("SELECT count(*) Anz
FROM bpm_upload
WHERE beschreibung = 'Lebenslauf'
AND ka_id = '$row1[ka_id]'");
$row_anzleben = $result_anzleben->fetch_array();
if($row_anzleben['Anz'] >= 1){
$image_leben = "ok.gif";
}else{
$image_leben = "cross.jpg";
}
$result_notehzb = $db->query("SELECT hzb, zeugnisschnitt
FROM bpm_note
WHERE ka_id = '$row1[ka_id]'");
$row_notehzb = $result_notehzb->fetch_array();
if($row_notehzb['hzb'] == "0.00" or $row_notehzb['hzb'] == ""){
$image_notehzb = "cross.jpg";
}else{
$image_notehzb = "ok.gif";
}
if($row_notehzb['zeugnisschnitt'] == "0.00" or $row_notehzb['zeugnisschnitt'] == ""){
$image_noteschnitt = "cross.jpg";
}else{
$image_noteschnitt = "ok.gif";
}
$row1['image_noteschnitt'] = $image_noteschnitt;
$row1['image_notehzb'] = $image_notehzb;
$row1['image_leben'] = $image_leben;
$row1['image_zeug'] = $image_zeug;
$row1['anz_zeug'] = $row_anzzeug['Anz'];
$row1['image_hzb'] = $image_hzb;
$row1['testergebnis'] = $row_test['summe'];
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

110
admin/old/dokverw.php Normal file
View File

@ -0,0 +1,110 @@
<?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");
$verz = "../uploads/"; // relatives Uploadverzeichnis (relativ zum 'Standort' dieser Datei, wohin die Dateien kopiert werden sollen
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
# Gespeicherte Werte
$query1 = "SELECT up_id, file, ka_id
FROM bpm_upload
WHERE upload_dat != '0000-00-00 00:00:00'";
$result1 = $db->query($query1) or die("Cannot execute query1");
$row_cnt = $result1->num_rows;
$smarty->assign('dokverw_anzdb', $row_cnt);
while ($row1 = $result1->fetch_array()) {
$result_kand = $db->query("SELECT vorname, nachname
FROM bpm_kandidat
WHERE ka_id = '$row1[ka_id]'");
$row_kand = $result_kand->fetch_array();
if (file_exists($row1['file'])) {
$exists = 1;
} else {
$exists = 0;
}
$row1['vorname'] = $row_kand['vorname'];
$row1['nachname'] = $row_kand['nachname'];
$row1['exists'] = $exists;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
$dir = $_SERVER["DOCUMENT_ROOT"].dirname($_SERVER['PHP_SELF'])."/$verz";
$folder = dir($dir);
while ($dateiname = $folder->read()) {
if (filetype($dir.$dateiname) != "dir") {
$ext = strrchr($dateiname, '.');
if($ext == '.pdf'){
$result_checkdoc = $db->query("SELECT count(*) Anz
FROM bpm_upload
WHERE file ='$verz$dateiname'
LIMIT 1");
$row_checkdoc = $result_checkdoc->fetch_array();
if($row_checkdoc['Anz'] == 0){
$exists2 = 0;
$vorname = "";
$nachname = "";
}else{
$result_checkdoc2 = $db->query("SELECT ka_id
FROM bpm_upload
WHERE file ='$verz$dateiname'
LIMIT 1");
$row_checkdoc2 = $result_checkdoc2->fetch_array();
$result_kand = $db->query("SELECT vorname, nachname
FROM bpm_kandidat
WHERE ka_id = '$row_checkdoc2[ka_id]'");
$row_kand = $result_kand->fetch_array();
$vorname = $row_kand['vorname'];
$nachname = $row_kand['nachname'];
$exists2 = 1;
}
$row2['vorname'] = $vorname;
$row2['nachname'] = $nachname;
$row2['file'] = $dateiname;
$row2['exists'] = $exists2;
$row2['dateiname'] = $dateiname;
$table_data2[] = $row2;
}
}
}
$smarty->assign('table_data2', $table_data2);
$cntserver = count($table_data2);
$smarty->assign('dokverw_anzserver', $cntserver);
}
if ($action == 'delserver') {
$file = $verz.$_GET['file'];
@unlink($file);
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "\">";
}
if ($action == 'deldb') {
$up_id = $_GET['up_id'];
$sql1 = $db->query("DELETE FROM bpm_upload
WHERE up_id = $up_id
");
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "\">";
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

29
admin/old/downpdf.php Normal file
View File

@ -0,0 +1,29 @@
<?php
require_once("../config.inc.php");
if($_SESSION["global_username"] == ''){
echo"<script type='text/javascript'>window.top.location.href = \"index.php\";</script>";
exit;
}
$file = str_replace('%2F', '/', urlencode($_GET["file"]));
if (file_exists($file)) {
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=" . urlencode(basename($file)));
header("Content-Type: application/download");
header("Content-Description: File Transfer");
header("Content-Length: " . filesize($file));
flush(); // This doesn't really matter.
$fp = fopen($file, "r");
while (!feof($fp)) {
echo fread($fp, 65536);
flush(); // This is essential for large downloads
}
fclose($fp);
}else{
echo "Datei nicht gefunden";
}
?>

123
admin/old/ergebnisse.php Normal file
View File

@ -0,0 +1,123 @@
<?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_parameter.php");
require_once("../config/func_cryption.php");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
$german = $db->query("SET lc_time_names = 'de_DE';");
$query1 = "SELECT a.tm_id, date_format(tm_datum, '%a, %d.%m.%Y - %H:%i Uhr')tm_datum_form, tm_standort
FROM bpm_termine a, bpm_term_kand b, bpm_ergebnisse c
WHERE a.tm_id=b.tm_id
AND b.ka_id = c.ka_id
AND a.tm_datum > ADDDATE(now(), -365)
AND a.tm_datum < now()
GROUP BY a.tm_id, tm_datum_form, tm_standort
ORDER BY tm_datum desc";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
if ($row1['tm_standort'] == 'L') {
$standort = 'Ludwigsburg';
}
if ($row1['tm_standort'] == 'K') {
$standort = 'Kehl';
}
$row1['tm_standort'] = $standort;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if ($action == 'ausgabe') {
if (isset($_POST["testtermin"])) {
$testtermin = $_POST["testtermin"];
} else {
$testtermin = $_SESSION["testtermin"];
}
$_SESSION["testtermin"] = $testtermin;
$result = $db->query("SELECT date_format(tm_datum, '%d.%m.%Y') tm_datum, tm_standort
FROM bpm_termine
WHERE tm_id = $testtermin");
$row = $result->fetch_array();
if ($row['tm_standort'] == 'L') {
$standort = 'Ludwigsburg';
}
if ($row['tm_standort'] == 'K') {
$standort = 'Kehl';
}
$smarty->assign('erg_datum', $row['tm_datum']);
$smarty->assign('erg_standort', $standort);
$query1 = "SELECT vorname, nachname, a.ka_id, a.tan, satzerg, gemeinsamkeiten, rechenaufgaben, zahlenreihen, rechenzeichen, matrizen, merkf, summe, bestanden, a.eg_id
FROM bpm_ergebnisse a, bpm_kandidat b, bpm_term_kand c, bpm_termine d, bpm_tanpool e
WHERE a.ka_id = b.ka_id
AND b.ka_id = c.ka_id
AND c.tm_id = d.tm_id
AND c.tp_id = e.tp_id
AND e.tan = a.tan
AND d.tm_id = $testtermin
ORDER BY nachname ASC";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
$row1['tm_standort'] = $standort;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if ($action == 'del') {
$ka_id = $_GET['ka_id'];
$eg_id = $_GET['eg_id'];
$result = $db->query("SELECT vorname, nachname
FROM bpm_kandidat
WHERE ka_id = $ka_id");
$row = $result->fetch_array();
$smarty->assign('del_name', "$row[vorname] $row[nachname]");
$smarty->assign('del_eg_id', $eg_id);
}
if ($action == 'del2') {
$eg_id = $_GET['eg_id'];
$sql1 = $db->query("UPDATE bpm_ergebnisse
SET summe = 0
,bestanden='0'
WHERE eg_id= $eg_id");
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=ausgabe\">";
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

70
admin/old/fetch.php Normal file
View File

@ -0,0 +1,70 @@
<?php
require_once("../config/datenbankanbindung.php");
$db = dbconnect();
$output = '';
$script = '';
$script = $_POST['script'];
if(isset($_POST["query"]))
{
$search = mysqli_real_escape_string($db, $_POST["query"]);
if($script == "kand_del" OR $script == "termine_kandidat"){
$query = "
SELECT a.ka_id, vorname, nachname
FROM bpm_kandidat a, bpm_term_kand b, bpm_tanpool c
WHERE a.ka_id =b.ka_id
AND b.tp_id =c.tp_id
AND c.login_dat = '0000-00-00 00:00:00'
AND (vorname LIKE '%".$search."%'
OR nachname LIKE '%".$search."%')
ORDER BY nachname ASC, vorname ASC";
}else{
$query = "
SELECT ka_id, vorname, nachname
FROM bpm_kandidat
WHERE vorname LIKE '%".$search."%'
OR nachname LIKE '%".$search."%'
";
}
}
else
{
if($script == "kand_del" OR $script == "termine_kandidat"){
$query = "
SELECT a.ka_id, vorname, nachname
FROM bpm_kandidat a, bpm_term_kand b, bpm_tanpool c
WHERE a.ka_id =b.ka_id
AND b.tp_id =c.tp_id
AND c.login_dat = '0000-00-00 00:00:00'
ORDER BY nachname ASC, vorname ASC";
}else{
$query = "
SELECT ka_id, vorname, nachname
FROM bpm_kandidat
ORDER BY nachname, vorname";
}
}
$result = mysqli_query($db, $query);
if(mysqli_num_rows($result) > 0)
{
while($row = mysqli_fetch_array($result))
{
if(mysqli_num_rows($result) == 1){
$output .= "
<option value='$row[ka_id]' selected>$row[nachname], $row[vorname]</option>
";
}else{
$output .= "
<option value='$row[ka_id]'>$row[nachname], $row[vorname]</option>
";
}
}
echo $output;
}
else
{
echo 'Data Not Found';
}
?>

111
admin/old/kand_del.php Normal file
View File

@ -0,0 +1,111 @@
<?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";
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
$german = $db->query("SET lc_time_names = 'de_DE';");
# Dropdown befüllen übernimmt ajax:fetch.php
# $query1 = "SELECT a.ka_id, vorname, nachname, date_format(gebdat, '%d.%m.%Y') geb_format
# FROM bpm_kandidat a, bpm_term_kand b, bpm_tanpool c
# WHERE a.ka_id =b.ka_id
# AND b.tp_id =c.tp_id
# AND c.login_dat = '0000-00-00 00:00:00'
# ORDER BY nachname ASC, vorname ASC";
#
# $result1 = $db->query($query1) or die("Cannot execute query1");
#
#
# while ($row1 = $result1->fetch_array()) {
# $table_data1[] = $row1;
# }
# $smarty->assign('table_data1', $table_data1);
}
if ($action == 'nachfrage') {
$ka_id = $_POST['user'];
$result_id = $db->query("SELECT vorname, nachname
FROM bpm_kandidat
WHERE ka_id = '$ka_id'");
$row_id = $result_id->fetch_array();
$smarty->assign('kand_name', "$row_id[vorname] $row_id[nachname]");
$smarty->assign('kand_ka_id', $ka_id);
}
if ($action == 'delkand') {
$ka_id = $_GET['ka_id'];
$result_del = $db->query("SELECT count(*) Anz
FROM bpm_kandidat a, bpm_term_kand b, bpm_tanpool c
WHERE a.ka_id =b.ka_id
AND b.tp_id =c.tp_id
AND c.login_dat = '0000-00-00 00:00:00'
AND a.ka_id = $ka_id
");
$row_del = $result_del->fetch_array();
# Kandidat war inzwischen nicht beim Test angemeldet
if ($row_del['Anz'] == 1) {
#Aktuelle Tan ermitteln
$result_tan = $db->query("SELECT a.tp_id, tan
FROM bpm_tanpool a, bpm_term_kand b
WHERE a.tp_id = b.tp_id
AND b.ka_id = '$ka_id'
ORDER BY b.tk_id DESC
LIMIT 1");
$row_tan = $result_tan->fetch_array();
$tan = $row_tan['tan'];
$tp_id = $row_tan['tp_id'];
$sql1 = $db->query("DELETE FROM bpm_term_kand
WHERE tp_id = $tp_id
AND ka_id= $ka_id");
$sql1 = $db->query("DELETE FROM bpm_sonstige_mail
WHERE ka_id= $ka_id");
# TAN wieder freigeben
$sql2 = $db->query("UPDATE bpm_tanpool
SET verw_dat = '0000-00-00 00:00:00'
,login_dat = '0000-00-00 00:00:00'
WHERE tp_id= $tp_id
AND tan = '$tan'");
# Prüfen, ob es noch eine alte Bewerbung zum Test gibt, den er nicht bestanden hatte. Dann sollen die Stammdaten erhalten bleiben
$result_del2 = $db->query("SELECT count(*) Anz
FROM bpm_term_kand
WHERE ka_id ='$ka_id'
");
$row_del2 = $result_del2->fetch_array();
if($row_del2['Anz'] == 0){
$sql3 = $db->query("DELETE FROM bpm_kandidat
WHERE ka_id= $ka_id");
}
}
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?\">";
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

256
admin/old/liste_tn.php Normal file
View File

@ -0,0 +1,256 @@
<?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";
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
$german = $db->query("SET lc_time_names = 'de_DE';");
$query1 = "SELECT a.tm_id, date_format(tm_datum, '%a, %d.%m.%Y - %H:%i Uhr')tm_datum_form, tm_standort
FROM bpm_termine a, bpm_term_kand b
WHERE a.tm_id=b.tm_id
AND a.tm_datum > ADDDATE(now(), -7)
GROUP BY a.tm_id, tm_datum_form, tm_standort
ORDER BY tm_datum ASC";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
if($row1['tm_standort'] == 'L'){
$standort = 'Ludwigsburg';
}
if($row1['tm_standort'] == 'K'){
$standort = 'Kehl';
}
$row1['tm_standort'] = $standort;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if ($action == 'ausgabe') {
$testtermin = $_POST["testtermin"];
$german = $db->query("SET lc_time_names = 'de_DE';");
$query_termin = $db->query("SELECT date_format(tm_datum, '%a, %d.%m.%Y - %H:%i Uhr')tm_datum_form, tm_standort
FROM bpm_termine
WHERE tm_id = $testtermin");
$row_get_termin = $query_termin->fetch_array();
if($row_get_termin['tm_standort'] == 'L'){
$standort = 'Ludwigsburg';
}
if($row_get_termin['tm_standort'] == 'K'){
$standort = 'Kehl';
}
$buffer = '<page backtop="7mm" backbottom="10mm" style="font-size: 11pt">';
$buffer .= "<style type='text/css'>
.td1 { border:0.3px solid black; }
.td_foot { border: none; }
body { font-size: 14px; }
h1 { font-size: 22px; }
table { font-size: 12px; }
td{padding: 3px;}
table.page_footer {width: 100%; border: none; padding: 20mm}
.fcol{color: #0C25BF;}
.td2 { border:0.3px solid black;
height:1.0cm;
}
</style>";
$buffer.="<h1><p align='center'>$row_get_termin[tm_datum_form], $standort</p></h1>
<table cellspacing='0' cellpadding='0' border='0.3'>
<thead>
<tr>
<td class='td1' width='180'>
<b>Name</b>
</td>
<td class='td1' width='80'>
<b>Geburtstag</b>
</td>
<td class='td1' width='80'>
<b>Minderjährig</b>
</td>
<td class='td1' width='100'>
<b>ID</b>
</td>
<td class='td1' width='140'>
<b>Mail</b>
</td>
<td class='td1' width='60'>
<b>TAN</b>
</td>
<td class='td1' width='100'>
<b>Link</b>
</td>
</tr>
</thead>";
$query1 = "SELECT anrede, vorname, nachname, str, plz, ort, alter18, id, date_format(gebdat,'%d.%m.%Y') gebdat_form, tan, tinyurl, mail
FROM bpm_term_kand a, bpm_tanpool b, bpm_kandidat c
WHERE a.tp_id= b.tp_id
AND a.ka_id = c.ka_id
AND a.tm_id = $testtermin
ORDER BY nachname, vorname
";
$result1 = $db->query($query1) or die("Cannot execute query1");
$smarty->assign('termine_aktdat', date("d.m.Y H:i", time() ) ) ;
while ($row1 = $result1->fetch_array()) {
if($row1['alter18'] == 0){
$minderj = 'ja';
}
if($row1['alter18'] == 1){
$minderj = 'nein';
}
$buffer.="
<tr>
<td class='td1' width='180'>
$row1[nachname], $row1[vorname] ($row1[anrede])<br>
$row1[str]<br>
$row1[plz] $row1[ort]
</td>
<td class='td1' width='80'>
$row1[gebdat_form]
</td>
<td class='td1' width='80'>
$minderj
</td>
<td class='td1' width='100'>
$row1[id]
</td>
<td class='td1' width='140'>
$row1[mail]
</td>
<td class='td1' width='60'>
$row1[tan]
</td>
<td class='td1' width='100'>
$row1[tinyurl]
</td>
</tr>";
}
$buffer.="
</table>
</page>";
require_once("../mpdf/vendor/autoload.php");
$mpdf = new \Mpdf\Mpdf([
'mode' => 'utf-8',
'format' => 'A4',
'orientation' => 'P',
'margin_top' => 10,
'margin_bottom' => 10,
'margin_left' => 10,
'margin_right' => 16,
'default_font' => 'arial'
]);
$query2 = "SELECT anrede, vorname, nachname, str, plz, ort, alter18, id, date_format(gebdat,'%d.%m.%Y') gebdat_form, tan, tinyurl, mail, hochschule
FROM bpm_term_kand a, bpm_tanpool b, bpm_kandidat c
WHERE a.tp_id= b.tp_id
AND a.ka_id = c.ka_id
AND a.tm_id = $testtermin
ORDER BY nachname, vorname
";
$result2 = $db->query($query2) or die("Cannot execute query2");
$smarty->assign('termine_aktdat', date("d.m.Y H:i", time() ) ) ;
while ($row2 = $result2->fetch_array()) {
if($row2['alter18'] == 0){
$minderj = 'ja';
}
if($row2['alter18'] == 1){
$minderj = 'nein';
}
if($row2['hochschule'] == 'Ludwigsburg'){
$link = "https://www.hs-ludwigsburg.de/studium/public-management-ba/bewerben.html";
}
if($row2['hochschule'] == 'Kehl'){
$link = "http://www.hs-kehl.de/studium-lehre/bachelor-studiengaenge/public-management-ba/bewerbung/";
}
if($row2['hochschule'] == 'NA'){
$link = "http://www.hs-kehl.de/studium-lehre/bachelor-studiengaenge/public-management-ba/bewerbung/ bzw.<br>https://www.hs-ludwigsburg.de/studium/public-management-ba/bewerben.html";
}
$buffer.="
<pagebreak>
<page backtop='7mm' backbottom='10mm' style='font-size: 11pt'>
<h1>Anmeldedaten für $row2[vorname] $row2[nachname] ($row2[gebdat_form])</h1>
<br><br>
Bitte bewahren Sie die nachfolgenden Anmeldedaten für das gesamte Bewerbungsverfahren auf.
<br>
<br>
<table cellspacing='0' cellpadding='0' border='0.3'>
<thead>
<tr>
<td class='td2' width='350'>
<b>Persönliche ID</b>
</td>
<td class='td2' width='350'>
<b>Passwort/TAN</b>
</td>
</tr>
</thead>
<tr>
<td class='td2'>
$row2[id]
</td>
<td class='td2'>
$row2[tan]
</td>
</tr>
</table>
<br>
<br>
Weiterf&uuml;hrende Links:
<table cellspacing='0' cellpadding='0' border='0.3'>
<tr>
<td class='td2' width='150'>
<b>Weitere Informationen: </b>
</td>
<td class='td2' width='550'>
$link
</td>
</tr>
</table>
</page>";
}
#$mpdf->setFooter("Teilnehmerliste|$row_get_termin[tm_datum_form], $standort|{PAGENO} / {nb}");
$mpdf->setFooter("Testteilnehmer||$row_get_termin[tm_datum_form], $standort");
$mpdf->WriteHTML($buffer);
// Output a PDF file directly to the browser
$mpdf->Output();
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

12
admin/old/logout.php Normal file
View File

@ -0,0 +1,12 @@
<?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";
session_destroy();
$smarty->display("$template/admin/$templatename");
?>

151
admin/old/mail_test.php Normal file
View File

@ -0,0 +1,151 @@
<?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_parameter.php");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
$german = $db->query("SET lc_time_names = 'de_DE';");
$query1 = "SELECT a.tm_id, date_format(tm_datum, '%a, %d.%m.%Y - %H:%i Uhr')tm_datum_form, tm_standort
FROM bpm_termine a, bpm_term_kand b
WHERE a.tm_id=b.tm_id
AND a.tm_datum > ADDDATE(now(), -7)
GROUP BY a.tm_id, tm_datum_form, tm_standort
ORDER BY tm_datum ASC";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
if($row1['tm_standort'] == 'L'){
$standort = 'Ludwigsburg';
}
if($row1['tm_standort'] == 'K'){
$standort = 'Kehl';
}
$row1['tm_standort'] = $standort;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if ($action == 'mailsenden_test') {
$testtermin = $_POST["testtermin"];
$_SESSION["testtermin"] = $testtermin;
$german = $db->query("SET lc_time_names = 'de_DE';");
$query_termin = $db->query("SELECT date_format(tm_datum, '%a, %d.%m.%Y - %H:%i Uhr')tm_datum_form, tm_standort
FROM bpm_termine
WHERE tm_id = $testtermin");
$row_get_termin = $query_termin->fetch_array();
if($row_get_termin['tm_standort'] == 'L'){
$sender = 'Hochschule Ludwigsburg';
$sendermail = trim(get_parameter(8));
}
if($row_get_termin['tm_standort'] == 'K'){
$sender = 'Hochschule Kehl';
$sendermail = trim(get_parameter(7));
}
$smarty->assign('mail_sender', $sender);
$smarty->assign('mail_sendermail', $sendermail);
$query1 = "SELECT vorname, nachname, mail
FROM bpm_kandidat
WHERE ka_id IN (SELECT ka_id FROM bpm_term_kand WHERE tm_id = $testtermin)";
$result1 = $db->query($query1) or die("Cannot execute query1");
$mail = "";
while ($row1 = $result1->fetch_array()) {
$mail .= $row1['mail'].", ";
}
$mail = substr($mail,0,-2);
$smarty->assign('empfaenger', $mail);
}
if ($action == 'mailsenden2_test') {
$testtermin = $_SESSION["testtermin"];
$german = $db->query("SET lc_time_names = 'de_DE';");
$query_termin = $db->query("SELECT date_format(tm_datum, '%a, %d.%m.%Y - %H:%i Uhr')tm_datum_form, tm_standort
FROM bpm_termine
WHERE tm_id = $testtermin");
$row_get_termin = $query_termin->fetch_array();
if($row_get_termin['tm_standort'] == 'L'){
$sender = 'Hochschule Ludwigsburg';
$sendermail = trim(get_parameter(8));
}
if($row_get_termin['tm_standort'] == 'K'){
$sender = 'Hochschule Kehl';
$sendermail = trim(get_parameter(7));
}
$empfaenger_alle = $_POST['mail_mail'];
$betreff = $_POST['betreff'];
$text = $_POST['text'];
$empf_array = explode(",", $empfaenger_alle);
# echo "
# <pre>
# From: $sender - $sendermail<br>
# $empfaenger<br>
# $betreff<br>
# $text<br>";
# #print_r($empf_array);
# echo "</pre>";
# exit;
$style ="<head><style>p {margin: 0;}</style></head>";
$text = $style.$text;
for($i=0;$i<count($empf_array);$i++){
$empfaenger = trim($empf_array[$i]);
$query_kaid = $db->query("SELECT ka_id
FROM bpm_kandidat
WHERE mail = '$empfaenger'");
$row_kaid = $query_kaid->fetch_array();
## Mailversand:
$headers = "From: $sender <$sendermail>\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$return = @mail($empfaenger, $betreff, $text, $headers);
$heute = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y")); // heutiges Datum & Zeit: http://de2.php.net/manual/de/function.date.php
$datum_db = date("Y-m-d H:i:s", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll
$text_db = addslashes($text);
$betreff_db = addslashes($betreff);
if ($return) {
$sql1 = $db->query("INSERT INTO bpm_sonstige_mail (sender, sendermail, ka_id, empfaenger, mail_betreff, mail_text, status, sendedat)
VALUES ('$sender', '$sendermail', '$row_kaid[ka_id]', '$empfaenger', '$betreff', '$text_db', 'V', '$datum_db')
");
$smarty->assign('mail_senderg', "Die Mail wurde verschickt!");
} else {
$sql1 = $db->query("INSERT INTO bpm_sonstige_mail (sender, sendermail, ka_id, empfaenger, mail_betreff, mail_text, status, sendedat)
VALUES ('$sender', '$sendermail', '$row_kaid[ka_id]', '$empfaenger', '$betreff', '$text_db', 'F', '$datum_db')
");
$smarty->assign('mail_senderg', "Die Mail konnte nicht verschickt werden!<br>Prüfen Sie die Mailadresse das Kandidaten.");
}
}
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

84
admin/old/parameter.php Normal file
View File

@ -0,0 +1,84 @@
<?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("../config/func_cryption.php");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
$query1 = "SELECT pid, beschreibung, wert
FROM bpm_parameter
ORDER BY sort ASC";
$result1 = $db->query($query1) or die("Cannot execute query1");
$result_ct = $db->query("SELECT count(*) Anz FROM bpm_tanpool where verw_dat = '0000-00-00 00:00:00'");
$row_ct = $result_ct->fetch_array();
$smarty->assign('parameter_anzahltan', "$row_ct[Anz]");
while ($row1 = $result1->fetch_array()) {
# Passwort für die Praxisstellen wird verschlüsselt gespeichert
if(!isset($zaehler) or $zaehler == 1){
$zaehler = 0;
}else{
$zaehler = 1;
}
$row1['zaehler'] = $zaehler;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if($action == 'save'){
$query2 = "SELECT pid
FROM bpm_parameter
ORDER BY pid ASC";
$result2 = $db->query( $query2)
or die ("Cannot execute query2");
while ($row2 = $result2->fetch_array()){
$pid = $row2['pid'];
$pid_value = $_POST[$pid];
$sql1 = $db->query( "UPDATE bpm_parameter
SET wert = '$pid_value'
WHERE pid = $pid
" );
}
if(!$sql1){
$error = TRUE;
$error_reason .= "Fehler beim Update [bpm_parameter]<br>";
}else{
$error = FALSE;
$smarty->assign('parameter_inserterr', "2");
echo "<meta http-equiv=\"refresh\" content=\"2; URL=".$_SERVER['PHP_SELF'] ."?\">";
}
if($error){
$smarty->assign('parameter_inserterr', "1");
$smarty->assign('parameter_reason', "$error_reason"); // Kein Mailversand
} // Ende IF : Insert hat geklappt
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

View File

@ -0,0 +1,346 @@
<?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_tangen.php");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
if (isset($_GET['edit'])) {
$_SESSION["prxedit_status"] = 'edit';
$id = $_GET['edit'];
$_SESSION["prxedit_id"] = $id;
} else {
$_SESSION["prxedit_status"] = 'neu';
unset($_SESSION['prxedit_user']);
unset($_SESSION['prxedit_username']);
}
# Falls von bewerber_daten kommend
if($_GET['ka_id'] != ''){
$user = $_GET['ka_id'];
$result_name = $db->query("SELECT vorname, nachname
FROM bpm_kandidat
WHERE ka_id = $user");
$row_name = $result_name->fetch_array();
$_SESSION["prxedit_user"] = $user;
$_SESSION["prxedit_username"] = "$row_name[vorname] $row_name[nachname]";
# Falls aus bewerber_daten.php kommend, bietet man einen zurückbutton an
$smarty->assign('prxedit_value_user', $_SESSION["prxedit_user"]);
$smarty->assign('prxedit_value_username', $_SESSION["prxedit_username"]);
}
$result_all = $db->query("SELECT count(*) Anz
FROM bpm_dienststellen
");
$row_all = $result_all->fetch_array();
$smarty->assign('prxedit_value_anzall', $row_all['Anz']);
$result_unreg = $db->query("SELECT count(*) Anz
FROM bpm_dienststellen
WHERE register_dat = '0000-00-00 00:00:00'");
$row_unreg = $result_unreg->fetch_array();
$smarty->assign('prxedit_value_anzunreg', $row_unreg['Anz']);
$result_reg = $db->query("SELECT count(*) Anz
FROM bpm_dienststellen
WHERE register_dat != '0000-00-00 00:00:00'");
$row_reg = $result_reg->fetch_array();
$smarty->assign('prxedit_value_anzreg', $row_reg['Anz']);
# -- Fehlermeldungen -- #
if (isset($_GET['error'])) {
$errorno = $_GET['error'];
$smarty->assign('prxedit_error', 1);
$smarty->assign('prxedit_value_art', $_SESSION["prxedit_value_art"]);
$smarty->assign('prxedit_value_name', $_SESSION["prxedit_value_name"]);
$smarty->assign('prxedit_value_str', $_SESSION["prxedit_value_str"]);
$smarty->assign('prxedit_value_plz', $_SESSION["prxedit_value_plz"]);
$smarty->assign('prxedit_value_ort', $_SESSION["prxedit_value_ort"]);
$smarty->assign('prxedit_value_mail', $_SESSION["prxedit_value_mail"]);
$smarty->assign('prxedit_value_gueltigvon', $_SESSION["prxedit_value_gueltigvon"]);
$smarty->assign('prxedit_value_gueltigbis', $_SESSION["prxedit_value_gueltigbis"]);
if ($errorno == 3) {
# ungültiges Datum
$smarty->assign('prxedit_error_text', "Das eingegebene Gültig von Datum ist nicht korrekt. Bitte korrigieren Sie das Datum!");
}
if ($errorno == 4) {
# ungültiges Datum
$smarty->assign('prxedit_error_text', "Das eingegebene Gültig bis Datum ist nicht korrekt. Bitte korrigieren Sie das Datum!");
}
}
# --- Wenn Werte editiert werden ------------
if ($_SESSION["prxedit_status"] == 'edit') {
$result_edit = $db->query("SELECT dst_id, bezeichnung, name, str, plz, ort, mail, date_format(gueltig_von, '%d.%m.%Y') gueltig_von_form, date_format(gueltig_bis, '%d.%m.%Y') gueltig_bis_form
FROM bpm_dienststellen
WHERE dst_id = $id");
$row_edit = $result_edit->fetch_array();
if($row_edit['gueltig_von_form'] == '00.00.0000'){
$gueltig_von_form = "";
}else{
$gueltig_von_form = $row_edit['gueltig_von_form'];
}
if($row_edit['gueltig_bis_form'] == '00.00.0000'){
$gueltig_bis_form = "";
}else{
$gueltig_bis_form = $row_edit['gueltig_bis_form'];
}
$smarty->assign('prxedit_value_art', "$row_edit[bezeichnung]");
$smarty->assign('prxedit_value_name', "$row_edit[name]");
$smarty->assign('prxedit_value_str', "$row_edit[str]");
$smarty->assign('prxedit_value_plz', "$row_edit[plz]");
$smarty->assign('prxedit_value_ort', "$row_edit[ort]");
$smarty->assign('prxedit_value_mail', "$row_edit[mail]");
$smarty->assign('prxedit_value_gueltigvon', "$gueltig_von_form");
$smarty->assign('prxedit_value_gueltigbis', "$gueltig_bis_form");
}
# --- 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["prxedit_status"] = 'neu';
}
}
if ($action == 'save') {
$art = $_POST['art'];
$name = $_POST['name'];
$str = $_POST['str'];
$plz = $_POST['plz'];
$ort = $_POST['ort'];
$mail = $_POST['mail'];
$gueltigvon = $_POST['gueltigvon'];
$gueltigbis = $_POST['gueltigbis'];
$regmail = $_POST['regmail'];
$_SESSION["prxedit_value_art"] = $art;
$_SESSION["prxedit_value_name"] = $name;
$_SESSION["prxedit_value_str"] = $str;
$_SESSION["prxedit_value_plz"] = $plz;
$_SESSION["prxedit_value_ort"] = $ort;
$_SESSION["prxedit_value_mail"] = $mail;
$gueltigvon_form = preg_replace('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', '$3-$2-$1', $gueltigvon);
$gueltigbis_form = preg_replace('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', '$3-$2-$1', $gueltigbis);
function validateDate($date, $format = 'Y-m-d')
{
$d = DateTime::createFromFormat($format, $date);
return $d && $d->format($format) == $date;
}
if(!validateDate($gueltigvon_form) AND $gueltigvon_form != ''){
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?error=3\">";
exit;
}
if(!validateDate($gueltigbis_form) AND $gueltigbis_form != ''){
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?error=4\">";
exit;
}
if($gueltigvon_form == ''){
$gueltigvon_form ='0000-00-00';
}
if($gueltigbis_form == ''){
$gueltigbis_form ='0000-00-00';
}
$bez = $art." ".$name;
#$datum = date("Y-m-d H:i:s");
if ($_SESSION["prxedit_status"] == 'neu') {
$tan = tangen();
$sql1 = $db->query("INSERT INTO bpm_dienststellen ( bezeichnung
, name
, bez
, str
, plz
, ort
, mail
, init_tan
, gueltig_von
, gueltig_bis
)
VALUES
( '$art'
, '$name'
, '$bez'
, '$str'
, '$plz'
, '$ort'
, '$mail'
, '$tan'
, '$gueltigvon_form'
, '$gueltigbis_form'
)
");
}
if ($_SESSION["prxedit_status"] == 'edit') {
$id = $_SESSION["prxedit_id"];
$ka_id = $_SESSION["prxedit_user"];
if($regmail == 'j'){
$tan = tangen();
$result = $db->query("UPDATE bpm_dienststellen
SET bezeichnung = '$art'
, name = '$name'
, bez = '$bez'
, str = '$str'
, plz = '$plz'
, ort = '$ort'
, mail = '$mail'
, init_tan = '$tan'
, gueltig_von = '$gueltigvon_form'
, gueltig_bis = '$gueltigbis_form'
, regmail_betreff = ''
, regmail_text = ''
, regmail_status = 'O'
, regmail_sendedat = '0000-00-00 00:00:00'
, pwd = ''
, register_dat = '0000-00-00 00:00:00'
WHERE dst_id = $id
");
}else{
$result = $db->query("UPDATE bpm_dienststellen
SET bezeichnung = '$art'
, name = '$name'
, bez = '$bez'
, str = '$str'
, plz = '$plz'
, ort = '$ort'
, mail = '$mail'
, gueltig_von = '$gueltigvon_form'
, gueltig_bis = '$gueltigbis_form'
WHERE dst_id = $id
");
}
unset($_SESSION['prxedit_id']);
}
# 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&ka_id=$ka_id\">";
}
if ($action == 'del') {
$id = $_GET['id'];
$del1 = $db->query("DELETE FROM bpm_termine WHERE id = $id");
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "\">";
}
if ($action == 'mailsenden') {
$dst_id = $_GET['dst_id'];
$result_erg = $db->query("SELECT regmail_betreff, regmail_text, mail
FROM bpm_dienststellen
WHERE dst_id =$dst_id");
$row_erg = $result_erg->fetch_array();
$sender = "Hochschule Ludwigsburg";
$sendermail = get_parameter(8);
$smarty->assign('mail_sender', $sender);
$smarty->assign('mail_sendermail', $sendermail);
$smarty->assign('mail_text', $row_erg['regmail_text']);
$smarty->assign('mail_betreff', $row_erg['regmail_betreff']);
$smarty->assign('mail_mail', $row_erg['mail']);
$smarty->assign('mail_dstid', $dst_id);
}
if ($action == 'mailsenden2') {
$dst_id = $_POST['dst_id'];
$sender = $_POST['mail_sender'];
$sendermail = $_POST['mail_sendermail'];
$empfaenger = $_POST['mail_mail'];
$betreff = $_POST['betreff'];
$text = $_POST['text'];
#Beim CKEDITOR die <p> Tags mit Zeilenabstand 0 in der Mail
$style ="<head>
<style>
p {margin: 0;}
</style>
</head>
";
$text = $style.$text;
#echo "
#From: $sender - $sendermail<br>
#$empfaenger<br>
#$betreff<br>
#$text<br>";
#exit;
## Mailversand:
$headers = "From: $sender <$sendermail>\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$return = @mail($empfaenger, $betreff, $text, $headers);
$heute = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y")); // heutiges Datum & Zeit: http://de2.php.net/manual/de/function.date.php
$datum_db = date("Y-m-d H:i:s", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll
$text_db = addslashes($text);
$betreff_db = addslashes($betreff);
if ($return) {
$sql1 = $db->query("UPDATE bpm_dienststellen
SET regmail_text = '$text_db'
, regmail_betreff = '$betreff'
, regmail_status = 'V'
, regmail_sendedat = '$datum_db'
WHERE dst_id = $dst_id
");
$smarty->assign('mail_senderg', "Die Mail wurde verschickt!");
} else {
$sql1 = $db->query("UPDATE bpm_dienststellen
SET regmail_text = '$text_db'
, regmail_betreff = '$betreff_db'
, status = 'F'
WHERE dst_id = $dst_id
");
$smarty->assign('mail_senderg', "Die Mail konnte nicht verschickt werden!<br>Prüfen Sie die Mailadresse der Praxissstelle.");
}
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

View File

@ -0,0 +1,151 @@
<?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");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
if (isset($_GET['edit'])) {
$_SESSION["news_status"] = 'edit';
$pn_id = $_GET['edit'];
$_SESSION["news_pn_id"] = $pn_id;
} else {
$_SESSION["news_status"] = 'neu';
}
# -- Fehlermeldungen -- #
if (isset($_GET['error'])) {
$errorno = $_GET['error'];
$smarty->assign('news_error', 1);
$smarty->assign('news_value_headline', $_SESSION["news_value_headline"]);
$smarty->assign('news_value_text', $_SESSION["news_value_text"]);
if ($errorno == 1) {
# ungültiges Datum
$smarty->assign('news_error_text', "Bitte füllen Sie alle Felder aus!");
}
}
# --- Wenn Werte editiert werden ------------
if ($_SESSION["news_status"] == 'edit') {
$result_edit = $db->query("SELECT pn_id, pn_headline, pn_text
FROM bpm_prxnews
WHERE pn_id = $pn_id");
$row_edit = $result_edit->fetch_array();
$smarty->assign('news_value_headline', "$row_edit[pn_headline]");
$smarty->assign('news_value_text', "$row_edit[pn_text]");
}
# --- 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["news_status"] = 'neu';
}
# Gespeicherte Werte
$query1 = "SELECT pn_id, pn_headline, pn_text, date_format(pn_date, '%d.%m.%Y - %H:%i Uhr') pn_date_form
FROM bpm_prxnews
ORDER BY pn_date DESC";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if ($action == 'save') {
$headline = $_POST['headline'];
$text = $_POST['text'];
$_SESSION["news_value_headline"] = $headline;
$_SESSION["news_value_text"] = $text;
if($text == "" or $headline == ""){
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?error=1\">";
exit;
}
$datum = date("Y-m-d H:i:s");
$headline_db = addslashes($headline);
$text_db = addslashes($text);
if ($_SESSION["news_status"] == 'neu') {
$sql1 = $db->query("INSERT INTO bpm_prxnews ( pn_headline
, pn_text
, pn_date
)
VALUES
( '$headline_db'
, '$text_db'
, '$datum'
)
");
}
if ($_SESSION["news_status"] == 'edit') {
$pn_id = $_SESSION["news_pn_id"];
$result = $db->query("UPDATE bpm_prxnews
SET pn_headline = '$headline_db'
, pn_text = '$text_db'
WHERE pn_id = $pn_id
");
unset($_SESSION['news_pn_id']);
}
# 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 == 'show') {
$pn_id = $_GET['pn_id'];
$result_show = $db->query("SELECT pn_headline, pn_text
FROM bpm_prxnews
WHERE pn_id = $pn_id
");
$row_show = $result_show->fetch_array();
$smarty->assign('prx_show_headline', $row_show['pn_headline']);
$smarty->assign('prx_show_text', $row_show['pn_text']);
}
if ($action == 'del') {
$pn_id = $_GET['pn_id'];
$del1 = $db->query("DELETE FROM bpm_prxnews WHERE pn_id = $pn_id");
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "\">";
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

163
admin/old/prx_search.php Normal file
View File

@ -0,0 +1,163 @@
<?php
require_once("../config.inc.php");
require_once("../config/func_cryption.php");
$db = dbconnect();
if($_GET['search'] == 'reg'){
$result1 = $db->query("SELECT dst_id, bezeichnung, name, str, plz, ort, mail, date_format(gueltig_von, '%d.%m.%Y') gueltig_von_form, date_format(gueltig_bis, '%d.%m.%Y') gueltig_bis_form
, gueltig_von, gueltig_bis, register_dat, init_tan, regmail_status, date_format(regmail_sendedat, '%d.%m.%Y - %H:%i') regmail_sendedat_form
FROM bpm_dienststellen
WHERE register_dat != '0000-00-00 00:00:00'
ORDER BY name ASC");
}elseif($_GET['search'] == 'unreg'){
$result1 = $db->query("SELECT dst_id, bezeichnung, name, str, plz, ort, mail, date_format(gueltig_von, '%d.%m.%Y') gueltig_von_form, date_format(gueltig_bis, '%d.%m.%Y') gueltig_bis_form
, gueltig_von, gueltig_bis, register_dat, init_tan, regmail_status, date_format(regmail_sendedat, '%d.%m.%Y - %H:%i') regmail_sendedat_form
FROM bpm_dienststellen
WHERE register_dat = '0000-00-00 00:00:00'
ORDER BY name ASC");
}else{
$result1 = $db->query("SELECT dst_id, bezeichnung, name, str, plz, ort, mail, date_format(gueltig_von, '%d.%m.%Y') gueltig_von_form, date_format(gueltig_bis, '%d.%m.%Y') gueltig_bis_form
, gueltig_von, gueltig_bis, register_dat, init_tan, regmail_status, date_format(regmail_sendedat, '%d.%m.%Y - %H:%i') regmail_sendedat_form
FROM bpm_dienststellen
WHERE upper(name) LIKE '%" . strtoupper($_GET['search']) . "%'
OR plz LIKE '%" . $_GET['search'] . "%'
OR bezeichnung LIKE '%" . $_GET['search'] . "%'
ORDER BY name ASC");
}
echo "
<table width='100%' border='1' cellspacing='0' cellpadding='0'>
<tr>
<td style='padding-left:5px'>
<b>#</b>
</td>
<td style='padding-left:5px'>
<b>Behördenart</b>
</td>
<td style='padding-left:5px'>
<b>Name</b>
</td>
<td style='padding-left:5px'>
<b>Straße</b>
</td>
<td style='padding-left:5px'>
<b>PLZ</b>
</td>
<td style='padding-left:5px'>
<b>Ort</b>
</td>
<td style='padding-left:5px'>
<b>Mailadresse</b>
</td>
<td style='padding-left:5px'>
<b>Registrierungstan</b>
</td>
<td style='padding-left:5px'>
<b>Registrierungslink</b>
</td>
<td style='padding-left:5px'>
<b>Registrierungsmail</b>
</td>
<td style='padding-left:5px'>
<b>Gültig von</b>
</td>
<td style='padding-left:5px'>
<b>Gültig bis</b>
</td>
<td align='center'>
<b>Edit</b>
</td>
</tr>
";
while($row = $result1->fetch_array())
{
if($row['gueltig_von'] != '0000-00-00'){
$gueltig_von = $row['gueltig_von_form'];
}else{
$gueltig_von = '';
}
if($row['gueltig_bis'] != '0000-00-00'){
$gueltig_bis = $row['gueltig_bis_form'];
}else{
$gueltig_bis = '';
}
if($row['register_dat'] == '0000-00-00 00:00:00'){
$tan = $row['init_tan'];
$id_url = cryption($row['dst_id'], 'e');
$link_register = "<a href='../praxisstelle/register.php?dst=$id_url' target='_new'>Registrierungslink</a>";
$status = "";
}else{
$tan = "";
$link_register = "";
}
if ($row['regmail_status'] == 'V') {
$status = "<a class='aformlink box' title='Mail erneut senden' href='praxisstellen_edit.php?action=mailsenden&dst_id=$row[dst_id]'>Versendet</a><br>$row[regmail_sendedat_form]";
}
if ($row['regmail_status'] == 'F') {
$status = "<a class='aformlink box' title='Mail erneut senden' href='praxisstellen_edit.php?action=mailsenden&dst_id=$row[dst_id]'>Fehler</a>";
}
$lnnr++;
echo '<tr>';
echo '<td style="padding-left:5px">';
echo $lnnr;
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $row['bezeichnung']);
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $row['name']);
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $row['str']);
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $row['plz']);
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $row['ort']);
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $row['mail']);
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $tan);
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $link_register);
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $status);
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $gueltig_von);
echo '</td>';
echo '<td style="padding-left:5px">';
echo preg_replace('/(' . $_GET['search'] . ')/Usi', '<span class="result">\\1</span>', $gueltig_bis);
echo '</td>';
echo '<td align="center">';
echo '<a href=?edit='.$row['dst_id'].'><img title = "Stelle bearbeiten" border="0" height=10 src="../templates/modern/images/edit.png"></a>';
echo '</td>';
echo '</tr>';
}
echo "</table>";
?>

72
admin/old/rangliste2.php Normal file
View File

@ -0,0 +1,72 @@
<?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";
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
# Gespeicherte Werte
$query1 = "SELECT a.ka_id, vorname, nachname, date_format(tm_datum, '%d.%m.%Y um %H:%i Uhr') tm_datum, CASE tm_standort
WHEN 'L' THEN 'Ludwigsburg'
WHEN 'K' THEN 'Kehl'
ELSE '' END as tm_standort
, summe
, id
, mail
FROM bpm_kandidat a, bpm_term_kand b, bpm_termine c, bpm_ergebnisse d, bpm_tanpool e
WHERE a.ka_id = b.ka_id
AND b.tm_id = c.tm_id
AND a.ka_id = d.ka_id
AND b.tp_id = e.tp_id
AND a.ka_id IN (SELECT distinct ka_id FROM bpm_ergebnisse)
AND a.ka_id IN (SELECT distinct ka_id FROM bpm_upload WHERE upload_dat != '0000-00-00 00:00:00')
AND d.bestanden = '1'
AND e.tan=d.tan
ORDER BY summe DESC, nachname ASC, vorname ASC
";
$result1 = $db->query($query1) or die("Cannot execute query1");
$row_cnt = $result1->num_rows;
$smarty->assign('dokverw_anzdb', $row_cnt);
$rangliste = 0;
$lfd_nr2 = 0;
$lfd_nr3 = 0;
$summevorher = 0;
while ($row1 = $result1->fetch_array()) {
$lfd_nr2++;
$summe = $row1['summe'];
if($summe == $summevorher){
$rangliste = $lfd_nr3;
}else{
$rangliste = $lfd_nr2;
$lfd_nr3 = $lfd_nr2;
}
$summevorher = $row1['summe'];
$row1['rangliste'] = $rangliste;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

View File

@ -0,0 +1,104 @@
<?php
# Orner phpspreadsheet_1.8.1.0_php-7.0 für Hoschschule verwenden
#require_once "../phpspreadsheet-1.13_php-7.4/vendor/autoload.php";
require_once "../phpspreadsheet_1.8.1.0_php-7.0/vendor/autoload.php";
require_once("../config.inc.php");
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
#$spreadsheet->getActiveSheet()->getPageSetup()->setFitToWidth(1);
#$spreadsheet->getActiveSheet()->getPageSetup()->setFitToHeight(0);
$activeSheet = $spreadsheet->getActiveSheet();
$activeSheet->getStyle('A1:G1')->applyFromArray(
array(
'font' => array(
'bold' => true
)
)
);
$activeSheet->setCellValue('A1', 'Ranglistenplatz');
$activeSheet->setCellValue('B1', 'Vorname');
$activeSheet->setCellValue('C1', 'Nachname');
$activeSheet->setCellValue('D1', 'Mail');
$activeSheet->setCellValue('E1', 'ID');
$activeSheet->setCellValue('F1', 'Testdatum');
$activeSheet->setCellValue('G1', 'Ergebnis');
$activeSheet->freezePane('H2');
$query = $db->query("SELECT a.ka_id, vorname, nachname, date_format(tm_datum, '%d.%m.%Y um %H:%i Uhr') tm_datum, CASE tm_standort
WHEN 'L' THEN 'Ludwigsburg'
WHEN 'K' THEN 'Kehl'
ELSE '' END as tm_standort
, summe
, id
, mail
FROM bpm_kandidat a, bpm_term_kand b, bpm_termine c, bpm_ergebnisse d, bpm_tanpool e
WHERE a.ka_id = b.ka_id
AND b.tm_id = c.tm_id
AND a.ka_id = d.ka_id
AND b.tp_id = e.tp_id
AND a.ka_id IN (SELECT distinct ka_id FROM bpm_ergebnisse)
AND a.ka_id IN (SELECT distinct ka_id FROM bpm_upload WHERE upload_dat != '0000-00-00 00:00:00')
AND d.bestanden = '1'
AND e.tan=d.tan
ORDER BY summe DESC, nachname ASC, vorname ASC
");
if($query->num_rows > 0) {
$i = 2;
$rangliste = 0;
$lfd_nr2 = 0;
$lfd_nr3 = 0;
$summevorher = 0;
while($row = $query->fetch_assoc()) {
$lfd_nr2++;
$summe = $row['summe'];
if($summe == $summevorher){
$rangliste = $lfd_nr3;
}else{
$rangliste = $lfd_nr2;
$lfd_nr3 = $lfd_nr2;
}
$summevorher = $row['summe'];
$activeSheet->setCellValue('A'.$i , $rangliste);
$activeSheet->setCellValue('B'.$i , $row['nachname']);
$activeSheet->setCellValue('C'.$i , $row['vorname']);
$activeSheet->setCellValue('D'.$i , $row['mail']);
$activeSheet->setCellValue('E'.$i , $row['id']);
$activeSheet->setCellValue('F'.$i , "$row[tm_datum] ($row[tm_standort])");
$activeSheet->setCellValue('G'.$i , $row['summe']);
$i++;
}
}
$spreadsheet->getActiveSheet()->setTitle("Rangliste 2");
$spreadsheet->getActiveSheet()->setSelectedCell('A1');
$spreadsheet->getActiveSheet()->getColumnDimension('A')->setAutoSize(true);
$spreadsheet->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);
$spreadsheet->getActiveSheet()->getColumnDimension('C')->setAutoSize(true);
$spreadsheet->getActiveSheet()->getColumnDimension('D')->setAutoSize(true);
$spreadsheet->getActiveSheet()->getColumnDimension('E')->setAutoSize(true);
$spreadsheet->getActiveSheet()->getColumnDimension('F')->setAutoSize(true);
$spreadsheet->getActiveSheet()->getColumnDimension('G')->setAutoSize(true);
$writer = new Xlsx($spreadsheet);
$filename = 'Rangliste2.xlsx';
header('Content-type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename='. $filename);
header('Cache-Control: max-age=0');
$writer->save('php://output');
?>

88
admin/old/save_note.php Normal file
View File

@ -0,0 +1,88 @@
<?php
if(!isset($_SESSION)) { session_start(); }
require_once("../config/datenbankanbindung.php");
require_once("../func_notenskala.php");
function floor3($val, $precision) {
$pos = strpos($val, '.');
$zahl = substr($val, 0, $pos+1+$precision);
return $zahl;
}
$notenart = $_POST['get_notenart'];
$note = floor3(str_replace(',','.',str_replace('.','', $_POST['get_note'])),1);
$notenskala = $_POST['get_notenskala'];
$ka_id = $_SESSION["username"];;
$db = dbconnect();
#echo $hzbnote;
if($notenart == "Keine"){
NULL;
echo "reload";
}
if($notenart == "HZB"){
$durchschnittnote = "0.00";
$durchschnittpunkte = "0.00";
$erfdat_schnitt = "0000-00-00 00:00:00";
if($notenskala == "Punkte"){
$hzbnote = notenskala($note);
$hzbpunkte = $note;
$erfdat_hzb = date("Y-m-d H:i:s");
}elseif($notenskala == "Noten"){
$hzbnote = $note;
$hzbpunkte = "0.00";
$erfdat_hzb = date("Y-m-d H:i:s");
}
}
if($notenart == "Durchschnitt"){
$hzb = "0.00";
$hzb_punkte = "0.00";
$erfdat_hzb = "0000-00-00 00:00:00";
if($notenskala == "Punkte"){
$durchschnittnote = notenskala($note);
echo "notenwert1||(= Note: ".number_format($durchschnittnote, 1, ',', '.').")";
$durchschnittpunkte = $note;
$erfdat_schnitt = date("Y-m-d H:i:s");
}elseif($notenskala == "Noten"){
$durchschnittnote = $note;
$durchschnittpunkte = "0.00";
$erfdat_schnitt = date("Y-m-d H:i:s");
}
}
$query_anz = $db->query("SELECT count(*) Anz
FROM bpm_note
WHERE ka_id = $ka_id");
$row_anz = $query_anz->fetch_array();
if($row_anz['Anz'] == 0){
#Insert
$sql1 = $db->query("INSERT INTO bpm_note (ka_id, hzb, hzb_punkte, zeugnisschnitt, zeugnisschnitt_punkte, erfdat_hzb, erfdat_schnitt) VALUES('$ka_id', '$hzbnote', '$hzbpunkte', '$durchschnittnote', '$durchschnittpunkte', '$erfdat_hzb', '$erfdat_schnitt')");
}else{
#Update
$sql1 = $db->query("UPDATE bpm_note
SET hzb = '$hzbnote'
,hzb_punkte = '$hzbpunkte'
,zeugnisschnitt = '$durchschnittnote'
,zeugnisschnitt_punkte = '$durchschnittpunkte'
,erfdat_hzb = '$erfdat_hzb'
,erfdat_schnitt = '$erfdat_schnitt'
WHERE ka_id = '$ka_id'");
}
exit;
?>

274
admin/old/tanimport.php Normal file
View File

@ -0,0 +1,274 @@
<?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_parameter.php");
require_once("../config/func_cryption.php");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
#########Konfiguration#######################################
$verz = "upload_csv/"; // relatives Uploadverzeichnis (relativ zum 'Standort' dieser Datei, wohin die Dateien kopiert werden sollen
$trennzeichen_excel = "\t"; // Das Trennzeichen das Excel f&uuml;r CVS-Dateien nimmt ist je nach Excelversion unterschiedlich:
// Entweder $trennzeichen_excel = ";"; --> Semikolon
// oder $trennzeichen_excel = ","; --> Komma
#############################################################
$_SESSION["ck_verz"] = $verz;
if ($action == '') {
# Den Testtermin wählt man, damit jede Hochschule seine eigenen Daten importieren kann. Wenn eine Hochschule am selben TAg einen Test hat vermeidet man dass ein halbfertiger Test importiert wird
if (isset($_POST["testtermin"])) {
$testtermin = $_POST["testtermin"];
} else {
$testtermin = $_SESSION["testtermin"];
}
$_SESSION["testtermin"] = $testtermin;
# Uploadverzeichnis aufräumen. Temporäre Dateien, die älter als 2 Wochen sind, werden gelöscht
$dir = $_SERVER["DOCUMENT_ROOT"].dirname($_SERVER['PHP_SELF'])."/$verz";
$folder = dir($dir);
while ($dateiname = $folder->read()) {
if (filetype($dir.$dateiname) != "dir") {
if (strtotime("-2 weeks") >
@filemtime($dir.$dateiname)) {
if (@unlink($dir.$dateiname) != false){
# echo $dateiname.' wurde gelöscht<br>';
}else{
# echo $dateiname.' konnte nichtgelöscht werden<br>';
}
}
}
}
$result_ct = $db->query("SELECT count(*) Anz FROM bpm_tanpool where verw_dat = '0000-00-00 00:00:00'");
$row_ct = $result_ct->fetch_array();
$smarty->assign('tanimp_anzahltan', "$row_ct[Anz]");
# Fehler beim Upload anzeigen
if (isset($_GET['error'])) {
$errorno = $_GET['error'];
$smarty->assign('index_error', 1);
if ($errorno == 1) {
$smarty->assign('index_error_text', "Es dürfen nur CSV Dateien hochgeladen werden.");
}
if ($errorno == 2) {
# Tabelle bpm_parameter
$size_mb = trim(get_parameter(12));
$smarty->assign('index_error_text', "Die Datei ist zu groß. Die Dateigröße darf max. $size_mb MB betragen.");
}
if ($errorno == 3) {
$smarty->assign('index_error_text', "Vorgang wurde abgebrochen. Die Datei wurde vom Server gelöscht");
}
if ($errorno == 4) {
$smarty->assign('index_error_text', "Vorgang wurde abgebrochen. Die Datei wurde nicht vom Server gelöscht");
}
}
}
if ($action == 'csvimp') {
$testtermin = $_SESSION["testtermin"];
// http://www.tutorials.de/tutorials65420.html
#echo '<pre>', print_r($_POST, true), '</pre>';
$tempname = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
$einheit = "Byte"; // F&uuml;r die Efolgsmeldung.
$limitedext = array(
".csv"
); //Erlaubte Dateieindung beim Upload
$extlimit = "yes"; //Do you want to limit the extensions of files uploaded
$ext = strrchr($name, '.');
if (($extlimit == "yes") && (!in_array($ext, $limitedext))) {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?error=1\">";
exit;
}
# Tabelle bpm_parameter
$size_mb = trim(get_parameter(12));
$size_bt = $size_mb * 1024 * 1024;
if ($size > $size_bt) {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?error=2\">";
exit;
}
$name = str_replace(array(
"&auml;",
"&ouml;",
"&uuml;",
"&szlig;",
"&Auml;",
"&Ouml;",
"&Uuml;",
" "
), array(
"ae",
"oe",
"ue",
"ss",
"Ae",
"Oe",
"Ue",
"_"
), $name);
$heute = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y")); // heutiges Datum & Zeit: http://de2.php.net/manual/de/function.date.php
$heuteformat = date("H-i-s_Y-m-d", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll
$datum_db = date("Y-m-d H:i:s", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll
$neu = $heuteformat . "_" . $name;
$_SESSION["ck_neu"] = $neu;
move_uploaded_file("$tempname", "$verz$neu"); // Unterverzeichnisse wie folgt: copy("$tempname", "pdf/$neu");
$handle = fopen("$verz$neu", "r"); // Datei zum Lesen &ouml;ffnen
# Hier vor der Schleife erste Zeile holen und ignorieren. Enthält Überschrift
# fgetcsv($handle, 0, $trennzeichen_excel);
while (($data = fgetcsv($handle, 0, $trennzeichen_excel)) !== FALSE) { // Daten werden aus der Datei in ein Array $data gelesen
if(!isset($zaehler) or $zaehler == 1){
$zaehler = 0;
}else{
$zaehler = 1;
}
$tan = $data[3];
$tinyurl = $data[4];
$row1['zaehler'] = $zaehler;
$row1['tan'] = $tan;
$row1['tinyurl'] = $tinyurl;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
fclose($handle);
}
if ($action == 'csvimp2') {
$neu = $_SESSION["ck_neu"]; //CSV-Dateinamen um Datei l&ouml;schen zu k&ouml;nnen
$verz = $_SESSION["ck_verz"]; //Uploadverzeichnis aus Cookie holen
$testtermin = $_SESSION["testtermin"];
if ($_POST['import'] == "0") // DS sollen nicht importiert werden
{
$dateiname = "$verz$neu";
if (@unlink($dateiname)) // Funktion l&ouml;scht Dateien und gibt true / false zur&uuml;ck
{
# Abbruch, datei gelöscht
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?error=3\">";
exit;
} else {
# Abbruch, datei nicht gelöscht
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?error=4\">";
exit;
} // End if
} elseif ($_POST['import'] == "1") // DS sollen importiert werden
{
$handle = fopen("$verz$neu", "r"); // Datei zum Lesen &ouml;ffnen
while (($data = fgetcsv($handle, 0, $trennzeichen_excel)) !== FALSE) { // Daten werden aus der Datei in ein Array $data gelesen
$dummy_vorname = $data[0];
$dummy_name = $data[1];
$tan = $data[3];
$tinyurl = $data[4];
$result_ct = $db->query("SELECT count(*) Anz
FROM bpm_tanpool
WHERE tan = '$tan'");
$row_ct = $result_ct->fetch_array();
if ($row_ct['Anz'] == 0) {
# keine TANs vorhanden, insert
$sql1 = $db->query("insert into bpm_tanpool (dummy_name
, dummy_vorname
, tan
, tinyurl
, aktiv)
VALUES ( '$dummy_name'
, '$dummy_vorname'
, '$tan'
, '$tinyurl'
, 'A'
)");
if (!$sql1) {
$hinweis['hinweis'] = "TAN: " . $tan . " Fehler: TAN nicht gespeichert<br>";
$smarty->assign('index_error', 1);
}
} else {
# Ergebnisse gibt es schon, kein insert
$hinweis['hinweis'] = "TAN: " . $tan . " schon vorhanden<br>";
$smarty->assign('index_error', 1);
}
$table_data2[] = $hinweis;
}
$smarty->assign('table_data2', $table_data2);
fclose($handle);
} else { // Es wurde kein Radiobutton gew&auml;hlt! Technisch aber ausgeschlossen
echo "sie m&uuml;ssen eine Auswahl treffen";
}
function deleteFiles($verz)
{
$handle = opendir($verz);
while ($file = readdir($handle)) {
if ($file != "." && $file != "..") {
$datei = $verz . $file;
if (@unlink($datei)) {
$error = TRUE;
} else {
$error = FALSE;
}
}
}
closedir($handle);
return $error;
}
deleteFiles($verz); // Dateien werden im Uploadverzeichnis gel&ouml;scht, falls noch welche darin w&auml;ren
} // ende Action
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

352
admin/old/termine.php_bcc Normal file
View File

@ -0,0 +1,352 @@
<?php
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");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
if (isset($_GET['edit'])) {
$_SESSION["termine_status"] = 'edit';
$tm_id = $_GET['edit'];
$_SESSION["termine_tm_id"] = $tm_id;
} 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_tm_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_tm_referenznr', $_SESSION["termine_value_tm_referenznr"]);
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 tm_id, date_format(tm_datum, '%d.%m.%Y') datum, date_format(tm_datum, '%H:%i') zeit, tm_standort, tm_plaetze, tm_raum, tm_referenznr
FROM dvm_termine
WHERE tm_id = $tm_id");
$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_tm_referenznr', "$row_edit[tm_referenznr]");
}
# --- 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 tm_id, date_format(tm_datum, '%d.%m.%Y') datum, date_format(tm_datum, '%H:%i') zeit, tm_standort, tm_plaetze, tm_raum, tm_referenznr
FROM dvm_termine
WHERE tm_datum > now()
ORDER BY tm_datum ASC, zeit ASC";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
if($row1['tm_standort'] == 'L'){
$standort = 'Ludwigsburg';
}
if($row1['tm_standort'] == 'K'){
$standort = 'Kehl';
}
$restplatz = get_restplatz($row1['tm_id']);
if($restplatz != $row1['tm_plaetze']){
$disable = 0;
}else{
$disable = 1;
}
$row1['restplatz'] = $restplatz;
$row1['tm_disable'] = $disable;
$row1['standort_form'] = $standort;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if ($action == 'save') {
$tm_datum = $_POST['tm_datum'];
$tm_zeit = $_POST['tm_zeit'];
$tm_plaetze = $_POST['tm_plaetze'];
$tm_standort = $_POST['tm_standort'];
$tm_raum = $_POST['tm_raum'];
$tm_referenznr = trim($_POST['tm_referenznr']);
$_SESSION["termine_value_tm_datum"] = $tm_datum;
$_SESSION["termine_value_tm_zeit"] = $tm_zeit;
$_SESSION["termine_value_tm_plaetze"] = $tm_plaetze;
$_SESSION["termine_value_tm_standort"] = $tm_standort;
$_SESSION["termine_value_tm_raum"] = $tm_raum;
$_SESSION["termine_value_tm_referenznr"] = $tm_referenznr;
$tm_datum_form = preg_replace('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', '$3-$2-$1', $tm_datum);
$testdatum = $tm_datum_form." ".$tm_zeit.":00";
$_SESSION["termine_value_tm_testdatum"] = $testdatum;
function validateDate($date, $format = 'Y-m-d')
{
$d = DateTime::createFromFormat($format, $date);
return $d && $d->format($format) == $date;
}
if(!validateDate($tm_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 dvm_termine ( tm_datum
, tm_standort
, tm_plaetze
, tm_raum
, tm_referenznr
)
VALUES
( '$testdatum'
, '$tm_standort'
, '$tm_plaetze'
, '$tm_raum'
, '$tm_referenznr'
)
");
}
if ($_SESSION["termine_status"] == 'edit') {
$tm_id = $_SESSION["termine_tm_id"];
# Prüfen, ob zu diesem Termin bereits Kandidaten gebucht sind. Wenn ja, dann Weiterleitung zum Mailanschreiben und dann Termin ändern
$result_vorh = $db->query("SELECT count(*) Anz
FROM dvm_term_kand
WHERE tm_id ='$tm_id'
");
$row_vorh = $result_vorh->fetch_array();
# Prüfen, ob der Kandidat angeschrieben werden muss. Nur bei einer Änderung der Anzahl muss der Kandidat nicht extra informiert werden
$result_vorh1 = $db->query("SELECT count(*) Anz
FROM dvm_termine
WHERE tm_id ='$tm_id'
AND (tm_datum != '$testdatum'
OR tm_standort != '$tm_standort'
OR tm_raum != '$tm_raum'
OR tm_referenznr != '$tm_referenznr'
)
");
$row_vorh1 = $result_vorh1->fetch_array();
if($row_vorh['Anz'] != 0 AND $row_vorh1['Anz'] != 0){
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=mailterminupdate\">";
exit;
}else{
$result = $db->query("UPDATE dvm_termine
SET tm_datum = '$testdatum'
, tm_standort = '$tm_standort'
, tm_plaetze = '$tm_plaetze'
, tm_raum = '$tm_raum'
, tm_referenznr = '$tm_referenznr'
WHERE tm_id = $tm_id
");
unset($_SESSION['termine_tm_id']);
}
}
# 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') {
$tm_id = $_GET['tm_id'];
$del1 = $db->query("DELETE FROM dvm_termine WHERE tm_id = $tm_id");
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "\">";
}
if ($action == 'mailterminupdate') {
$tm_id = $_SESSION["termine_tm_id"];
# Gespeicherte Werte
$query1 = "SELECT mail
FROM dvm_kandidat
WHERE ka_id IN (SELECT ka_id
FROM dvm_term_kand
WHERE tm_id = $tm_id)
ORDER BY nachname ASC";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
$mail .= "$row1[mail], ";
}
$mail_lubu = get_parameter(8);
$mail_kehl = get_parameter(7);
$mail_an = "$mail_kehl, $mail_lubu";
$mail_bcc = substr(trim($mail),0,-1);
$smarty->assign('mtupd_mailadressen_an', "$mail_an");
$smarty->assign('mtupd_mailadressen_bcc', "$mail_bcc");
}
if ($action == 'mailsenden2') {
$tm_id = $_SESSION["termine_tm_id"];
$tm_plaetze = $_SESSION["termine_value_tm_plaetze"];
$tm_standort = $_SESSION["termine_value_tm_standort"];
$tm_raum = $_SESSION["termine_value_tm_raum"];
$tm_referenznr = $_SESSION["termine_value_tm_referenznr"];
$testdatum = $_SESSION["termine_value_tm_testdatum"];
$empfaenger_an = $_POST['empfaenger_an'];
$empfaenger_bcc = $_POST['empfaenger_bcc'];
$betreff = $_POST['betreff'];
$text = $_POST['text'];
$absender = $_POST['absender'];
if($absender == 'Kehl'){
$sendermail = get_parameter(7);
$sender = 'Hochschule Kehl';
}
if($absender == 'Ludwigsburg'){
$sendermail = get_parameter(8);
$sender = 'Hochschule Ludwigsburg';
}
# Update
$result = $db->query("UPDATE dvm_termine
SET tm_datum = '$testdatum'
, tm_standort = '$tm_standort'
, tm_plaetze = '$tm_plaetze'
, tm_raum = '$tm_raum'
, tm_referenznr = '$tm_referenznr'
WHERE tm_id = $tm_id
");
$query_termin = $db->query("SELECT date_format(tm_datum, '%d.%m.%Y um %H:%i Uhr') tm_datum, tm_standort, tm_raum, tm_plaetze, tm_referenznr FROM dvm_termine WHERE tm_id='$tm_id'");
$row_termin = $query_termin->fetch_array();
if($row_termin['tm_standort'] == 'L'){
$standort = 'Ludwigsburg - Reuteallee 36, 71634 Ludwigsburg';
}
if($row_termin['tm_standort'] == 'K'){
$standort = 'Kehl - Kinzigallee 1, 77694 Kehl';
}
$text = $text."
<br>
<br>
Neue Daten:<br>
<table>
<tr>
<td valign='top'>
<font face='Arial' size='2'>
<b>Testtag:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$row_termin[tm_datum]
</font>
</td>
</tr>
<tr>
<td valign='top'>
<font face='Arial' size='2'>
<b>Hochschule:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$standort
</font>
</td>
</tr>
<tr>
<td valign='top'>
<font face='Arial' size='2'>
<b>Gebäude / Raum:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$row_termin[tm_raum]
</font>
</td>
</tr>
</table>
";
#echo "
#From: $sender - $sendermail<br>
#$empfaenger<br>
#$betreff<br>
#$text<br>
#$hochschule<br>";
#exit;
## Mailversand:
$headers = "From: $sender <$sendermail>\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers .= "Bcc: $empfaenger_bcc\n";
$return = @mail($empfaenger_an, $betreff, $text, $headers);
if ($return) {
$smarty->assign('mail_senderg', "Die Mail wurde verschickt!");
} else {
$smarty->assign('mail_senderg', "Die Mail konnte nicht verschickt werden!<br>Prüfen Sie die Mailadressen.");
}
unset($_SESSION['termine_tm_id']);
$editende = 1;
echo "<meta http-equiv=\"refresh\" content=\"2; URL=" . $_SERVER['PHP_SELF'] . "?editende=$editende\">";
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

View File

@ -0,0 +1,343 @@
<?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("../config/func_cryption.php");
$verz = "../uploads/"; // relatives Uploadverzeichnis (relativ zum 'Standort' dieser Datei, wohin die Dateien kopiert werden sollen
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
unset($_SESSION["username"]);
$german = $db->query("SET lc_time_names = 'de_DE';");
# Dropdown befüllen übernimmt ajax:fetch.php
# $query1 = "SELECT ka_id, vorname, nachname
# FROM bpm_kandidat
# ORDER BY nachname, vorname";
#
# $result1 = $db->query($query1) or die("Cannot execute query1a");
#
#
# while ($row1 = $result1->fetch_array()) {
# $table_data1[] = $row1;
# }
# $smarty->assign('table_data1', $table_data1);
if (isset($_GET['error'])) {
$errorno = $_GET['error'];
$smarty->assign('bewerber_error', 1);
if ($errorno == 1) {
$smarty->assign('bewerber_error_text', "Es muss ein Bewerber ausgewählt werden.");
}
}
}
if ($action == 'ausgabe') {
if (isset($_POST['user'])) {
$username = mb_strtoupper($_POST["user"]); //remove case sensitivity on the username
} else {
$username = $_SESSION["username"];
}
$_SESSION["username"] = $username;
if(isset($_GET['error'])){
$errorno = $_GET['error'];
$smarty->assign('termine_error', 1);
if($errorno == 1){
$smarty->assign('termine_error_text', "Es muss ein Termin gewählt werden");
}
}
if ($username == "") {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?error=1\">";
exit;
}
# Kandidat
$result_kandidat = $db->query("SELECT anrede, vorname, nachname
FROM bpm_kandidat
WHERE ka_id = '$username'
");
$row_kandidat = $result_kandidat->fetch_array();
if($row_kandidat['anrede'] == 'W'){
$anrede = 'Frau';
}
if($row_kandidat['anrede'] == 'M'){
$anrede = 'Herrn';
}
$smarty->assign('term_kand_anrede', $anrede);
$smarty->assign('term_kand_vorname', $row_kandidat['vorname']);
$smarty->assign('term_kand_nachname', $row_kandidat['nachname']);
# Wo ist der Kandidat bisher eingebucht
$result_bisher = $db->query("SELECT tm_id, date_format(tm_datum, '%d.%m.%Y') datum, date_format(tm_datum, '%H:%i') zeit, tm_standort, tm_plaetze, tm_raum, tm_referenznr
FROM bpm_termine
WHERE tm_id = (SELECT tm_id
FROM bpm_term_kand
WHERE ka_id = '$username'
ORDER BY tk_id desc
LIMIT 1)
");
$row_bisher = $result_bisher->fetch_array();
if($row_bisher['tm_standort'] == 'L'){
$standort = 'Ludwigsburg';
}
if($row_bisher['tm_standort'] == 'K'){
$standort = 'Kehl';
}
$smarty->assign('term_kand_datum', $row_bisher['datum']);
$smarty->assign('term_kand_zeit', $row_bisher['zeit']);
$smarty->assign('term_kand_tm_id', $row_bisher['tm_id']);
$smarty->assign('term_kand_standort', $standort);
# Gespeicherte Termine
$query1 = "SELECT tm_id, date_format(tm_datum, '%d.%m.%Y') datum, date_format(tm_datum, '%H:%i') zeit, tm_standort, tm_plaetze, tm_raum, tm_referenznr
FROM bpm_termine
WHERE tm_datum > NOW()
ORDER BY tm_datum ASC, zeit ASC";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
if($row1['tm_standort'] == 'L'){
$standort = 'Ludwigsburg';
}
if($row1['tm_standort'] == 'K'){
$standort = 'Kehl';
}
$restplatz = get_restplatz($row1['tm_id']);
if($restplatz != $row1['tm_plaetze']){
$disable = 0;
}else{
$disable = 1;
}
$row1['restplatz'] = $restplatz;
$row1['tm_disable'] = $disable;
$row1['standort_form'] = $standort;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if ($action == 'mail') {
$tm_id = $_POST['tm_id'];
$username = $_SESSION["username"];
if($tm_id == ""){
echo "<meta http-equiv=\"refresh\" content=\"0; URL=".$_SERVER['PHP_SELF']."?action=ausgabe&error=1\">";
exit;
}
$_SESSION["termine_tm_id"] = $tm_id;
# Gespeicherte Werte
$query1 = "SELECT mail
FROM bpm_kandidat
WHERE ka_id = '$username'
LIMIT 1";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
$mail .= "$row1[mail]";
}
$smarty->assign('mtupd_mailadressen_an', "$mail");
}
if ($action == 'mailsenden2') {
$tm_id = $_SESSION["termine_tm_id"];
$username = $_SESSION["username"];
$empfaenger = $_POST['empfaenger_an'];
$betreff = $_POST['betreff'];
$text = $_POST['text'];
$absender = $_POST['absender'];
if($absender == 'Kehl'){
$sendermail = get_parameter(7);
$sender = 'Hochschule Kehl';
}
if($absender == 'Ludwigsburg'){
$sendermail = get_parameter(8);
$sender = 'Hochschule Ludwigsburg';
}
# Update
$result_curid = $db->query("SELECT tp_id
FROM bpm_term_kand
WHERE ka_id = $username
ORDER BY tp_id desc
LIMIT 1
");
$row_curid = $result_curid->fetch_array();
$akt_tpid = $row_curid['tp_id'];
$result = $db->query("UPDATE bpm_term_kand
SET tm_id = '$tm_id'
WHERE tp_id = $akt_tpid
");
$query_termin = $db->query("SELECT date_format(tm_datum, '%d.%m.%Y um %H:%i Uhr') tm_datum, tm_standort, tm_raum, tm_plaetze, tm_referenznr
FROM bpm_termine
WHERE tm_id='$tm_id'");
$row_termin = $query_termin->fetch_array();
if($row_termin['tm_standort'] == 'L'){
$standort = 'Ludwigsburg - Reuteallee 36, 71634 Ludwigsburg';
$sendermail = get_parameter(8);
}
if($row_termin['tm_standort'] == 'K'){
$standort = 'Kehl - Kinzigallee 1, 77694 Kehl';
$sendermail = get_parameter(7);
}
$text = $text."
<br>
<br>
Neue Daten:
<figure class='table' style='float:left;'>
<table>
<tr>
<td valign='top'>
<font face='Arial' size='2'>
<b>Testtag:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$row_termin[tm_datum]
</font>
</td>
</tr>
<tr>
<td valign='top'>
<font face='Arial' size='2'>
<b>Hochschule:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$standort
</font>
</td>
</tr>
<tr>
<td valign='top'>
<font face='Arial' size='2'>
<b>Gebäude / Raum:</b>
</font>
</td>
<td valign='top'>
<font face='Arial' size='2'>
$row_termin[tm_raum]
</font>
</td>
</tr>
</table>
</figure>
";
$query1 = "SELECT mail, ka_id
FROM bpm_kandidat
WHERE ka_id = $username
ORDER BY nachname ASC";
$result1 = $db->query($query1) or die("Cannot execute query1a $tm_id");
$lnnr = 0;
while ($row1 = $result1->fetch_array()) {
$mail[$lnnr]['mail'] = "$row1[mail]";
$mail[$lnnr]['ka_id'] = "$row1[ka_id]";
$lnnr++;
}
$lfdnr = $lfdnr++;
# Mail auch an die zuständige HS
$mail[$lnnr][mail]= $sendermail;
$mail[$lnnr][ka_id]= "";
#echo "<pre>";
#print_r($mail);
#echo "</pre><hr>";
#exit;
#echo "
#From: $sender - $sendermail<br>
#$empfaenger<br>
#$betreff<br>
#echo "$text<br>";
#echo "</pre>";
#$hochschule<br>";
#exit;
#Beim CKEDITOR die <p> Tags mit Zeilenabstand 0 in der Mail
$style ="<head>
<style>
p {margin: 0;}
</style>
</head>
";
$text = $style.$text;
for($i=0;$i<count($mail);$i++){
## Mailversand:
$headers = "From: $sender <$sendermail>\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$return = @mail($empfaenger, $betreff, $text, $headers);
$heute = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y")); // heutiges Datum & Zeit: http://de2.php.net/manual/de/function.date.php
$datum_db = date("Y-m-d H:i:s", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll
$text_db = addslashes($text);
if($mail[$i][ka_id] != ""){
# Mail an HS soll nicht protokolliert werden
if($return){
$sql1 = $db->query("INSERT INTO bpm_sonstige_mail (sender, sendermail, ka_id, empfaenger, mail_betreff, mail_text, status, sendedat)
VALUES ('$sender', '$sendermail', '".$mail[$i][ka_id]."', '".$mail[$i][mail]."', '$betreff', '$text_db', 'V', '$datum_db')
");
$smarty->assign('mail_senderg', "Die Mail wurde verschickt!");
}else{
$sql1 = $db->query("INSERT INTO bpm_sonstige_mail (sender, sendermail, ka_id, empfaenger, mail_betreff, mail_text, status, sendedat)
VALUES ('$sender', '$sendermail', '".$mail[$i][ka_id]."', '".$mail[$i][mail]."', '$betreff', '$text_db', 'F', '$datum_db')
");
$err = 1;
$mail_err .= $mail[$i][mail]."<br>";
}
}
}
unset($_SESSION['termine_tm_id']);
$editende = 1;
if($err == 1){
$smarty->assign('mail_senderg', "Die Mails konnten nicht verschickt werden!<br>Prüfen Sie die folgenden Mailadressen:<br><br>$mail_err");
}else{
$smarty->assign('mail_senderg', "Die Mails wurden verschickt!");
echo "<meta http-equiv=\"refresh\" content=\"2; URL=" . $_SERVER['PHP_SELF'] . "?editende=$editende\">";
}
}
// ende Action
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

889
admin/old/test_csv.php Normal file
View File

@ -0,0 +1,889 @@
<?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("../config/func_cryption.php");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
#########Konfiguration#######################################
$verz = "upload_csv/"; // relatives Uploadverzeichnis (relativ zum 'Standort' dieser Datei, wohin die Dateien kopiert werden sollen
$trennzeichen_excel = "\t"; // Das Trennzeichen das Excel f&uuml;r CVS-Dateien nimmt ist je nach Excelversion unterschiedlich:
// Entweder $trennzeichen_excel = ";"; --> Semikolon
// oder $trennzeichen_excel = ","; --> Komma
#############################################################
$_SESSION["ck_verz"]=$verz;
$limitedext = array(".csv"); //Erlaubte Dateieindung beim Upload
if ($action == '') {
$heute = mktime(0, 0, 0, date("m"), date("d"), date("Y")); // heutiges Datum
$heute_format = date("Y-m-d", $heute); // ISO-8601 Format wie in der Datenbank: Formatierung f&uuml;r Vergleiche erforderlich
function deleteFiles($verz){
$handle = opendir($verz);
while ($file = readdir ($handle)) {
if($file != "." && $file != "..") {
$datei = $verz.$file;
if(@unlink($datei)){
$error = TRUE;
}
else
{
$error = FALSE;
}
}
}
closedir($handle);
return $error;
}
deleteFiles($verz); // Dateien werden im Uploadverzeichnis gel&ouml;scht, falls noch welche darin w&auml;ren
echo "
<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<link rel=\"stylesheet\" href=\"../styles_pc.css\" type=\"text/css\">
<title>CSV Upload</title>
</head>
<body>
<table border=\"0\" style=\"border-collapse: collapse\" width=\"100%\" cellpadding=\"0\" height=\"100%\" id=\"table1\">
<tr>
<td>
<div align=\"center\">
<table cellspacing=\"0\" cellpadding=\"0\" allign=\"center\" width=\"50%\" border=\"0\">
<tr>
<td width=\"10\" background=\"../images/box_e1.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_top.gif\" valign=\"top\">
<img height=\"10\" src=\"../images/blank.gif\" width=\"1\"><br>
<font class=\"hd\">CSV Upload</font><br>
<span class=\"sh\">Import eines Studienjahrgangs</span>
<img height=\"5\" src=\"../images/blank.gif\" width=\"1\"></font></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e2.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td width=\"1%\" background=\"../images/box_l.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
<td>
<form action='".$_SERVER['PHP_SELF'] . "?action=csvimp" ."' enctype=\"multipart/form-data\" method='post'>
<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-width:0; border-collapse: collapse\" bordercolor=\"#111111\" width=\"100%\" id=\"AutoNumber1\" height=\"142\">
<tr>
<td width=\"60%\" style=\"border-style: none; border-width: medium\" >
<b>Datei w&auml;hlen:</b><br>Erlaubte Dateiendungen: *.csv
</td>
<td width=\"40%\"align=\"left\" style=\"border-style: none; border-width: medium\" >
<p>
<input name=\"file\" type=\"file\" size=\"30\"></p>
</td>
</tr>
<tr>
<td width=\"60%\" style=\"border-style: none; border-width: medium\">
</td>
<td width=\"40%\"align=\"right\" style=\"border-style: none; border-width: medium\">
<p>
<input type=\"submit\" value=\"Abschicken\" name=\"B1\" size=\"20\">
</td>
</tr>
</table>
</form>
</td>
<td width=\"1%\" background=\"../images/box_r.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td nowrap=\"nowrap\" align=\"left\" width=\"1%\" background=\"../images/box_e3.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\">
</td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_bottom.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"8\">
</td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e4.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\">
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</body>
</html>";
}
if ($action == 'csvimp') {
// http://www.tutorials.de/tutorials65420.html
$tempname = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
$einheit = "Byte"; // F&uuml;r die Efolgsmeldung.
$extlimit = "yes"; //Do you want to limit the extensions of files uploaded
$ext = strrchr($name,'.');
if (($extlimit == "yes") && (!in_array($ext,$limitedext))) {
$err[] = "
<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<link rel=\"stylesheet\" href=\"../styles_pc.css\" type=\"text/css\">
<title>Falscher Dateityp</title>
</head>
<body>
<table border=\"0\" style=\"border-collapse: collapse\" width=\"100%\" cellpadding=\"0\" height=\"100%\" id=\"table1\">
<tr>
<td>
<div align=\"center\">
<table cellspacing=\"0\" cellpadding=\"0\" width=\"550\" border=\"0\">
<tr>
<td width=\"10\" background=\"../images/box_e1.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_top.gif\" valign=\"top\">
<img height=\"10\" src=\"../images/blank.gif\" width=\"1\"><br>
<span class=\"sh\">Falscher Dateityp</span>
<img height=\"5\" src=\"../images/blank.gif\" width=\"1\"></font></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e2.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td width=\"1%\" background=\"../images/box_l.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
<td>
<br>
<p align=\"center\">Es d&uuml;rfen nur csv-Dateien hochgeladen werden!
<p>
<p align=\"center\"><p align=\"center\"><a href=\"javascript:history.back()\">
<img border=\"0\" src=\"../images/zurueck.gif\" width=\"77\" height=\"22\"></a>
</p>
</td>
<td width=\"1%\" background=\"../images/box_r.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td nowrap=\"nowrap\" align=\"left\" width=\"1%\" background=\"../images/box_e3.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\">
</td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_bottom.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"8\">
</td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e4.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\">
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</body>
</html>";
}
if($size > "9900000") {
$err[] = "
<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<link rel=\"stylesheet\" href=\"../styles_pc.css\" type=\"text/css\">
<title>Datei zu gro&szlig;</title>
</head>
<body>
<table border=\"0\" style=\"border-collapse: collapse\" width=\"100%\" cellpadding=\"0\" height=\"100%\" id=\"table1\">
<tr>
<td>
<div align=\"center\">
<table cellspacing=\"0\" cellpadding=\"0\" width=\"550\" border=\"0\">
<tr>
<td width=\"10\" background=\"../images/box_e1.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_top.gif\" valign=\"top\">
<img height=\"10\" src=\"../images/blank.gif\" width=\"1\"><br>
<span class=\"sh\">Datei zu gro&szlig;</span>
<img height=\"5\" src=\"../images/blank.gif\" width=\"1\"></font></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e2.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td width=\"1%\" background=\"../images/box_l.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
<td>
<br>
<p align=\"center\">Die Datei welche Sie hochladen wollen, ist zu gross!<br>Maximale Dateigroesse betr&auml;gt 9.900 KB!
<p>
<p align=\"center\"><p align=\"center\"><a href=\"javascript:history.back()\">
<img border=\"0\" src=\"../images/zurueck.gif\" width=\"77\" height=\"22\"></a>
</p>
</td>
<td width=\"1%\" background=\"../images/box_r.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td nowrap=\"nowrap\" align=\"left\" width=\"1%\" background=\"../images/box_e3.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\">
</td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_bottom.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"8\">
</td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e4.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\">
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</body>
</html>";
}
$name = str_replace (array("&auml;", "&ouml;", "&uuml;", "&szlig;", "&Auml;", "&Ouml;", "&Uuml;"," "), array("ae", "oe", "ue", "ss", "Ae", "Oe", "Ue", "_"), $name);
$heute = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y")); // heutiges Datum & Zeit: http://de2.php.net/manual/de/function.date.php
$heuteformat = date("H-i-s_Y-m-d", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll
$datum_db = date("Y-m-d H:i:s", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll
$neu = $heuteformat."_".$name;
$_SESSION["ck_neu"]=$neu;
If(empty($err)) {
move_uploaded_file("$tempname", "$verz$neu"); // Unterverzeichnisse wie folgt: copy("$tempname", "pdf/$neu");
$row = 1; // Anzahl der Arrays
$handle = fopen ("$verz$neu","r"); // Datei zum Lesen &ouml;ffnen
echo "
<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<link rel=\"stylesheet\" href=\"../styles_pc.css\" type=\"text/css\">
<title>Datens&auml;tze pr&uuml;fen</title>
</head>
<body>
<table border=\"0\" style=\"border-collapse: collapse\" width='150%' cellpadding=\"0\" height=\"90%\">
<tr>
<td>
<div align=\"center\">
<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\">
<tr>
<td width=\"10\" background=\"../images/box_e1.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_top.gif\" valign=\"top\">
<img height=\"10\" src=\"../images/blank.gif\" width=\"1\"><br>
<font class=\"hd\">Datens&auml;tze pr&uuml;fen</font><br>
<img height=\"5\" src=\"../images/blank.gif\" width=\"1\"></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e2.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td width=\"1%\" background=\"../images/box_l.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
<td>
<table border=\"0\" cellpadding=\"2\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#E7E8ED\">
<tr>
<td width=\"4%\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">uid</font></b>
</td>
<td width=\"10%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Nachname</font></b>
</td>
<td width=\"10%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Vorname</font></b>
</td>
<td width=\"1%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Matrikelnr.</font></b>
</td>
<td width=\"2%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">KFZ</font></b>
</td>
<td width=\"2%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">HS</font></b>
</td>
<td width=\"2%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">PLZ</font></b>
</td>
<td width=\"13%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Ort</font></b>
</td>
<td width=\"14%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Stra&szlig;e</font></b>
</td>
<td width=\"2%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Stg</font></b>
</td>
<td width=\"11%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">StgText</font></b>
</td>
<td width=\"2%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">AG</font></b>
</td>
<td width=\"2%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Jahr</font></b>
</td>
<td width=\"3%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Passwort</font></b>
</td>
<td width=\"44%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Mail</font></b>
</td>
</tr>";
while ( ($data = fgetcsv ($handle, 0, $trennzeichen_excel)) !== FALSE ) // Daten werden aus der Datei in ein Array $data gelesen
{
$num = count ($data); // Felder im Array $data werden gez&auml;hlt
//print "<p> $num fields in line $row: <br>\n";
print "\n";
$row++; // Anzahl der Arrays wird
// inkrementiert
$passwd = str_replace(".", "", $data[13]);
print "<tr>";
// for ($c=0; $c < $num; $c++) { // FOR-Schleife: Oder Anzahl der zu importierenden Felder ($num)
print "<td><font size=\"1\">".strtolower($data[0]) . "</td>\n"; // uid
print "<td><font size=\"1\">".$data[1] . "</td>\n"; // Nacname
print "<td><font size=\"1\">".$data[2] . "</td>\n"; // Vorname
print "<td><font size=\"1\">".$data[3] . "</td>\n"; // Matrikelnr
print "<td><font size=\"1\">".$data[4] . "</td>\n"; // KFZ
print "<td><font size=\"1\">".$data[5] . "</td>\n"; // HS
print "<td><font size=\"1\">".$data[6] . "</td>\n"; // PLZ
print "<td><font size=\"1\">".$data[7] . "</td>\n"; // ORT
print "<td><font size=\"1\">".$data[8] . "</td>\n"; // Stra&szlig;e
print "<td><font size=\"1\">".$data[9] . "</td>\n"; // STG
print "<td><font size=\"1\">".$data[10] . "</td>\n"; // StgText
print "<td><font size=\"1\">".strtoupper($data[11]) . "</td>\n"; // AG
print "<td><font size=\"1\">".$data[12] . "</td>\n"; // Jahrgang
#print "<td><font size=\"1\">".strtolower($data[12]) . "</td>\n"; // Passwort in Kleinbuchstaben
print "<td><font size=\"1\">".$passwd . "</td>\n"; // Passwort
print "<td><font size=\"1\">".$data[14] . "</td>\n"; // Mail
// }
print "</tr>";
$ln_inserts[]++; //z&auml;hlt die Anzahl der importierenden DS
}
echo "
</table>
</td>
<td width=\"1%\" background=\"../images/box_r.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\">
</td>
</tr>
<tr>
<td nowrap=\"nowrap\" align=\"left\" width=\"1%\" background=\"../images/box_e3.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\">
</td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_bottom.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"8\">
</td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e4.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\">
</td>
</tr>
</table>
<br>";
$zahl=count($ln_inserts);
echo"
<table border=\"0\" style=\"border-collapse: collapse\" width='40%' cellpadding=\"0\">
<tr>
<td>
<div align=\"center\">
<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\">
<tr>
<td width=\"10\" background=\"../images/box_e1.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\">
</td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_top.gif\" valign=\"top\">
<img height=\"10\" src=\"../images/blank.gif\" width=\"1\"><br>
<font class=\"hd\">Sollen die $zahl Datens&auml;tze importiert werden?</font><br>
<img height=\"5\" src=\"../images/blank.gif\" width=\"1\">
</td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e2.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\">
</td>
</tr>
<tr>
<td width=\"1%\" background=\"../images/box_l.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\">
</td>
<td>
<form action='".$_SERVER['PHP_SELF'] . "?action=csvimp2" ."' enctype=\"multipart/form-data\" method='post'>
<table width=\"100%\" border=\"0\" cellpadding=\"2\" cellspacing=\"0\" style=\"border-collapse: collapse\" bordercolor=\"#E7E8ED\">
<tr>
<td width=\"70%\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Auswahl</font></b>
</td>
<td width=\"30%\" align=\"left\" style=\"border-left-style: none; border-left-width: medium; border-right-style: none; border-right-width: medium; border-top-style: none; border-top-width: medium; border-bottom-style: solid; border-bottom-width: 1px\">
<b><font size=\"1\">Markieren</font></b>
</td>
</tr>
<tr>
<td width=\"70%\"><font size=\"1\">Datens&auml;tze nicht importieren
</td>
<td width=\"30%\"><font size=\"1\"><input type=\"radio\" name=\"import\" value=\"0\" checked>
</td>
</tr>
<tr>
<td width=\"70%\"><font size=\"1\">Datens&auml;tze importieren
</td>
<td width=\"30%\"><font size=\"1\"><input type=\"radio\" name=\"import\" value=\"1\">
</td>
</tr>
<tr>
<td width=\"70%\">
&nbsp;
</td>
<td width=\"30%\">
&nbsp;
</td>
</tr>
<tr>
<td width=\"70%\">
&nbsp;
</td width=\"30%\">
<td>
<input type=\"submit\" value=\"Abschicken\" name=\"B1\" size=\"20\">
</td>
</tr>
</table>
</td>
<td width=\"1%\" background=\"../images/box_r.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\">
</td>
</tr>
<tr>
<td nowrap=\"nowrap\" align=\"left\" width=\"1%\" background=\"../images/box_e3.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\">
</td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_bottom.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"8\">
</td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e4.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\">
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</body>
</html>
";
}else {
foreach($err as $error)
echo "$error";
exit;
} //Ende if error
fclose ($handle);
}
if ($action == 'csvimp2') {
$neu=$_SESSION["ck_neu"]; //CSV-Dateinamen um Datei l&ouml;schen zu k&ouml;nnen
$verz=$_SESSION["ck_verz"]; //Uploadverzeichnis aus Cookie holen
if ($_POST['import'] == "0") // DS sollen nicht importiert werden
{
$dateiname="$verz$neu";
if (@unlink($dateiname)) // Funktion l&ouml;scht Dateien und gibt true / false zur&uuml;ck
{
echo"
<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<link rel=\"stylesheet\" href=\"../styles_pc.css\" type=\"text/css\">
<title>Import beendet</title>
</head>
<body>
<table border=\"0\" style=\"border-collapse: collapse\" width=\"100%\" cellpadding=\"0\" height=\"100%\" id=\"table1\">
<tr>
<td>
<div align=\"center\">
<table cellspacing=\"0\" cellpadding=\"0\" width=\"550\" border=\"0\">
<tr>
<td width=\"10\" background=\"../images/box_e1.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"3%\" background=\"../images/box_top.gif\" valign=\"top\"></td>
<td width=\"95%\" background=\"../images/box_top.gif\">
<img height=\"10\" src=\"../images/blank.gif\" width=\"1\"><br>
<span class=\"sh\">Importvorgang abgebrochen</span><br>
<img height=\"5\" src=\"../images/blank.gif\" width=\"1\"></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e2.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td width=\"1%\" background=\"../images/box_l.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
<td colspan=\"2\"><br>
<p align=\"center\">Datems&auml;tze wurden nicht importiert!<br>Die CSV-Datei wurde vom Server gel&ouml;scht!
</p>
<p align=\"center\"><a href=\"javascript:window.close()\">
<img border=\"0\" src=\"../images/zurueck.gif\" width=\"77\" height=\"22\"></a><br>
</p>
<p></p>
<p></p>
<p></p>
<p></p>
<p><br>
</p>
</td>
<td width=\"1%\" background=\"../images/box_r.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td nowrap=\"nowrap\" align=\"left\" width=\"1%\" background=\"../images/box_e3.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_bottom.gif\" colspan=\"2\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"8\"></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e4.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\"> </td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</body>
</html>";
}else{
echo"
<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<link rel=\"stylesheet\" href=\"../styles_pc.css\" type=\"text/css\">
<title>Datei nicht gel&ouml;scht</title>
</head>
<body>
<table border=\"0\" style=\"border-collapse: collapse\" width=\"100%\" cellpadding=\"0\" height=\"100%\" id=\"table1\">
<tr>
<td>
<div align=\"center\">
<table cellspacing=\"0\" cellpadding=\"0\" width=\"550\" border=\"0\">
<tr>
<td width=\"10\" background=\"../images/box_e1.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"3%\" background=\"../images/box_top.gif\" valign=\"top\"></td>
<td width=\"95%\" background=\"../images/box_top.gif\">
<img height=\"10\" src=\"../images/blank.gif\" width=\"1\"><br>
<span class=\"sh\">Importvorgang abgebrochen</span><br>
<img height=\"5\" src=\"../images/blank.gif\" width=\"1\"></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e2.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td width=\"1%\" background=\"../images/box_l.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
<td colspan=\"2\"><br>
<p align=\"center\">Datems&auml;tze wurden nicht importiert!<br>Die CSV-Datei ($neu) konnte <b>nicht</b> vom Server gel&ouml;scht werden!
</p>
<p align=\"center\"><a href=\"javascript:window.close()\">
<img border=\"0\" src=\"../images/zurueck.gif\" width=\"77\" height=\"22\"></a><br>
</p>
<p></p>
<p></p>
<p></p>
<p></p>
<p><br>
</p>
</td>
<td width=\"1%\" background=\"../images/box_r.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td nowrap=\"nowrap\" align=\"left\" width=\"1%\" background=\"../images/box_e3.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_bottom.gif\" colspan=\"2\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"8\"></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e4.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\"> </td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</body>
</html>";
} // End if
} elseif($_POST['import'] == "1") // DS sollen importiert werden
{
$row = 1; // Anzahl der Arrays
$handle = fopen ("$verz$neu","r"); // Datei zum Lesen &ouml;ffnen
while ( ($data = fgetcsv ($handle, 1000, $trennzeichen_excel)) !== FALSE ) // Daten werden aus der Datei in ein Array $data gelesen
{
$num = count ($data); // Felder im Array $data werden gez&auml;hlt
//print "<p> $num fields in line $row: <br>\n";
print "\n";
$row++; // Anzahl der Arrays wird
// inkrementiert
#$pwd = strtolower($data[13]);
$pwd = str_replace(".", "", $data[13]);
$passwd = md5($pwd);
$uid = strtolower($data[0]);
$geb = preg_split('/\./', $data[13]);
$tag = $geb[0];
$mon = $geb[1];
$jahr = $geb[2];
$gebtag = "$jahr-$mon-$tag";
//$passwd = mysql_escape_string($passwd);
// ACHTUNG: AN DIESER ZEILE NICHTS &Auml;NDERN, da die erste Zeile des Strings rausgefiltert wird bei der Ausgabe der nichtimportierten DS
$insert[] .= "INSERT INTO stud (uid, nachname, vorname, mtknr, pokfz, hs, poplz, poOrt, poStrasse, stg, stgText, AG, Jahrgang, Pwd, mail, geburtstag) VALUES ( lower('$data[0]')
,'$data[1]'
,'$data[2]'
,'$data[3]'
,'$data[4]'
,'$data[5]'
,'$data[6]'
,'$data[7]'
,'$data[8]'
,'$data[9]'
,'$data[10]'
,upper('$data[11]')
,'$data[12]'
,'$passwd'
,'$data[14]'
,'$gebtag'
)
";
}
for ($i=0;$i<sizeof($insert);$i++)
{
$sql = mysql_query("$insert[$i]");
if (!$sql) {
$unimported[]= $insert[$i];
}
}
fclose ($handle);
$dateiname="$verz$neu";
if (@unlink($dateiname)) // Funktion l&ouml;scht Dateien und gibt true / false zur&uuml;ck
{
$y = str_replace (array("INSERT INTO stud (uid, nachname, vorname, mtknr, pokfz, hs, poplz, poOrt, poStrasse, stg, stgText, AG, Jahrgang, Pwd, mail, geburtstag) VALUES ( lower('"), array(""), $unimported);
echo"
<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<link rel=\"stylesheet\" href=\"../styles_pc.css\" type=\"text/css\">
<title>Import beendet</title>
</head>
<body>
<table border=\"0\" style=\"border-collapse: collapse\" width=\"100%\" cellpadding=\"0\" height=\"100%\" id=\"table1\">
<tr>
<td>
<div align=\"center\">
<table cellspacing=\"0\" cellpadding=\"0\" width=\"550\" border=\"0\">
<tr>
<td width=\"10\" background=\"../images/box_e1.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"3%\" background=\"../images/box_top.gif\" valign=\"top\"></td>
<td width=\"95%\" background=\"../images/box_top.gif\">
<img height=\"10\" src=\"../images/blank.gif\" width=\"1\"><br>
<span class=\"sh\">Importvorgang erfolgreich</span><br>
<img height=\"5\" src=\"../images/blank.gif\" width=\"1\"></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e2.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td width=\"1%\" background=\"../images/box_l.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
<td colspan=\"2\"><br>
<p align=\"center\">Der Importvorgang wurde erfolgreich beendet!<br>Die CSV-Datei wurde vom Server gel&ouml;scht!
</p>";
$num1 = count ($y); // Anzahl der nicht importierten UIDs
if ($y != "")
{
echo"Es wurden $num1 Datens&auml;tze nicht importiert<br>
Wahrscheinlich ist die UID bereits in der Datenbank vorhanden,<br>
oder eines der Felder ist zu lang:
<p>";
}
// Ausgabe der nicht importierten DS
for ($i=0;$i<sizeof($y);$i++)
{
$b = strpos ($y[$i], "'");
$e = substr($y[$i], 0, $b);
print strtolower($e); // Ausgabe der nicht importierten UIDs
echo"<br>";
}
echo"
<p align=\"center\"><a href=\"../hauptframe_welcome.php\">
<img border=\"0\" src=\"../images/zurueck.gif\" width=\"77\" height=\"22\"></a><br>
</p>
<p></p>
<p></p>
<p></p>
<p></p>
<p><br>
</p>
</td>
<td width=\"1%\" background=\"../images/box_r.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td nowrap=\"nowrap\" align=\"left\" width=\"1%\" background=\"../images/box_e3.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_bottom.gif\" colspan=\"2\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"8\"></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e4.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\"> </td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</body>
</html>";
}else{
echo"
<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1252\">
<link rel=\"stylesheet\" href=\"../styles_pc.css\" type=\"text/css\">
<title>Datei nicht gel&ouml;scht</title>
</head>
<body>
<table border=\"0\" style=\"border-collapse: collapse\" width=\"100%\" cellpadding=\"0\" height=\"100%\" id=\"table1\">
<tr>
<td>
<div align=\"center\">
<table cellspacing=\"0\" cellpadding=\"0\" width=\"550\" border=\"0\">
<tr>
<td width=\"10\" background=\"../images/box_e1.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"3%\" background=\"../images/box_top.gif\" valign=\"top\"></td>
<td width=\"95%\" background=\"../images/box_top.gif\">
<img height=\"10\" src=\"../images/blank.gif\" width=\"1\"><br>
<span class=\"sh\">Importvorgang erfolgreich</span><br>
<img height=\"5\" src=\"../images/blank.gif\" width=\"1\"></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e2.gif\">
<img height=\"40\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td width=\"1%\" background=\"../images/box_l.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
<td colspan=\"2\"><br>
<p align=\"center\">Der Importvorgang wurde erfolgreich beendet!<br>Die CSV-Datei ($neu) konnte <b>nicht</b> vom Server gel&ouml;scht werden!
</p>";
$num1 = count ($y); // Anzahl der nicht importierten UIDs
if ($y != "")
{
echo"Es wurden $num1 Datens&auml;tze nicht importiert<br>
Wahrscheinlich ist die UID bereits in der Datenbank vorhanden,<br>
oder eines der Felder ist zu lang:
<p>";
}
// Ausgabe der nicht importierten DS
for ($i=0;$i<sizeof($y);$i++)
{
$b = strpos ($y[$i], "'");
$e = substr($y[$i], 0, $b);
print strtolower($e); // Ausgabe der nicht importierten UIDs
echo"<br>";
}
echo"
<p align=\"center\"><a href=\"javascript:window.close()\">
<img border=\"0\" src=\"../images/zurueck.gif\" width=\"77\" height=\"22\"></a><br>
</p>
<p></p>
<p></p>
<p></p>
<p></p>
<p><br>
</p>
</td>
<td width=\"1%\" background=\"../images/box_r.gif\">
<img height=\"1\" src=\"../images/blank.gif\" width=\"22\"></td>
</tr>
<tr>
<td nowrap=\"nowrap\" align=\"left\" width=\"1%\" background=\"../images/box_e3.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\"></td>
<td nowrap=\"nowrap\" align=\"left\" width=\"98%\" background=\"../images/box_bottom.gif\" colspan=\"2\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"8\"></td>
<td nowrap=\"nowrap\" align=\"right\" width=\"1%\" background=\"../images/box_e4.gif\">
<img height=\"16\" src=\"../images/blank.gif\" width=\"22\"> </td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</body>
</html>";
} // End if
}else { // Es wurde kein Radiobutton gew&auml;hlt! Technisch aber ausgeschlossen
echo "sie m&uuml;ssen eine Auswahl treffen";
}
function deleteFiles($verz){
$handle = opendir($verz);
while ($file = readdir ($handle)) {
if($file != "." && $file != "..") {
$datei = $verz.$file;
if(@unlink($datei)){
$error = TRUE;
}
else
{
$error = FALSE;
}
}
}
closedir($handle);
return $error;
}
deleteFiles($verz); // Dateien werden im Uploadverzeichnis gel&ouml;scht, falls noch welche darin w&auml;ren
} // ende Action
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

402
admin/old/upload.php Normal file
View File

@ -0,0 +1,402 @@
<?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_parameter.php");
require_once("../config/func_cryption.php");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
#########Konfiguration#######################################
$verz = "upload_csv/"; // relatives Uploadverzeichnis (relativ zum 'Standort' dieser Datei, wohin die Dateien kopiert werden sollen
$trennzeichen_excel = "\t"; // Das Trennzeichen das Excel f&uuml;r CVS-Dateien nimmt ist je nach Excelversion unterschiedlich:
// Entweder $trennzeichen_excel = ";"; --> Semikolon
// oder $trennzeichen_excel = ","; --> Komma
#############################################################
$_SESSION["ck_verz"] = $verz;
if ($action == '') {
$german = $db->query("SET lc_time_names = 'de_DE';");
$query1 = "SELECT a.tm_id, date_format(tm_datum, '%a, %d.%m.%Y - %H:%i Uhr')tm_datum_form, tm_standort
FROM bpm_termine a, bpm_term_kand b
WHERE a.tm_id=b.tm_id
AND a.tm_datum > ADDDATE(now(), -7)
GROUP BY a.tm_id, tm_datum_form, tm_standort
ORDER BY tm_datum ASC";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
if ($row1['tm_standort'] == 'L') {
$standort = 'Ludwigsburg';
}
if ($row1['tm_standort'] == 'K') {
$standort = 'Kehl';
}
$row1['tm_standort'] = $standort;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if ($action == 'upload') {
# Den Testtermin wählt man, damit jede Hochschule seine eigenen Daten importieren kann. Wenn eine Hochschule am selben TAg einen Test hat vermeidet man dass ein halbfertiger Test importiert wird
if (isset($_POST["testtermin"])) {
$testtermin = $_POST["testtermin"];
} else {
$testtermin = $_SESSION["testtermin"];
}
$_SESSION["testtermin"] = $testtermin;
# Uploadverzeichnis aufräumen. Temporäre Dateien, die älter als 2 Wochen sind, werden gelöscht
$dir = $_SERVER["DOCUMENT_ROOT"].dirname($_SERVER['PHP_SELF'])."/$verz";
$folder = dir($dir);
while ($dateiname = $folder->read()) {
if (filetype($dir.$dateiname) != "dir") {
if (strtotime("-2 weeks") >
@filemtime($dir.$dateiname)) {
if (@unlink($dir.$dateiname) != false){
# echo $dateiname.' wurde gelöscht<br>';
}else{
# echo $dateiname.' konnte nichtgelöscht werden<br>';
}
}
}
}
# Fehler beim Upload anzeigen
if (isset($_GET['error'])) {
$errorno = $_GET['error'];
$smarty->assign('index_error', 1);
if ($errorno == 1) {
$smarty->assign('index_error_text', "Es dürfen nur CSV Dateien hochgeladen werden.");
}
if ($errorno == 2) {
# Tabelle bpm_parameter
$size_mb = trim(get_parameter(12));
$smarty->assign('index_error_text', "Die Datei ist zu groß. Die Dateigröße darf max. $size_mb MB betragen.");
}
if ($errorno == 3) {
$smarty->assign('index_error_text', "Vorgang wurde abgebrochen. Die Datei wurde vom Server gelöscht");
}
if ($errorno == 4) {
$smarty->assign('index_error_text', "Vorgang wurde abgebrochen. Die Datei wurde nicht vom Server gelöscht");
}
}
}
if ($action == 'csvimp') {
$testtermin = $_SESSION["testtermin"];
// http://www.tutorials.de/tutorials65420.html
#echo '<pre>', print_r($_POST, true), '</pre>';
$tempname = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
$einheit = "Byte"; // F&uuml;r die Efolgsmeldung.
$limitedext = array(
".csv"
); //Erlaubte Dateieindung beim Upload
$extlimit = "yes"; //Do you want to limit the extensions of files uploaded
$ext = strrchr($name, '.');
if (($extlimit == "yes") && (!in_array($ext, $limitedext))) {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=upload&error=1\">";
exit;
}
# Tabelle bpm_parameter
$size_mb = trim(get_parameter(12));
$size_bt = $size_mb * 1024 * 1024;
if ($size > $size_bt) {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=upload&error=2\">";
exit;
}
$name = str_replace(array(
"&auml;",
"&ouml;",
"&uuml;",
"&szlig;",
"&Auml;",
"&Ouml;",
"&Uuml;",
" "
), array(
"ae",
"oe",
"ue",
"ss",
"Ae",
"Oe",
"Ue",
"_"
), $name);
$heute = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y")); // heutiges Datum & Zeit: http://de2.php.net/manual/de/function.date.php
$heuteformat = date("H-i-s_Y-m-d", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll
$datum_db = date("Y-m-d H:i:s", $heute); // Formatierung, wie es vor dem Dateinamen erscheinen soll
$neu = $heuteformat . "_" . $name;
$_SESSION["ck_neu"] = $neu;
move_uploaded_file("$tempname", "$verz$neu"); // Unterverzeichnisse wie folgt: copy("$tempname", "pdf/$neu");
$handle = fopen("$verz$neu", "r"); // Datei zum Lesen &ouml;ffnen
# Bestehnswert 65 Punkte
$bestehenswert = trim(get_parameter(11));
# Hier vor der Schleife erste Zeile holen und ignorieren. Enthält Überschrift
fgetcsv($handle, 0, $trennzeichen_excel);
while (($data = fgetcsv($handle, 0, $trennzeichen_excel)) !== FALSE) { // Daten werden aus der Datei in ein Array $data gelesen
#2020-02-23T17:44:56
$tag = substr($data[11], 8, 2);
$monat = substr($data[11], 5, 2);
$jahr = substr($data[11], 0, 4);
$std = substr($data[11], 11, 2);
$min = substr($data[11], 14, 2);
$sek = substr($data[11], 17, 2);
$datum = "$tag.$monat.$jahr - $std:$min:$sek";
$datum_db = "$jahr-$monat-$tag";
$tan = $data[7];
$result_ct = $db->query("SELECT concat(vorname,' ', nachname) name, date_format(tm_datum, '%Y-%m-%d') tm_datum
FROM bpm_kandidat a, bpm_term_kand b, bpm_termine c, bpm_tanpool d
WHERE a.ka_id = b.ka_id
AND b.tm_id = c.tm_id
AND b.tp_id = d.tp_id
AND d.tan = '$tan'
AND c.tm_id = $testtermin");
$row_ct = $result_ct->fetch_array();
if ($row_ct['name'] != '' AND $row_ct['tm_datum'] == $datum_db) {
$satzerg_raw = $data[13];
#$analogie_raw = $data[14];
$gemeinsamkeiten_raw = $data[15];
$rechenaufgaben_raw = $data[16];
$zahlenreihen_raw = $data[17];
$rechenzeichen_raw = $data[18];
$matrizen_raw = $data[21];
$merkf_raw = $data[26];
$row1['tan'] = $tan;
$row1['name'] = $row_ct['name'];
$row1['datum'] = $datum;
$row1['satzerg_raw'] = $satzerg_raw;
#$row1['analogie_raw'] = $analogie_raw;
$row1['gemeinsamkeiten_raw'] = $gemeinsamkeiten_raw;
$row1['rechenaufgaben_raw'] = $rechenaufgaben_raw;
$row1['zahlenreihen_raw'] = $zahlenreihen_raw;
$row1['rechenzeichen_raw'] = $rechenzeichen_raw;
$row1['matrizen_raw'] = $matrizen_raw;
$row1['merkf_raw'] = $merkf_raw;
# In die Berechnung fliest verb/num Intelligenz nicht mit ein. Das sind interne Berechnungen und keine Testaufgaben
$summe = $satzerg_raw + $gemeinsamkeiten_raw + $rechenaufgaben_raw + $zahlenreihen_raw + $rechenzeichen_raw + $matrizen_raw + $merkf_raw;
$row1['summe'] = $summe;
if ($summe >= $bestehenswert) {
$bestanden = 1;
} else {
$bestanden = 0;
}
$row1['bestanden'] = $bestanden;
$table_data1[] = $row1;
}
}
$smarty->assign('table_data1', $table_data1);
fclose($handle);
}
if ($action == 'csvimp2') {
$neu = $_SESSION["ck_neu"]; //CSV-Dateinamen um Datei l&ouml;schen zu k&ouml;nnen
$verz = $_SESSION["ck_verz"]; //Uploadverzeichnis aus Cookie holen
$testtermin = $_SESSION["testtermin"];
if ($_POST['import'] == "0") // DS sollen nicht importiert werden
{
$dateiname = "$verz$neu";
if (@unlink($dateiname)) // Funktion l&ouml;scht Dateien und gibt true / false zur&uuml;ck
{
# Abbruch, datei gelöscht
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=upload&error=3\">";
exit;
} else {
# Abbruch, datei nicht gelöscht
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=upload&error=4\">";
exit;
} // End if
} elseif ($_POST['import'] == "1") // DS sollen importiert werden
{
$handle = fopen("$verz$neu", "r"); // Datei zum Lesen &ouml;ffnen
# Bestehnswert 65 Punkte
$bestehenswert = trim(get_parameter(11));
# Hier vor der Schleife erste Zeile holen und ignorieren. Enthält Überschrift
fgetcsv($handle, 0, $trennzeichen_excel);
while (($data = fgetcsv($handle, 0, $trennzeichen_excel)) !== FALSE) { // Daten werden aus der Datei in ein Array $data gelesen
#2020-02-23T17:44:56
$tag = substr($data[11], 8, 2);
$monat = substr($data[11], 5, 2);
$jahr = substr($data[11], 0, 4);
$std = substr($data[11], 11, 2);
$min = substr($data[11], 14, 2);
$sek = substr($data[11], 17, 2);
$datum = "$tag.$monat.$jahr - $std:$min:$sek";
$datum_db = "$jahr-$monat-$tag";
$tan = $data[7];
$result_ct = $db->query("SELECT a.ka_id, concat(vorname,' ', nachname) name, date_format(tm_datum, '%Y-%m-%d') tm_datum
FROM bpm_kandidat a, bpm_term_kand b, bpm_termine c, bpm_tanpool d
WHERE a.ka_id = b.ka_id
AND b.tm_id = c.tm_id
AND b.tp_id = d.tp_id
AND d.tan = '$tan'
AND c.tm_id = $testtermin");
$row_ct = $result_ct->fetch_array();
if ($row_ct['name'] != '' AND $row_ct['tm_datum'] == $datum_db) {
$satzerg_raw = $data[13];
#$analogie_raw = $data[14];
$gemeinsamkeiten_raw = $data[15];
$rechenaufgaben_raw = $data[16];
$zahlenreihen_raw = $data[17];
$rechenzeichen_raw = $data[18];
$matrizen_raw = $data[21];
$merkf_raw = $data[26];
$summe = $satzerg_raw + $gemeinsamkeiten_raw + $rechenaufgaben_raw + $zahlenreihen_raw + $rechenzeichen_raw + $matrizen_raw + $merkf_raw;
if ($summe >= $bestehenswert) {
$bestanden = 1;
} else {
$bestanden = 0;
# Tan Inaktiv setzen
$result_1 = $db->query("UPDATE bpm_tanpool
SET aktiv='I'
WHERE tan = '$tan'");
}
$result_ct1 = $db->query("SELECT count(*) Anz
FROM bpm_ergebnisse
WHERE ka_id = $row_ct[ka_id]
AND tan = '$tan'");
$row_ct1 = $result_ct1->fetch_array();
if ($row_ct1['Anz'] == 0) {
# keine Ergebnisse vorhanden, insert
$sql1 = $db->query("insert into bpm_ergebnisse (ka_id
, tan
, satzerg
, gemeinsamkeiten
, rechenaufgaben
, zahlenreihen
, rechenzeichen
, matrizen
, merkf
, summe
, bestanden)
VALUES ('$row_ct[ka_id]'
, '$tan'
, '$satzerg_raw'
, '$gemeinsamkeiten_raw'
, '$rechenaufgaben_raw'
, '$zahlenreihen_raw'
, '$rechenzeichen_raw'
, '$matrizen_raw'
, '$merkf_raw'
, '$summe'
, '$bestanden')");
if (!$sql1) {
$hinweis['hinweis'] = "TAN: " . $tan . " Fehler: Ergebnis nicht gespeichert<br>";
$smarty->assign('index_error', 1);
}
} else {
# Ergebnisse gibt es schon, kein insert
$hinweis['hinweis'] = "TAN: " . $tan . " Ergebnisse schon gespeichert<br>";
$smarty->assign('index_error', 1);
}
} else {
# Testdatum stimmt nicht, kein Student gefunden
$hinweis['hinweis'] = "TAN: " . $tan . " in der CSV gehört nicht zu diesem Datum (Kein Fehler)<br>";
$smarty->assign('index_error', 1);
}
$table_data2[] = $hinweis;
}
$smarty->assign('table_data2', $table_data2);
fclose($handle);
} else { // Es wurde kein Radiobutton gew&auml;hlt! Technisch aber ausgeschlossen
echo "sie m&uuml;ssen eine Auswahl treffen";
}
function deleteFiles($verz)
{
$handle = opendir($verz);
while ($file = readdir($handle)) {
if ($file != "." && $file != "..") {
$datei = $verz . $file;
if (@unlink($datei)) {
$error = TRUE;
} else {
$error = FALSE;
}
}
}
closedir($handle);
return $error;
}
deleteFiles($verz); // Dateien werden im Uploadverzeichnis gel&ouml;scht, falls noch welche darin w&auml;ren
} // ende Action
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

81
admin/parameter.php Normal file
View File

@ -0,0 +1,81 @@
<?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");
if (isset($_GET['action'])) {
$action = $_GET['action'];
} else {
$action = '';
}
if ($action == '') {
$query1 = "SELECT pid, beschreibung, wert
FROM jumi_parameter
ORDER BY sort ASC";
$result1 = $db->query($query1) or die("Cannot execute query1");
while ($row1 = $result1->fetch_array()) {
# Passwort für die Praxisstellen wird verschlüsselt gespeichert
if(!isset($zaehler) or $zaehler == 1){
$zaehler = 0;
}else{
$zaehler = 1;
}
$row1['zaehler'] = $zaehler;
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
}
if($action == 'save'){
$query2 = "SELECT pid
FROM jumi_parameter
ORDER BY pid ASC";
$result2 = $db->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){
$error = TRUE;
$error_reason .= "Fehler beim Update [jumi_parameter]<br>";
}else{
$error = FALSE;
$smarty->assign('parameter_inserterr', "2");
echo "<meta http-equiv=\"refresh\" content=\"2; URL=".$_SERVER['PHP_SELF'] ."?\">";
}
if($error){
$smarty->assign('parameter_inserterr', "1");
$smarty->assign('parameter_reason', "$error_reason"); // Kein Mailversand
} // Ende IF : Insert hat geklappt
}
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>

38
admin/phpqrcode/CHANGELOG Normal file
View File

@ -0,0 +1,38 @@
* 1.0.0 build 2010031920
- first public release
- help in readme, install
- cleanup ans separation of QRtools and QRspec
- now TCPDF binding requires minimal changes in TCPDF, having most of job
done in QRtools tcpdfBarcodeArray
- nicer QRtools::timeBenchmark output
- license and copyright notices in files
- indent cleanup - from tab to 4spc, keep it that way please :)
- sf project, repository, wiki
- simple code generator in index.php
* 1.1.0 build 2010032113
- added merge tool wich generate merged version of code
located in phpqrcode.php
- splited qrconst.php from qrlib.php
* 1.1.1 build 2010032405
- patch by Rick Seymour allowing saving PNG and displaying it at the same time
- added version info in VERSION file
- modified merge tool to include version info into generated file
- fixed e-mail in almost all head comments
* 1.1.2 build 2010032722
- full integration with TCPDF thanks to Nicola Asuni, it's author
- fixed bug with alphanumeric encoding detection
* 1.1.3 build 2010081807
- short opening tags replaced with standard ones
* 1.1.4 build 2010100721
- added missing static keyword QRinput::check (found by Luke Brookhart, Onjax LLC)

67
admin/phpqrcode/INSTALL Normal file
View File

@ -0,0 +1,67 @@
== REQUIREMENTS ==
* PHP5
* PHP GD2 extension with JPEG and PNG support
== INSTALLATION ==
If you want to recreate cache by yourself make sure cache directory is
writable and you have permisions to write into it. Also make sure you are
able to read files in it if you have cache option enabled
== CONFIGURATION ==
Feel free to modify config constants in qrconfig.php file. Read about it in
provided comments and project wiki page (links in README file)
== QUICK START ==
Notice: probably you should'nt use all of this in same script :)
<?phpb
//include only that one, rest required files will be included from it
include "qrlib.php"
//write code into file, Error corection lecer is lowest, L (one form: L,M,Q,H)
//each code square will be 4x4 pixels (4x zoom)
//code will have 2 code squares white boundary around
QRcode::png('PHP QR Code :)', 'test.png', 'L', 4, 2);
//same as above but outputs file directly into browser (with appr. header etc.)
//all other settings are default
//WARNING! it should be FIRST and ONLY output generated by script, otherwise
//rest of output will land inside PNG binary, breaking it for sure
QRcode::png('PHP QR Code :)');
//show benchmark
QRtools::timeBenchmark();
//rebuild cache
QRtools::buildCache();
//code generated in text mode - as a binary table
//then displayed out as HTML using Unicode block building chars :)
$tab = $qr->encode('PHP QR Code :)');
QRspec::debug($tab, true);
== TCPDF INTEGRATION ==
Inside bindings/tcpdf you will find slightly modified 2dbarcodes.php.
Instal phpqrcode liblaty inside tcpdf folder, then overwrite (or merge)
2dbarcodes.php
Then use similar as example #50 from TCPDF examples:
<?php
$style = array(
'border' => true,
'padding' => 4,
'fgcolor' => array(0,0,0),
'bgcolor' => false, //array(255,255,255)
);
//code name: QR, specify error correction level after semicolon (L,M,Q,H)
$pdf->write2DBarcode('PHP QR Code :)', 'QR,L', '', '', 30, 30, $style, 'N');

165
admin/phpqrcode/LICENSE Normal file
View File

@ -0,0 +1,165 @@
GNU LESSER GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
This version of the GNU Lesser General Public License incorporates
the terms and conditions of version 3 of the GNU General Public
License, supplemented by the additional permissions listed below.
0. Additional Definitions.
As used herein, "this License" refers to version 3 of the GNU Lesser
General Public License, and the "GNU GPL" refers to version 3 of the GNU
General Public License.
"The Library" refers to a covered work governed by this License,
other than an Application or a Combined Work as defined below.
An "Application" is any work that makes use of an interface provided
by the Library, but which is not otherwise based on the Library.
Defining a subclass of a class defined by the Library is deemed a mode
of using an interface provided by the Library.
A "Combined Work" is a work produced by combining or linking an
Application with the Library. The particular version of the Library
with which the Combined Work was made is also called the "Linked
Version".
The "Minimal Corresponding Source" for a Combined Work means the
Corresponding Source for the Combined Work, excluding any source code
for portions of the Combined Work that, considered in isolation, are
based on the Application, and not on the Linked Version.
The "Corresponding Application Code" for a Combined Work means the
object code and/or source code for the Application, including any data
and utility programs needed for reproducing the Combined Work from the
Application, but excluding the System Libraries of the Combined Work.
1. Exception to Section 3 of the GNU GPL.
You may convey a covered work under sections 3 and 4 of this License
without being bound by section 3 of the GNU GPL.
2. Conveying Modified Versions.
If you modify a copy of the Library, and, in your modifications, a
facility refers to a function or data to be supplied by an Application
that uses the facility (other than as an argument passed when the
facility is invoked), then you may convey a copy of the modified
version:
a) under this License, provided that you make a good faith effort to
ensure that, in the event an Application does not supply the
function or data, the facility still operates, and performs
whatever part of its purpose remains meaningful, or
b) under the GNU GPL, with none of the additional permissions of
this License applicable to that copy.
3. Object Code Incorporating Material from Library Header Files.
The object code form of an Application may incorporate material from
a header file that is part of the Library. You may convey such object
code under terms of your choice, provided that, if the incorporated
material is not limited to numerical parameters, data structure
layouts and accessors, or small macros, inline functions and templates
(ten or fewer lines in length), you do both of the following:
a) Give prominent notice with each copy of the object code that the
Library is used in it and that the Library and its use are
covered by this License.
b) Accompany the object code with a copy of the GNU GPL and this license
document.
4. Combined Works.
You may convey a Combined Work under terms of your choice that,
taken together, effectively do not restrict modification of the
portions of the Library contained in the Combined Work and reverse
engineering for debugging such modifications, if you also do each of
the following:
a) Give prominent notice with each copy of the Combined Work that
the Library is used in it and that the Library and its use are
covered by this License.
b) Accompany the Combined Work with a copy of the GNU GPL and this license
document.
c) For a Combined Work that displays copyright notices during
execution, include the copyright notice for the Library among
these notices, as well as a reference directing the user to the
copies of the GNU GPL and this license document.
d) Do one of the following:
0) Convey the Minimal Corresponding Source under the terms of this
License, and the Corresponding Application Code in a form
suitable for, and under terms that permit, the user to
recombine or relink the Application with a modified version of
the Linked Version to produce a modified Combined Work, in the
manner specified by section 6 of the GNU GPL for conveying
Corresponding Source.
1) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (a) uses at run time
a copy of the Library already present on the user's computer
system, and (b) will operate properly with a modified version
of the Library that is interface-compatible with the Linked
Version.
e) Provide Installation Information, but only if you would otherwise
be required to provide such information under section 6 of the
GNU GPL, and only to the extent that such information is
necessary to install and execute a modified version of the
Combined Work produced by recombining or relinking the
Application with a modified version of the Linked Version. (If
you use option 4d0, the Installation Information must accompany
the Minimal Corresponding Source and Corresponding Application
Code. If you use option 4d1, you must provide the Installation
Information in the manner specified by section 6 of the GNU GPL
for conveying Corresponding Source.)
5. Combined Libraries.
You may place library facilities that are a work based on the
Library side by side in a single library together with other library
facilities that are not Applications and are not covered by this
License, and convey such a combined library under terms of your
choice, if you do both of the following:
a) Accompany the combined library with a copy of the same work based
on the Library, uncombined with any other library facilities,
conveyed under the terms of this License.
b) Give prominent notice with the combined library that part of it
is a work based on the Library, and explaining where to find the
accompanying uncombined form of the same work.
6. Revised Versions of the GNU Lesser General Public License.
The Free Software Foundation may publish revised and/or new versions
of the GNU Lesser General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the
Library as you received it specifies that a certain numbered version
of the GNU Lesser General Public License "or any later version"
applies to it, you have the option of following the terms and
conditions either of that published version or of any later version
published by the Free Software Foundation. If the Library as you
received it does not specify a version number of the GNU Lesser
General Public License, you may choose any version of the GNU Lesser
General Public License ever published by the Free Software Foundation.
If the Library as you received it specifies that a proxy can decide
whether future versions of the GNU Lesser General Public License shall
apply, that proxy's public statement of acceptance of any version is
permanent authorization for you to choose that version for the
Library.

45
admin/phpqrcode/README Normal file
View File

@ -0,0 +1,45 @@
This is PHP implementation of QR Code 2-D barcode generator. It is pure-php
LGPL-licensed implementation based on C libqrencode by Kentaro Fukuchi.
== LICENSING ==
Copyright (C) 2010 by Dominik Dzienia
This library is free software; you can redistribute it and/or modify it under
the terms of the GNU Lesser General Public License as published by the Free
Software Foundation; either version 3 of the License, or any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU Lesser General Public License (LICENSE file)
for more details.
You should have received a copy of the GNU Lesser General Public License along
with this library; if not, write to the Free Software Foundation, Inc., 51
Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
== INSTALATION AND USAGE ==
* INSTALL file
* http://sourceforge.net/apps/mediawiki/phpqrcode/index.php?title=Main_Page
== CONTACT ==
Fell free to contact me via e-mail (deltalab at poczta dot fm) or using
folowing project pages:
* http://sourceforge.net/projects/phpqrcode/
* http://phpqrcode.sourceforge.net/
== ACKNOWLEDGMENTS ==
Based on C libqrencode library (ver. 3.1.1)
Copyright (C) 2006-2010 by Kentaro Fukuchi
http://megaui.net/fukuchi/works/qrencode/index.en.html
QR Code is registered trademarks of DENSO WAVE INCORPORATED in JAPAN and other
countries.
Reed-Solomon code encoder is written by Phil Karn, KA9Q.
Copyright (C) 2002, 2003, 2004, 2006 Phil Karn, KA9Q

2
admin/phpqrcode/VERSION Normal file
View File

@ -0,0 +1,2 @@
1.1.4
2010100721

File diff suppressed because it is too large Load Diff

2
admin/phpqrcode/cache/frame_1.dat vendored Normal file
View File

@ -0,0 +1,2 @@
<EFBFBD><EFBFBD>Á À E9³u<06><>`³"PÅ„CÛ牗T!0$
E•ɲQ™<EFBFBD>Ém½úhÛ¾9{kI" 9Ln)Ap¤åÖ¾Ë>ß^‡Õz³mënÅ´mßn†ú¦Ë

BIN
admin/phpqrcode/cache/frame_1.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 126 B

BIN
admin/phpqrcode/cache/frame_10.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_10.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 202 B

BIN
admin/phpqrcode/cache/frame_11.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_11.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 205 B

BIN
admin/phpqrcode/cache/frame_12.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_12.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

BIN
admin/phpqrcode/cache/frame_13.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_13.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 B

BIN
admin/phpqrcode/cache/frame_14.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_14.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 213 B

BIN
admin/phpqrcode/cache/frame_15.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_15.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 219 B

1
admin/phpqrcode/cache/frame_16.dat vendored Normal file
View File

@ -0,0 +1 @@
xÚí™A E]sëIX´;¸Ün6€È`q”êêW6ñ奚`Œ%A/3!¢°‚¢Š!gÈÌ¡1N) éE¢Ï|;®—>6â¸<C3A2>Þ97$ëÄôëc]kkö<6B>wé1Öü[·m­CÍœcÊRºÄê¹>¦èµ¾šE,•hʼnp„#áxF<1C>yWÏÇVWGçòÕ3¼Õ+шþàË“úSŽâ}Äž<C384>#áG8b^c^cÏÀŽp„c&3YQ"ñŽ÷çÌvµù…ñàÎþþ¼¹kÞ9ŠÜ‡÷}”¹³ï×ú ¢Ä¿<C384>QäÿL—/ÝÔÀÏ

BIN
admin/phpqrcode/cache/frame_16.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 B

BIN
admin/phpqrcode/cache/frame_17.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_17.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 B

2
admin/phpqrcode/cache/frame_18.dat vendored Normal file
View File

@ -0,0 +1,2 @@
xÚí™A
ƒ0E]çÖ…,2;sƒä&ÉÍšh¥ÛêO¡ôÝÈàã1&09OIv@DDÒ Ì&§Ù‰K<E280B0>XÈÕFv•<Ádqò9Ö<%h•¹ Yïs !(d¥²ës;~||b(ÏøYůg#µ`œK ±S¼Åô¹Ä¶˜ùsàidß<64>Lg:Ó™Îtþ/gmª<6D>™ƒkÅMâ3³{­4rTÈQýÿe¥·s·>ó<Ó™Ît¦3<C2A6>éÌ;ïH¼#Ñ™Ît¦3<C2A6>ÍYœ+og©hù¶óµÙ½¬lnðûF>Øi^»#awm;gè~pÛgìNs{6z»ãºïÞäp¾Ê'

BIN
admin/phpqrcode/cache/frame_18.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 B

3
admin/phpqrcode/cache/frame_19.dat vendored Normal file
View File

@ -0,0 +1,3 @@
xÚíšA
Ä E»öÖ.ĚNo Ť¶iiRÚN2áW%đxÁ@ÚÚśę'­
u<EFBFBD>6×ę<EFBFBD>.ť*S;}<7D>«ŇĂ ĎT účĚztąď%ç,ŇĹÚâÎ}ç;“âç)ąź<C485>âÝZÚîLĺčą÷¬Pçç$Ż×÷ĎqËgśLÂôdJ‡;Üáw¸Ăý.]z#źľ«[Íť˝ďOg­Ćô"ĐË áBíî¦}Ç}‡;Üáw¸Ăî<>#1GbŽ„;Üáw¸Ăý_ÝC+w˘@Dfî÷ďç™uťř2™ĹÚÉNţű9R7|pWßkďű®ż“ßßkşöżşú»ĽÎÓ

BIN
admin/phpqrcode/cache/frame_19.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

1
admin/phpqrcode/cache/frame_2.dat vendored Normal file
View File

@ -0,0 +1 @@
xÚÍÍ À F{vë&  à&°Y+?Z1öÐSŸ'y!¢ŸÌÁa<C381>815&£•Û´ŽÙHå£Ùžc³•l«ÏFÆè1º#é6 fÊÖü©§6Äø•O7ˆ¨†C¦«ðÖ<C3B0>ž<EFBFBD>Ï8gI®ÏöfB¦ÃÄÿæ\DÔ»(

BIN
admin/phpqrcode/cache/frame_2.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 B

BIN
admin/phpqrcode/cache/frame_20.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_20.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

1
admin/phpqrcode/cache/frame_21.dat vendored Normal file
View File

@ -0,0 +1 @@
xÚíšA E]sëIX´Ün6Up<13>“в™ÿ]Ù˜þ< i-eWö˜)×äÅ•¼ÉÂ…H\jvqÙHL\6šÝÐ…rI¢LܹÜÕ%ÅÓ@´þ±V—vÆÂúý¤(ÏP4|ÎXnÒgÉ<>ß¼~]D¾ÉÕ×u1Us S\À°€,ÿÅ2Þ¢N§Ã?DKºüF-:“eJ]p_À°€,˜a0Ã`†ÁÝ °`†Á ƒw,` X´]˜ˆ¹˜°5 ‰®Y4{屿ñ2íûåvçJs†±Ûí9±˜í)õu±Û¹êÏØ,«]¸“‹Ù^_§7$ƒ_Í

BIN
admin/phpqrcode/cache/frame_21.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 235 B

3
admin/phpqrcode/cache/frame_22.dat vendored Normal file
View File

@ -0,0 +1,3 @@
xÚíšA
„0 E]{ë<>.]{{{³©Z¥BepÆÞwe@<1F>VERZ3»Á"*2o€4¦y‰)i#dÒbdFÒ…´ŒI"ú‘—4ž½W­IíuŠÓ45ßx«.Z­SÙ{ÁŸ¯8åËÿk={o.±qÊÙ£[œÍ:å¸q»õƒy
)t#á„N8ádCj<43>-O<>OG}¼:/Ÿ:s<>z!Å)^<ùe½·S·uâ{ 'œp 'ú=ú=ú=¾'œp 'œp¢ß£ß£ßã<1F>N8á„Óÿ9©ªˆôpQQõ]HÔpz¾<7A>ØGœ^æ½Qº˜I|¾ß³<C39F>u;9™ÎïÕëd;“X~$ËÙÑÉt¶ÊÛédy

BIN
admin/phpqrcode/cache/frame_22.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 226 B

3
admin/phpqrcode/cache/frame_23.dat vendored Normal file
View File

@ -0,0 +1,3 @@
xÚíšA
à E³öÖfo U<E280BA>) %M!ΔÂûYu(<šð“sK²“TœÓ
É&§IÚ\i+¥Ðª™(m®´FQ¡¹¯h±æöüèv~n1„oÏ]sëçÖï¤_ÞŸÊ3`î_w2õȹ•lc[¼•;·Ûc֟ˤNóª4Üpà 7ÜpÃímTÿ¸œÝêrÞiñä_ƒç¿pS=7Þ7Üpà 7ÜpÃ<70>>IŸ¤Oò-Á 7Üpà 7ú$}>É·7Üpà ·tss‰Órs §åVÍÎÜÆ÷mýï¡Ò¹ò‡<C3B2>Þñ}R~7ôà&¾÷º?7ù<37>Þý<C39E>Ô¦Iïbhâ{æ»<ÀMi-

BIN
admin/phpqrcode/cache/frame_23.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 220 B

1
admin/phpqrcode/cache/frame_24.dat vendored Normal file
View File

@ -0,0 +1 @@
νAƒ E»φΦMX0;Έ<>άnVP4ΪHSS»xίU3±/O΄ύ LiJ4<4A><34>±Vβ JC<4A>%ύ‰6VR&ΓήDB<E28098>HjDωJΟ??™―κBl­cΗ±ρ½§'σU­λXοUοή<CEBF>0ζΓywΝΔ―χj¬ιλ<CEB9>³€3ΕΎλ<CE8E>cj†ω£{¨¥½:GG<1C>έρψ<CF81>ϋΪ°N†v;Ή¶η¬“J ‡ΔΠ<ϋ‡Ι]<5D>κλΘσ<CE98>#<23><38>#<23>8βH'§“ΣΙωΝΑGGιδtr:9Ο#<23><38>#<23>8βΨ“h­<68>―NΤt”<74>΄Φ_έΨ>tΉeλμS­―¦ζ<C2A6>ω^<5E>\g―υΞQe?ωvΜoοΥ;<3B>ο<>*οwlςΧmΡ

BIN
admin/phpqrcode/cache/frame_24.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 B

3
admin/phpqrcode/cache/frame_25.dat vendored Normal file
View File

@ -0,0 +1,3 @@
xÚíÛA
à …á¬së™]rƒx½Y51mMÈBG
ÿ¸*Sx|Ua5ƵZ—Š„-,Ž1ä²HÑPÒRjšX5§®i†©áG©>W¥ŽžRïöÕ/Ëâ+uT廯å Ïӯ嗴ªuæÏ¥Ú[Sía£[kví÷5•+5n§Á´JêÜ%+V¬X±bÅŠõ߬u'Á<07>±þÔû SRýå÷štzZ»ì+÷+V¬X±bÅŠ•ٟٟٟûŠ+V¬X±bÅÊìÏìÏìÏ}ÅŠ+V¬X±ö±ª¤¥ÖVI©¢ÖÖ+k«qÿ[úËtŽ·oVZÍþvoNV³wÇ}µ{³r<ýR­Þ"<22>RÍÞ]ê W«r}

BIN
admin/phpqrcode/cache/frame_25.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 B

2
admin/phpqrcode/cache/frame_26.dat vendored Normal file
View File

@ -0,0 +1,2 @@
xÚíA
à E³öÖ…,t§7ˆU<E280BA> E)i7ï»*~cÃüÅÄXÖEBÆè°FC˜³6¡:&çL,å¬Mv.ŽÂÎæKgŸÕ¸ãYMç>ŸÎí>ûmÛš·?ª•vô¹¾mg?<3F>ßÒ±Îþ³æÎ·ªd˜¹U¦ÏIk•ÚÚE\ÕÙMs†f˜a†f˜a>œ[sÓˆ9쬩ެ8bö<kÕÙ7œ}ç†k³™§õ™ÿ3Ì0à 3Ì0à 3Ìä*r¹Š\Å7 f˜a†f˜a†fr¹Š\Å7 f˜a†f˜a†YÆÙ<18>Î æd4ƒ9kíÆÌÔÝyûX y‰gŒØÙ)«dw<64>nÌ¢ûU×>Ëî”]ßöLgÉÝÁ³è¾äEo w1

BIN
admin/phpqrcode/cache/frame_26.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 B

BIN
admin/phpqrcode/cache/frame_27.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_27.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 237 B

BIN
admin/phpqrcode/cache/frame_28.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_28.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 234 B

2
admin/phpqrcode/cache/frame_29.dat vendored Normal file
View File

@ -0,0 +1,2 @@
xÚíÜA<0E> …a×Ţş ‹™ťÜ@n7+*¶šÖÚ4!Í?®Jšđň ł<>”抮«]Ş—ÉSźâTf)ŮsŠIÂ"…Č”bžÝ0…Š|•"Luٸî,Ž×EÇ1\6®*ĎuQŢ?Ľ>aĚĎ…ăţńŽÄRő-r­“÷n.ďꯋ\®Tżü:Ó*)|)°Ŕ ,°Ŕ ,ţŃâęóĺéx_ă¬}:^R„<52>Uoɢ‰uÁ~ÁމX`<60>XĐŹĐŹĐŹĐŹ°_`<60>X`<60>XĐŹĐŹĐŹ°_`<60>X`<60>XĐŹĐŹĐŹĐŹ°wb<77>X`<60>żĄPUőö)DÔŢ"cČ{zçÎő3ęé<}¸óˇ^?b÷m˙ÎÂěž<C49B>íş°»óaűŽ´Âę.<2E>]
ł{Q6uáT,9

BIN
admin/phpqrcode/cache/frame_29.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 232 B

1
admin/phpqrcode/cache/frame_3.dat vendored Normal file
View File

@ -0,0 +1 @@
xÚí“Á À E{vë&  à&°Y+¢b¤öÐkŸ'yù¤¿ÌÁa :äÀTXl<58>Þ¶$W+Ó<>vû®îœ¢9}gRæ¬@H0YPB½ÆÃEmÚÚ?ûœÍ±ísœÖ"bµìt2cnÖé†É:½ﺭë;¿Y§“ÃzÿQã«7¿Ô

BIN
admin/phpqrcode/cache/frame_3.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 B

BIN
admin/phpqrcode/cache/frame_30.dat vendored Normal file

Binary file not shown.

BIN
admin/phpqrcode/cache/frame_30.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 B

1
admin/phpqrcode/cache/frame_31.dat vendored Normal file
View File

@ -0,0 +1 @@
xÚíÜAƒ …a×Þº ØÉ à&r³ Á´¸ªÎ4ù§«†´Ä·!¥mV3I<33>µv­!ÒœÖ2¢i\NSSä4EF2<46>+65Å¥‰e¾þÃ/Wœs]šñ¾‰!„Á?ÿpÅõû¦=S~ùüÄ<C3BC>?Ëý+þx¦Ö6r6yö³Ùƹ}“Ç´™ë×eR1-<2D>W•l°Ál°ÁûÒŒÞXŸz/>Væ«·ù§:ñÒÒÄAš8üý-+mTíÎÎbl°Ál°ÁlèštMº&]“³l°Ál°Áº&]“®I×ä¼Ál°Ál°Áº&]“®Éyƒ 6Ø`ƒ 6Ø`ƒÍÝi¬uy´ØXWòè±Éi¬²\t†ýz•—Š>•.î”z¾kÊß t²¿7©ß7òwJõÏ”¶4Òw<77>ÒˆßÓÖÍ85‰

BIN
admin/phpqrcode/cache/frame_31.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 260 B

2
admin/phpqrcode/cache/frame_32.dat vendored Normal file
View File

@ -0,0 +1,2 @@
xЪнЬБ
…бЦѕхЂ‹л.Я ЯDЯl¬, ¦љMz‰я6†Г‡ gcJЛD;ф'.®AIqћЮ‰ДI,IrўYЁ»ЛFk%‰DюOжy|EDЄDЧы(LУ_YЌК>*Яљ?aКїk±L_Ј<[c—с¶п>К<63>хuФLIдХ%В#Њ0В#Њ0В#ЊЮotСўљхµ}ЕЬ4Нfќv_)‰ВEўpъЏ¬h5R·Џ8Џ8і1В#Њ0В#Њ0ўУТiйґtZО#Њ0В#Њ0В#Њ0ўУТiйґtZО#Њ0В#Њ0В#Њ0ўУТiйґtZОlЊ0В#Њ0ВЈч9q"ўЙHЬњH™Qюќµп"ЫХL5}-ЭЬѕУкёkм`¤в>¶zйёі®юЦ4&Тб!‘Љы!«щ`ї:5

BIN
admin/phpqrcode/cache/frame_32.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 262 B

Some files were not shown because too many files have changed in this diff Show More