dvm/bewerber_daten.php
2023-04-25 13:15:15 +02:00

1092 lines
40 KiB
PHP
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?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");
require_once("../func_tangen.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 dvm_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
} elseif(isset($_GET['user'])) {
$username = mb_strtoupper($_GET["user"]);
} else {
$username = $_SESSION["username"];
}
$_SESSION["username"] = $username;
if ($username == "") {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?error=1\">";
exit;
}
# 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 PDF Dateien hochgeladen werden.");
}
if ($errorno == 2) {
# Tabelle dvm_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', "Die Datei mit diesem Namen wurde bereits hochgeladen.");
}
if ($errorno == 4) {
# Tabelle dvm_parameter
$anz_dok = trim(get_parameter(13));
$smarty->assign('index_error_text', "Es dürfen maximal $anz_dok Dateien hochgeladen werden.");
}
}
$result = $db->query("SELECT a.ka_id, anrede, vorname, nachname, str, plz, ort, date_format(tm_datum, '%d.%m.%Y - %H:%i Uhr') tm_datum_form, a.id, c.tan, hochschule, date_format(login_dat, '%d.%m.%Y - %H:%i Uhr') login_dat_form, login_dat, a.mail, behinderung
FROM dvm_kandidat a, dvm_term_kand b, dvm_tanpool c, dvm_termine d
WHERE a.ka_id = b.ka_id
AND b.tp_id = c.tp_id
AND b.tm_id = d.tm_id
AND a.ka_id = '$username'
ORDER BY tk_id DESC
LIMIT 1");
$row = $result->fetch_array();
#Aktuelle Tan ermitteln
$result_tan = $db->query("SELECT tan
FROM dvm_tanpool a, dvm_term_kand b
WHERE a.tp_id = b.tp_id
AND b.ka_id = '$username'
order by b.tk_id DESC
LIMIT 1");
$row_tan = $result_tan->fetch_array();
$tan = $row_tan['tan'];
$_SESSION["tan"] = $tan;
if ($row['anrede'] == 'M') {
$anrede = 'Herr';
} else {
$anrede = 'Frau';
}
if($row['login_dat'] == '0000-00-00 00:00:00'){
$tm_datum_form = "-";
}else{
$tm_datum_form = $row['login_dat_form'];
}
# Wunschhochschule
$result_wunschhs = $db->query("SELECT wunsch_hs, form_hs
FROM dvm_erw_daten
WHERE ka_id = '$username'");
$row_wunschhs = $result_wunschhs->fetch_array();
if($row_wunschhs['wunsch_hs'] == 'E'){
$wunsch_hs = "Egal";
}elseif($row_wunschhs['wunsch_hs'] == 'K'){
$wunsch_hs = "Kehl";
}elseif($row_wunschhs['wunsch_hs'] == 'L'){
$wunsch_hs = "Ludwigsburg";
}
if($row_wunschhs['form_hs'] == '1'){
$status_form_studium = "Erststudium";
}elseif($row_wunschhs['form_hs'] == '2'){
$status_form_studium = "Zweitstudium";
}
$smarty->assign('status_anrede', $anrede);
$smarty->assign('status_vorname', $row['vorname']);
$smarty->assign('status_nachname', $row['nachname']);
$smarty->assign('status_str', $row['str']);
$smarty->assign('status_plz', $row['plz']);
$smarty->assign('status_ort', $row['ort']);
$smarty->assign('status_mail', $row['mail']);
$smarty->assign('status_tm_datum_form', $row['tm_datum_form']);
$smarty->assign('status_login_dat_form', $tm_datum_form);
$smarty->assign('status_hochschule', $row['hochschule']);
$smarty->assign('status_wunsch_hs', $wunsch_hs);
$smarty->assign('status_form_studium', $status_form_studium);
$smarty->assign('status_behinderung', $row['behinderung']);
$smarty->assign('status_login_id', $row['id']);
$smarty->assign('status_login_tan', $tan);
$result_ct = $db->query("SELECT count(*) Anz
FROM dvm_ergebnisse
WHERE ka_id =$row[ka_id]
AND tan='$tan'");
$row_ct = $result_ct->fetch_array();
if ($row_ct['Anz'] == 0) {
$smarty->assign('status_erg_vorhanden', 0);
$smarty->assign('status_erg_bestanden', '3');
} else {
$smarty->assign('status_erg_vorhanden', 1);
$result_erg = $db->query("SELECT satzerg, analogie, rechenaufgaben, zahlenreihen, rechenzeichen, matrizen, merkf, summe, bestanden, date_format(einsicht_dat, '%d.%m.%Y, %H:%i Uhr') einsicht_dat_form, einsicht_dat
FROM dvm_ergebnisse
WHERE ka_id =$row[ka_id]
AND tan='$tan'");
$row_erg = $result_erg->fetch_array();
if ($row_erg['einsicht_dat'] == '0000-00-00 00:00:00') {
$einsicht_dat = "bisher keine Einsicht";
} else {
$einsicht_dat = $row_erg['einsicht_dat_form'];
}
$smarty->assign('status_erg_satzerg', $row_erg['satzerg']);
$smarty->assign('status_erg_analogie', $row_erg['analogie']);
$smarty->assign('status_erg_rechenaufgaben', $row_erg['rechenaufgaben']);
$smarty->assign('status_erg_zahlenreihen', $row_erg['zahlenreihen']);
$smarty->assign('status_erg_rechenzeichen', $row_erg['rechenzeichen']);
$smarty->assign('status_erg_matrizen', $row_erg['matrizen']);
$smarty->assign('status_erg_merkf', $row_erg['merkf']);
$smarty->assign('status_erg_summe', $row_erg['summe']);
$smarty->assign('status_erg_einsicht_dat', $einsicht_dat);
if ($row_erg['bestanden'] == 0) {
$smarty->assign('status_erg_bestanden', 0);
$smarty->assign('status_erg_bestanden_text', "nicht bestanden");
}
if ($row_erg['bestanden'] == 1) {
$smarty->assign('status_erg_bestanden', 1);
$smarty->assign('status_erg_bestanden_text', "bestanden");
}
}
# Ältere Testergebnisse vorhanden?
$query4 = "SELECT tan
FROM dvm_ergebnisse
WHERE ka_id =$row[ka_id]
AND tan!='$tan'";
$result4 = $db->query($query4) or die("Cannot execute query4");
while ($row4 = $result4->fetch_array()) {
$result_erg = $db->query("SELECT satzerg, analogie, rechenaufgaben, zahlenreihen, rechenzeichen, matrizen, merkf, summe, bestanden, date_format(einsicht_dat, '%d.%m.%Y, %H:%i Uhr') einsicht_dat_form, einsicht_dat
FROM dvm_ergebnisse
WHERE ka_id =$row[ka_id]
AND tan='$row4[tan]'");
$row_erg = $result_erg->fetch_array();
$result_testdat = $db->query("SELECT date_format(tm_datum, '%d.%m.%Y - %H:%i') datum_form
, CASE tm_standort
WHEN 'L' THEN 'Ludwigsburg'
WHEN 'K' THEN 'Kehl'
ELSE '' END as tm_standort
FROM dvm_term_kand a, dvm_tanpool b, dvm_termine c
WHERE a.tp_id = b.tp_id
AND a.tm_id =c.tm_id
AND tan = '$row4[tan]'");
$row_testdat = $result_testdat->fetch_array();
if ($row_erg['einsicht_dat'] == '0000-00-00 00:00:00') {
$einsicht_dat = "bisher keine Einsicht";
} else {
$einsicht_dat = $row_erg['einsicht_dat_form'];
}
if ($row_erg['bestanden'] == 0) {
$status_erg_bestanden = "0";
$status_erg_bestanden_text = "nicht bestanden";
}
if ($row_erg['bestanden'] == 1) {
$status_erg_bestanden = "1";
$status_erg_bestanden_text = "bestanden";
}
$row4['status_erg_testdat'] = $row_testdat['datum_form'];
$row4['status_erg_standort'] = $row_testdat['tm_standort'];
$row4['status_erg_satzerg'] = $row_erg['satzerg'];
$row4['status_erg_analogie'] = $row_erg['analogie'];
$row4['status_erg_rechenaufgaben'] = $row_erg['rechenaufgaben'];
$row4['status_erg_zahlenreihen'] = $row_erg['zahlenreihen'];
$row4['status_erg_rechenzeichen'] = $row_erg['rechenzeichen'];
$row4['status_erg_matrizen'] = $row_erg['matrizen'];
$row4['status_erg_merkf'] = $row_erg['merkf'];
$row4['status_erg_summe'] = $row_erg['summe'];
$row4['status_erg_bestanden'] = $status_erg_bestanden;
$row4['status_erg_bestanden_text'] = $status_erg_bestanden_text;
$row4['status_erg_einsicht_dat'] = $einsicht_dat;
$table_data4[] = $row4;
}
$smarty->assign('table_data4', $table_data4);
$query1 = "SELECT up_id, ka_id, file, beschreibung, date_format(upload_dat, '%d.%m.%Y, %H:%i Uhr') upload_dat
FROM dvm_upload
WHERE ka_id = $row[ka_id]
AND upload_dat != '0000-00-00 00:00:00'";
$result1 = $db->query($query1) or die("Cannot execute query1b");
$username = $_SESSION["username"];
$result_id = $db->query("SELECT id
FROM dvm_kandidat
WHERE ka_id = '$username'");
$row_id = $result_id->fetch_array();
$id = $row_id['id'];
while ($row1 = $result1->fetch_array()) {
if (file_exists($row1['file'])) {
$exists = 1;
} else {
$exists = 0;
}
$basename = basename($row1['file']);
$rep = $id."_";
$row1['exists'] = $exists;
$row1['basename'] = str_replace($rep, '', $basename);
$row1['basename_link'] = urlencode($row1['file']);
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
# Gespeicherte Werte Noten
$result_note = $db->query("SELECT erfdat_hzb, erfdat_schnitt, date_format(erwerb_hzb, '%d.%m.%Y') erwerb_form, hzb, hzb_punkte, zeugnisschnitt, zeugnisschnitt_punkte
FROM dvm_note
WHERE ka_id ='$username'
ORDER BY no_id desc
LIMIT 1");
$row_note = $result_note->fetch_array();
$row_cnt = $result_note->num_rows;
if($row_note['erfdat_hzb'] != '0000-00-00 00:00:00' AND $row_cnt > 0){
# HZB erfasst
$smarty->assign('notenart', "HZB");
if($row_note['hzb_punkte'] != '0.00'){
$smarty->assign('skala_value', "Punkte");
$smarty->assign('note', "$row_note[hzb_punkte]");
# Bei hzb gibts keine Punkte
#$smarty->assign('note_schnitt', "$row_note[hzb]");
}else{
$smarty->assign('skala_value', "Noten");
$smarty->assign('note', "$row_note[hzb]");
$smarty->assign('erwerb_hzb', "$row_note[erwerb_form]");
}
}elseif($row_note['erfdat_schnitt'] != '0000-00-00 00:00:00' AND $row_cnt > 0){
# Durchscnittsnote erfasst
$smarty->assign('notenart', "Durchschnitt");
if($row_note['zeugnisschnitt_punkte'] != '0.00'){
$smarty->assign('skala_value', "Punkte");
$smarty->assign('note', "$row_note[zeugnisschnitt_punkte]");
$smarty->assign('note_schnitt', "$row_note[zeugnisschnitt]");
}else{
$smarty->assign('skala_value', "Noten");
$smarty->assign('note', "$row_note[zeugnisschnitt]");
}
}else{
# Keine Auswahl
$smarty->assign('notenart', "Keine");
$smarty->assign('skala_value', "Noten");
$smarty->assign('note', "");
$smarty->assign('erwerb_hzb', "");
}
# Gespeicherte Werte zur HZB
$result_hzbart = $db->query("SELECT dtxt
FROM dvm_hzbart a, dvm_erw_daten b
WHERE a.hzb_id=b.hzbart
AND b.ka_id ='$username'
LIMIT 1");
$row_hzbart = $result_hzbart->fetch_array();
$smarty->assign('erwerb_art', "$row_hzbart[dtxt]");
# Gespeicherte erweiterte Werte
$result_erwwerte = $db->query("SELECT stadterwerb, staaterwerbausl, wehrzivil, entwicklung, fsj, stud_fertig, ahr_fertig, deutsch_ewr
FROM dvm_erw_daten
WHERE ka_id ='$username'
LIMIT 1");
$row_erwwerte = $result_erwwerte->fetch_array();
$smarty->assign('erwerb_stadterwerb', "$row_erwwerte[stadterwerb]");
$smarty->assign('erwerb_staaterwerbausl', "$row_erwwerte[staaterwerbausl]");
if ($row_erwwerte['wehrzivil'] == 'J') {
$smarty->assign('erw_wehrzivil', "Ja");
}else{
$smarty->assign('erw_wehrzivil', "Nein");
}
if ($row_erwwerte['entwicklung'] == 'J') {
$smarty->assign('erw_entwicklung', "Ja");
}else{
$smarty->assign('erw_entwicklung', "Nein");
}
if ($row_erwwerte['fsj'] == 'J') {
$smarty->assign('erw_fsj', "Ja");
}else{
$smarty->assign('erw_fsj', "Nein");
}
if ($row_erwwerte['stud_fertig'] == 'J') {
$smarty->assign('erw_stud_fertig', "Ja");
}else{
$smarty->assign('erw_stud_fertig', "Nein");
}
if ($row_erwwerte['ahr_fertig'] == 'J') {
$smarty->assign('erw_ahr_fertig', "Ja");
}else{
$smarty->assign('erw_ahr_fertig', "Nein");
}
if ($row_erwwerte['deutsch_ewr'] == 'J') {
$smarty->assign('erw_deutsch_ewr', "Ja");
}else{
$smarty->assign('erw_deutsch_ewr', "Nein");
}
# Gespeicherte Werte Praxisstellen
$query2 = "SELECT a.ka_id, a.wu_id, b.bez, b.str, b.plz, b.ort, b.mail, a.status, date_format(sendedat, '%d.%m.%Y, %H:%i Uhr') sendedat, b.dst_id, zusage
FROM dvm_dst_wunsch a, dvm_dienststellen b
WHERE a.dst_id = b.dst_id
AND a.ka_id = $row[ka_id]";
$result2 = $db->query($query2) or die("Cannot execute query2");
while ($row2 = $result2->fetch_array()) {
if ($row2['status'] == 'V') {
$status = "<a class='aformlink box' title='Mail erneut senden' href='?action=mailsenden&wu_id=$row2[wu_id]'>Versendet</a><br>$row2[sendedat]";
}
if ($row2['status'] == 'F') {
$status = "<a class='aformlink box' title='Mail erneut senden' href='?action=mailsenden&wu_id=$row2[wu_id]'>Fehler</a>";
}
if ($row2['status'] == 'O') {
$status = "Vorgemerkt";
}
$row2['status'] = $status;
$table_data2[] = $row2;
}
$smarty->assign('table_data2', $table_data2);
# Gespeicherte Werte: Sonstige Mails
$query3 = "SELECT sm_id, sender, sendermail, empfaenger, mail_betreff, mail_text, status, date_format(sendedat, '%d.%m.%y, %H:%i Uhr') sendedat_form
FROM dvm_sonstige_mail
WHERE ka_id = $row[ka_id]
ORDER BY sendedat desc";
$result3 = $db->query($query3) or die("Cannot execute query2");
while ($row3 = $result3->fetch_array()) {
if ($row3['status'] == 'V') {
$status = "<a class='aformlink box' title='Mail erneut senden' href='?action=mailsenden_sonst&sm_id=$row3[sm_id]'>Versendet</a><br>$row3[sendedat]";
}
if ($row3['status'] == 'F') {
$status = "<a class='aformlink box' title='Mail erneut senden' href='?action=mailsenden_sonst&sm_id=$row3[sm_id]'>Fehler</a>";
}
$row3['status'] = $status;
$table_data3[] = $row3;
}
$smarty->assign('table_data3', $table_data3);
}
if ($action == 'mail') {
$wu_id = $_GET['wu_id'];
$result_erg = $db->query("SELECT mail_text
FROM dvm_dst_wunsch
WHERE wu_id =$wu_id");
$row_erg = $result_erg->fetch_array();
$smarty->assign('mail_text', $row_erg['mail_text']);
}
if ($action == 'mail_sonst') {
$sm_id = $_GET['sm_id'];
$result_erg = $db->query("SELECT mail_text, mail_betreff
FROM dvm_sonstige_mail
WHERE sm_id =$sm_id");
$row_erg = $result_erg->fetch_array();
$smarty->assign('mail_text', $row_erg['mail_text']);
$smarty->assign('mail_betreff', $row_erg['mail_betreff']);
}
if ($action == 'mailsenden') {
$wu_id = $_GET['wu_id'];
$result_erg = $db->query("SELECT mail_text, mail_betreff, b.mail, b.bez
FROM dvm_dst_wunsch a, dvm_dienststellen b
WHERE a.dst_id = b.dst_id
AND wu_id =$wu_id");
$row_erg = $result_erg->fetch_array();
$smarty->assign('mail_text', $row_erg['mail_text']);
$smarty->assign('mail_betreff', $row_erg['mail_betreff']);
$smarty->assign('mail_mail', $row_erg['mail']);
$smarty->assign('mail_bez', $row_erg['bez']);
$smarty->assign('mail_wuid', $wu_id);
}
if ($action == 'mailsenden_sonst') {
$sm_id = $_GET['sm_id'];
$result_erg = $db->query("SELECT sender, sendermail, empfaenger, mail_betreff, mail_text
FROM dvm_sonstige_mail
WHERE sm_id =$sm_id");
$row_erg = $result_erg->fetch_array();
$smarty->assign('mail_sender', $row_erg['sender']);
$smarty->assign('mail_sendermail', $row_erg['sendermail']);
$smarty->assign('mail_text', $row_erg['mail_text']);
$smarty->assign('mail_betreff', $row_erg['mail_betreff']);
$smarty->assign('mail_mail', $row_erg['empfaenger']);
$smarty->assign('mail_smid', $sm_id);
}
if ($action == 'mailsenden2') {
$wu_id = $_POST['wuid'];
$result_erg = $db->query("SELECT a.ka_id, mail_text, mail_betreff, b.mail, b.bez
FROM dvm_dst_wunsch a, dvm_dienststellen b
WHERE a.dst_id = b.dst_id
AND wu_id =$wu_id");
$row_erg = $result_erg->fetch_array();
$result_kand = $db->query("SELECT hochschule
FROM dvm_kandidat
WHERE ka_id =$row_erg[ka_id]");
$row_kand = $result_kand->fetch_array();
$hochschule = "$row_kand[hochschule]";
if ($hochschule == 'Ludwigsburg') {
$anschrift = 'Reuteallee 36<br>71634 Ludwigsburg';
$sender = "Hochschule Ludwigsburg";
$sendermail = get_parameter(8);
} elseif ($hochschule == 'Kehl') {
$anschrift = 'Kinzigallee 1<br>77694 Kehl';
$sender = "Hochschule Kehl";
$sendermail = get_parameter(7);
}
$empfaenger = $row_erg['mail'];
$betreff = $_POST['betreff'];
$text = $_POST['text'];
#echo "
#From: $sender - $sendermail<br>
#$empfaenger<br>
#$betreff<br>
#$text<br>
#$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;
## 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: https://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 dvm_dst_wunsch
SET mail_text = '$text_db'
, mail_betreff = '$betreff_db'
, status = 'V'
, sendedat = '$datum_db'
WHERE wu_id = $wu_id
");
$smarty->assign('mail_senderg', "Die Mail wurde verschickt!");
} else {
$sql1 = $db->query("UPDATE dvm_dst_wunsch
SET mail_text = '$text_db'
, mail_betreff = '$betreff_db'
, status = 'F'
WHERE wu_id = $wu_id
");
$smarty->assign('mail_senderg', "Die Mail konnte nicht verschickt werden!<br>Prüfen Sie die Mailadresse der Praxisstelle.");
}
}
if ($action == 'mailsenden2_sonst') {
$sm_id = $_POST['smid'];
$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: https://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 dvm_sonstige_mail
SET mail_text = '$text_db'
, mail_betreff = '$betreff_db'
, empfaenger = '$empfaenger'
, status = 'V'
, sendedat = '$datum_db'
WHERE sm_id = $sm_id
");
$smarty->assign('mail_senderg', "Die Mail wurde verschickt!");
} else {
$sql1 = $db->query("UPDATE dvm_sonstige_mail
SET mail_text = '$text_db'
, mail_betreff = '$betreff_db'
, empfaenger = '$empfaenger'
, status = 'F'
WHERE sm_id = $sm_id
");
$smarty->assign('mail_senderg', "Die Mail konnte nicht verschickt werden!<br>Prüfen Sie die Mailadresse das Kandidaten.");
}
}
if ($action == 'chhs') {
$hochschule = $_POST['hs'];
$behinderung = $_POST['behinderung'];
$username = $_SESSION["username"];
if($hochschule != ''){
$sql1 = $db->query("UPDATE dvm_kandidat
SET hochschule = '$hochschule'
WHERE ka_id = $username
");
}
if($behinderung != ''){
$sql1 = $db->query("UPDATE dvm_kandidat
SET behinderung = '$behinderung'
WHERE ka_id = $username
");
}
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=ausgabe\">";
}
if ($action == 'upload') {
$username = $_SESSION["username"];
$result_id = $db->query("SELECT id
FROM dvm_kandidat
WHERE ka_id = '$username'");
$row_id = $result_id->fetch_array();
$id = $row_id['id'];
// https://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(
".pdf"
); //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=ausgabe&error=1\">";
exit;
}
# Tabelle dvm_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=ausgabe&error=2\">";
exit;
}
$name = str_replace(array(
"ä",
"ö",
"ü",
"ß",
"Ä",
"Ü",
"Ü",
" "
), array(
"ae",
"oe",
"ue",
"ss",
"Ae",
"Oe",
"Ue",
"_"
), $name);
$ka_id = $_SESSION["ka_id"];
$neu = $id . "_" . $name;
$result_exists = $db->query("SELECT count(*) Anz
FROM dvm_upload
WHERE file = '$verz$neu'
AND ka_id = '$ka_id'");
$row_exists = $result_exists->fetch_array();
$result_anz = $db->query("SELECT count(*) Anz
FROM dvm_upload
WHERE ka_id = '$ka_id'");
$row_anz = $result_anz->fetch_array();
if ($row_exists['Anz'] > 0) {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=ausgabe&error=3\">";
exit;
}
# Tabelle dvm_parameter
$anz_dok = trim(get_parameter(13));
if ($row_anz['Anz'] >= $anz_dok) {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=ausgabe&error=4\">";
exit;
}
# Datei hochladen
$heute = mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y")); // heutiges Datum & Zeit: https://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
move_uploaded_file("$tempname", "$verz$neu"); // Unterverzeichnisse wie folgt: copy("$tempname", "pdf/$neu");
$sql1 = $db->query("insert into dvm_upload (ka_id, file, upload_dat) VALUES('$username', '$verz$neu', '$datum_db')");
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=ausgabe\">";
}
if ($action == 'descr') {
// https://www.tutorials.de/tutorials65420.html
#echo '<pre>', print_r($_POST, true), '</pre>';
$username = $_SESSION["username"];
$query1 = "SELECT up_id
FROM dvm_upload
WHERE ka_id = $username
AND upload_dat != '0000-00-00 00:00:00'";
$result1 = $db->query($query1) or die("Cannot execute query1c");
while ($row1 = $result1->fetch_array()) {
$id = "desc_".$row1['up_id'];
$beschreibung = $_POST[$id];
$sql1 = $db->query("UPDATE dvm_upload
SET beschreibung = '$beschreibung'
WHERE up_id = $row1[up_id]
");
}
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=ausgabe\">";
}
if ($action == 'deldok') {
$up_id = $_GET['up_id'];
$username = $_SESSION["username"];
$result_id = $db->query("SELECT id
FROM dvm_kandidat
WHERE ka_id = '$username'");
$row_id = $result_id->fetch_array();
$id = $row_id['id'];
$result_file = $db->query("SELECT file
FROM dvm_upload
WHERE up_id = '$up_id'");
$row_file = $result_file->fetch_array();
$basename = basename($row_file['file']);
$rep = $id."_";
$dokument = str_replace($rep, '', $basename);
$smarty->assign('deldok_dokument', $dokument);
$smarty->assign('deldok_up_id', $up_id);
}
if ($action == 'deldok2') {
$up_id = $_GET['up_id'];
$username = $_SESSION["username"];
function deleteFiles($datei)
{
if (@unlink($datei)) {
$error = TRUE;
} else {
$error = FALSE;
}
return $error;
}
$result_del = $db->query("SELECT file
FROM dvm_upload
WHERE ka_id = $username
AND up_id= $up_id
LIMIT 1;
");
$row_del = $result_del->fetch_array();
$del = deleteFiles($row_del['file']); // Dateien werden im Uploadverzeichnis gel&ouml;scht, falls noch welche darin w&auml;ren
if ($del) {
$sql1 = $db->query("DELETE FROM dvm_upload
WHERE ka_id = $username
AND up_id= $up_id");
}
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=ausgabe\">";
}
if ($action == 'stelle') {
$username = $_SESSION["username"];
$query1 = "SELECT a.dst_id, bez, plz, ort
FROM dvm_dienststellen a
WHERE a.dst_id NOT IN (SELECT dst_id
FROM dvm_dst_wunsch
WHERE ka_id = '$username'
)
AND (gueltig_von <= date_format(now(), '%Y-%m-%d') OR gueltig_von = '0000-00-00')
AND (gueltig_bis >= date_format(now(), '%Y-%m-%d') OR gueltig_bis = '0000-00-00')
ORDER BY bez ASC";
$result1 = $db->query($query1) or die("Cannot execute query1d");
while ($row1 = $result1->fetch_array()) {
$table_data1[] = $row1;
}
$smarty->assign('table_data1', $table_data1);
# Gespeicherte Werte
$query2 = "SELECT a.wu_id, b.bez, b.str, b.plz, b.ort, b.mail
FROM dvm_dst_wunsch a, dvm_dienststellen b
WHERE a.dst_id = b.dst_id
AND a.ka_id = $username";
$result2 = $db->query($query2) or die("Cannot execute query2b");
while ($row2 = $result2->fetch_array()) {
$table_data2[] = $row2;
}
$smarty->assign('table_data2', $table_data2);
# Tabelle dvm_parameter
$anz_stellen = trim(get_parameter(14));
$smarty->assign('index_stelle_anz', $anz_stellen);
# Fehler bei Praxisstellenwahl anzeigen
if (isset($_GET['error'])) {
$errorno = $_GET['error'];
$smarty->assign('index_error', 1);
if ($errorno == 1) {
$smarty->assign('index_error_text', "Es dürfen maximal $anz_stellen Stellen gewählt werden.");
}
if ($errorno == 2) {
$smarty->assign('index_error_text', "Sie müssen zuerst eine Stelle aud der Dropdownliste markieren.");
}
if ($errorno == 3) {
$smarty->assign('index_error_text', "Es muss zunächst eine zuständige Hochschule definiert werden.");
}
}
}
if ($action == 'save_praxis') {
$username = $_SESSION["username"];
$dst_id = $_POST["stelle"];
/*
// https://www.tutorials.de/tutorials65420.html
$result_anz = $db->query("SELECT count(*) Anz
FROM dvm_dst_wunsch
WHERE ka_id = '$ka_id'");
$row_anz = $result_anz->fetch_array();
# Tabelle dvm_parameter
$anz_stellen = trim(get_parameter(14));
if ($row_anz['Anz'] >= $anz_stellen) {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=stelle&error=1\">";
exit;
}
*/
if ($dst_id == '') {
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=stelle&error=2\">";
exit;
}
$result_hs = $db->query("SELECT anrede, hochschule, id
FROM dvm_kandidat
WHERE ka_id = $username
LIMIT 1;
");
$row_hs = $result_hs->fetch_array();
$hochschule = $row_hs['hochschule'];
if($hochschule == 'Ludwigsburg'){
$anschrift = 'Reuteallee 36<br>71634 Ludwigsburg';
$sender = "Hochschule Ludwigsburg";
$sendermail = get_parameter(8);
}elseif($hochschule == 'Kehl'){
$anschrift = 'Kinzigallee 1<br>77694 Kehl';
$sender = "Hochschule Kehl";
$sendermail = get_parameter(7);
}else{
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=stelle&error=3\">";
exit;
}
$link_arzt = 'https://www.gesundheitsamt-bw.de/lga/DE/Service/Gesundheitliche_Eignung_Verbeamtung/Seiten/default.aspx';
$link = 'https://www.hs-ludwigsburg.de/kurs/dvm/praxisstelle/index.php';
$link_register = 'https://www.hs-ludwigsburg.de/kurs/dvm/praxisstelle/register.php';
$result_dst = $db->query("SELECT mail, init_tan
FROM dvm_dienststellen
WHERE dst_id = $dst_id
LIMIT 1;
");
$row_dst = $result_dst->fetch_array();
if ($row_dst['init_tan'] == ''){
$tan = tangen();
$sql0 = $db->query("UPDATE dvm_dienststellen
SET init_tan = '$tan'
WHERE dst_id = '$dst_id'
");
}else{
$tan = "";
}
$empfaenger = "$row_dst[mail]";
$betreff = "Bewerbung zur praktischen Ausbildung DVM";
#########################################################
## dieselbe Mail ist auch in /upload/index.php
#########################################################
if($row_hs['anrede'] != 'W'){
# männliche Version
$text = "Sehr geehrte Damen und Herren,<br>
<br>
an unserer Hochschule ist eine Bewerbung für den Studiengang Digitales Verwaltungsmanagement (DVM) eingegangen.
Der Bewerber hat Sie als eine seiner Wunschausbildungsstellen angegeben. ";
if($tan == ""){
$text .="
Sie erhalten einen Link für den Download der Bewerbungsunterlagen:
<br>
<br>
<a href='$link'>$link</a>";
}
if($tan != ""){
$text .="
<br>
<br>
Bitte registrieren Sie Ihre Praxisstelle zunächst mit folgenden Logindaten:<br>
<b>Registrierung:</b> $link_register<br>
<b>Benutzername:</b> $empfaenger<br>
<b>Einmalpasswort:</b> $tan
";
}
$text .="
<br>
<br>
Nach § 7 Absatz 4 APrOdigVwm gD führen die Ausbildungsstellen vor ihrer Auswahlentscheidung ein persönliches Gespräch mit den Bewerberinnen und Bewerbern.
Die Einladung zur Vorstellung (§ 7 Absatz 3 APrOdigVwm gD) erfolgt durch die Wunschausbildungsstellen. Sie teilen der zuständigen Hochschule unverzüglich schriftlich ihre Entscheidung mit.
<br>
Sollten Sie sich für den Bewerber entscheiden, ist dieser darauf hinzuweisen, unverzüglich
<ul>
<li>ein ärztliches Zeugnis über die erforderliche gesundheitliche Eignung (nicht älter als sechs Monate, eine Übersicht der hierfür zugelassenen Ärzte finden Sie unter
<a href='$link_arzt'>$link_arzt</a>) sowie</li>
<li>ein Führungszeugnis zur Vorlage bei einer Behörde (§ 30 Absatz 5 des Bundeszentralregistergesetzes) nicht älter als drei Monate,</li>
</ul>
der Hochschule zu übermitteln.
<br><br>
Bitte teilen Sie dem Bewerber mit, dass er nur dann einen Ausbildungsplatz bei Ihnen erhalten kann, wenn er eine endgültige Zulassung für einen Studienplatz durch die Hochschule erhält.
<br><br>
Freundliche Grüße
<br><br>
Ihre Hochschule $hochschule
<br>
$anschrift
<br>
<p>
Diese Mail wurde automatisch generiert!<br />
Antworten Sie daher nicht auf diese Mail.<br />
<br />
Vielen Dank!
</body>
</html>";
}else{
# weibliche Version
$text = "Sehr geehrte Damen und Herren,<br>
<br>
an unserer Hochschule ist eine Bewerbung für den Studiengang Digitales Verwaltungsmanagement (DVM) eingegangen.
Die Bewerberin hat Sie als eine ihrer Wunschausbildungsstellen angegeben. ";
if($tan == ""){
$text .="
Sie erhalten einen Link für den Download der Bewerbungsunterlagen:
<br>
<br>
<a href='$link'>$link</a>";
}
if($tan != ""){
$text .="
<br>
<br>
Bitte registrieren Sie Ihre Praxisstelle zunächst mit folgenden Logindaten:<br>
<b>Registrierung:</b> $link_register<br>
<b>Benutzername:</b> $empfaenger<br>
<b>Einmalpasswort:</b> $tan
";
}
$text .="
<br>
<br>
Nach § 7 Absatz 4 APrOdigVwm gD führen die Ausbildungsstellen vor ihrer Auswahlentscheidung ein persönliches Gespräch mit den Bewerberinnen und Bewerbern.
Die Einladung zur Vorstellung (§ 7 Absatz 3 APrOdigVwm gD) erfolgt durch die Wunschausbildungsstellen. Sie teilen der zuständigen Hochschule unverzüglich schriftlich ihre Entscheidung mit.
<br>
Sollten Sie sich für die Bewerberin entscheiden, ist diese darauf hinzuweisen, unverzüglich
<ul>
<li>ein ärztliches Zeugnis über die erforderliche gesundheitliche Eignung (nicht älter als sechs Monate, eine Übersicht der hierfür zugelassenen Ärzte finden Sie unter
<a href='$link_arzt'>$link_arzt</a>) sowie</li>
<li>ein Führungszeugnis zur Vorlage bei einer Behörde (§ 30 Absatz 5 des Bundeszentralregistergesetzes) nicht älter als drei Monate,</li>
</ul>
der Hochschule zu übermitteln.
<br><br>
Bitte teilen Sie der Bewerberin mit, dass sie nur dann einen Ausbildungsplatz bei Ihnen erhalten kann, wenn sie eine endgültige Zulassung für einen Studienplatz durch die Hochschule erhält.
<br><br>
Freundliche Grüße
<br><br>
Ihre Hochschule $hochschule
<br>
$anschrift
<br>
<p>
Diese Mail wurde automatisch generiert!<br />
Antworten Sie daher nicht auf diese Mail.<br />
<br />
Vielen Dank!
</body>
</html>";
}
#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: https://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($return){
$sql1 = $db->query("insert into dvm_dst_wunsch (dst_id, ka_id, datum, mail_text, mail_betreff, status, sendedat)
VALUES('$dst_id', '$username', '$datum_db', '$text_db', '$betreff', 'V', '$datum_db')");
}else{
$sql1 = $db->query("insert into dvm_dst_wunsch (dst_id, ka_id, datum, mail_text, mail_betreff, status)
VALUES('$dst_id', '$username', '$datum_db', '$text_db', '$betreff', 'F')");
}
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=stelle\">";
}
if ($action == 'testback') {
$username = $_SESSION["username"];
$tan = $_SESSION["tan"];
$sql1 = $db->query("UPDATE dvm_tanpool a
SET login_dat = '0000-00-00 00:00:00'
,aktiv = 'A'
WHERE tp_id = (SELECT b.tp_id
FROM dvm_term_kand b
WHERE b.ka_id = '$username'
ORDER BY b.tk_id DESC
LIMIT 1
)
AND tan = '$tan'
");
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=ausgabe\">";
}
if ($action == 'skala') {
# Die Seite wird neu geladen und damit vom Element Spinner die Ranges gesetzt
#$skala = $_POST['notenskala'];
#$_SESSION["skala"] = $skala;
echo "<meta http-equiv=\"refresh\" content=\"0; URL=" . $_SERVER['PHP_SELF'] . "?action=ausgabe\">";
}
// ende Action
$smarty->assign('action', "$action");
$smarty->display("$template/admin/$templatename");
?>