assign('index_error', 1); if ($errorno == 1) { $smarty->assign('index_error_text', "Es müssen alle Felder ausgefü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."); } if ($errorno == 4) { $smarty->assign('index_error_text', "Es wurden bereits Dateien hochgeladen. Melden Sie sich bitte bei der Hochschule, falls Änderungen gewünscht sind."); } if ($errorno == 5) { $smarty->assign('index_error_text', "Es sind noch keine Testergebnisse vorhanden. Daher kann dieser Schritt noch nicht ausgeführt werden."); } if ($errorno == 6) { $smarty->assign('index_error_text', "Es liegt aktuell kein bestandenes Testergebnis vor. Daher kann dieser Schritt nicht ausgeführt werden."); } # Daten aufbereiten bei Fehler if (isset($_SESSION["global_username"])) { $smarty->assign('index_user', $_SESSION["global_username"]); } } # 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
'; $filedel = "$dir.$dateiname"; $result_deldoc = $db->query("SELECT up_id, ka_id FROM bpm_upload WHERE file ='$filedel' AND upload_dat = '0000-00-00 00:00:00' LIMIT 1"); $row_deldoc = $result_deldoc->fetch_array(); $sql1 = $db->query("DELETE FROM bpm_upload WHERE up_id = $row_deldoc[up_id] "); $sql1 = $db->query("DELETE FROM bpm_note WHERE ka_id = $row_deldoc[ka_id] "); $sql1 = $db->query("DELETE FROM bpm_dst_wunsch WHERE ka_id = $row_deldoc[ka_id] AND sendedat = '0000-00-00 00:00:00' AND datum < DATE_SUB( NOW() , INTERVAL 10 DAY ) "); } else { # echo $dateiname.' konnte nichtgelöscht werden
'; } } } } } if ($action == 'anmeld') { if (isset($_POST['user'])) { $username_kand = mb_strtoupper($_POST["user"]); //remove case sensitivity on the username } else { $username_kand = $_SESSION["username_kand"]; } if (isset($_POST['password'])) { $tan = $_POST["password"]; } else { $tan = $_SESSION["tan"]; } $_SESSION["username_kand"] = $username_kand; $_SESSION["tan"] = $tan; if ($username_kand == "" OR $tan == "") { echo ""; exit; } else { $db = dbconnect(); $result_best = $db->query("SELECT bestanden FROM bpm_kandidat a, bpm_term_kand b, bpm_tanpool c, bpm_ergebnisse d WHERE a.ka_id = b.ka_id AND b.tp_id = c.tp_id AND c.tan = d.tan AND a.id = '$username_kand' AND c.tan= '$tan' AND c.aktiv = 'A' ORDER BY b.tk_id DESC LIMIT 1"); $row_best = $result_best->fetch_array(); $result_anzerg = $db->query("SELECT count(*) Anz FROM bpm_kandidat a, bpm_term_kand b, bpm_tanpool c, bpm_ergebnisse d WHERE a.ka_id = b.ka_id AND b.tp_id = c.tp_id AND c.tan = d.tan AND a.id = '$username_kand' AND c.tan= '$tan' AND c.aktiv = 'A' ORDER BY b.tk_id DESC LIMIT 1"); $row_anzerg = $result_anzerg->fetch_array(); if ($row_anzerg['Anz'] == 0) { # Keine Ergebnisse erfasst echo ""; exit; } if ($row_best['bestanden'] == 0) { # Durchgefallen echo ""; exit; } $result = $db->query("SELECT a.ka_id, a.id, c.tp_id, c.tan, c.tinyurl 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 a.id = '$username_kand' AND c.tan= '$tan' AND c.aktiv = 'A' LIMIT 1"); $row = $result->fetch_array(); $_SESSION["ka_id"] = $row['ka_id']; # Notenskala oder Punkteskala anzeigen if (isset($_SESSION["skala_j"]) OR isset($_SESSION["skala_n"])) { $smarty->assign('skala_value_j', "Noten"); $smarty->assign('skala_value_n', $_SESSION["skala_n"]); } else { $result_note = $db->query("SELECT erfdat_hzb, erfdat_schnitt FROM bpm_note WHERE ka_id =$row[ka_id]"); $row_note = $result_note->fetch_array(); if ($row_note['erfdat_hzb'] != '0000-00-00 00:00:00') { $smarty->assign('skala_value_n', "Noten"); } elseif ($row_note['erfdat_schnitt'] != '0000-00-00 00:00:00') { $smarty->assign('skala_value_n', "Punkte"); } else { # Defaultwert Notenskala $smarty->assign('skala_value_n', "Noten"); } } $result_fin = $db->query("SELECT max(upload_dat) upload_dat FROM bpm_upload WHERE ka_id = '$row[ka_id]'"); $row_fin = $result_fin->fetch_array(); if ($username_kand != strtoupper($row['id'])) { echo ""; exit; } // Passwort falsch elseif ($tan != $row['tan']) { echo ""; exit; } // Schon hochgeladen elseif ($row_fin['upload_dat'] != "" AND $row_fin['upload_dat'] != '0000-00-00 00:00:00') { echo ""; 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 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', "Die Datei mit diesem Namen wurde bereits hochgeladen."); } if ($errorno == 4) { # Tabelle bpm_parameter $anz_dok = trim(get_parameter(13)); $smarty->assign('index_error_text', "Es dürfen maximal $anz_dok Dateien hochgeladen werden."); } if ($errorno == 5) { $smarty->assign('index_error_text', "Es ist ein Fehler aufgetreten. Versuchen Sie es erneut oder kontaktieren Sie die Hochschule."); } if ($errorno == 10) { $smarty->assign('index_error_text', "Sie müssen zunächst Dokumente hochloaden, bevor Sie zum nächsten Schritt gelangen."); } if ($errorno == 11) { $smarty->assign('index_error_text', "Sie müssen allen Dokumenten eine Beschreibung zuweisen"); } if ($errorno == 12) { $smarty->assign('index_error_text', "Sie müssen den Bereich zur HZB Note korrekt ausfüllen"); } if ($errorno == 13) { $smarty->assign('index_error_text', "Es muss laut Dokumentenbeschreibung das Zeugnis mit der HZB Note hochgeladen sein, oder falls noch nicht vorhanden die letzten beiden Schulzeugnisse. Das HZB Zeugnis muss dennoch bis Bewerbungsschluss nachgereicht werden, sonst ist keine Zulassung möglich."); } if ($errorno == 14) { $smarty->assign('index_error_text', "Es muss laut Dokumentenbeschreibung der Lebenslauf erfasst sein"); } if ($errorno == 15) { $smarty->assign('index_error_text', "Sie haben eine HZB Note erfasst. Sie müssen Schritt 3 mit Ja beantworten und eine Note eintragen"); } if ($errorno == 16) { $smarty->assign('index_error_text', "Sie haben Ihre letzten zwei Zeugnisse erfasst. Sie müssen Schritt 3 mit Nein beantworten und eine Note eintragen"); } if ($errorno == 17) { $smarty->assign('index_error_text', "Bitte prüfen Sie Ihre Eingabe. Die Werte müssen zwischen 1 und 15 Punkten liegen"); } if ($errorno == 18) { $smarty->assign('index_error_text', "Bitte prüfen Sie Ihre Eingabe. Die Note muss zwischen 1,0 und 6,0 liegen"); } if ($errorno == 19) { $smarty->assign('index_error_text', "Sie müssen bei vorliegender Schwerbehinderung ein Nachweis hochladen und ihn in der Dokumentenbeschreibung entsprechend kennzeichnen."); } if ($errorno == 20) { $smarty->assign('index_error_text', "Sie müssen bei vorliegender Schwerbehinderung das entsprechende Häkchen in Schritt 1 setzen."); } if ($errorno == 21) { $smarty->assign('index_error_text', "Sie müssen bei einer Verkürzung ein Nachweis hochladen und ihn in der Dokumentenbeschreibung entsprechend kennzeichnen."); } if ($errorno == 22) { $smarty->assign('index_error_text', "Sie müssen bei einer Verkürzung das entsprechende Häkchen in Schritt 1 setzen."); } } # Gespeicherte Werte $query_zusatz = $db->query("SELECT behinderung, verkuerzung FROM bpm_kandidat WHERE ka_id = $row[ka_id]"); $row_zusatz = $query_zusatz->fetch_array(); $smarty->assign('zusatz_value_behinderung', $row_zusatz['behinderung']); $smarty->assign('zusatz_value_verkuerzung', $row_zusatz['verkuerzung']); $query1 = "SELECT up_id, ka_id, file, beschreibung FROM bpm_upload WHERE ka_id = $row[ka_id]"; $result1 = $db->query($query1) or die("Cannot execute query1"); while ($row1 = $result1->fetch_array()) { $basename = basename($row1['file']); $username_kand = $_SESSION["username_kand"]; $rep = $username_kand . "_"; $row1['basename'] = str_replace($rep, '', $basename); $table_data1[] = $row1; } $smarty->assign('table_data1', $table_data1); # Note / HZB erfasst? $query_note = $db->query("SELECT hzb, hzb_punkte, zeugnisschnitt, zeugnisschnitt_punkte, erfdat_hzb, erfdat_schnitt FROM bpm_note WHERE ka_id = $row[ka_id]"); $row_note = $query_note->fetch_array(); $row_cnt = $query_note->num_rows; if ($row_note['hzb'] == "0.00" AND $row_cnt > 0 AND $row_note['erfdat_schnitt'] != "0000-00-00 00:00:00") { # Keine HZB Note erfasst $radio = "n"; $smarty->assign('hzb_radio', $radio); $smarty->assign('hzb_hzbnote', ""); if ($row_note['zeugnisschnitt_punkte'] == "0.00") { $durchschnitt = $row_note['zeugnisschnitt']; $smarty->assign('hzb_durchschnitt', $durchschnitt); } else { $durchschnitt = $row_note['zeugnisschnitt_punkte']; $smarty->assign('hzb_durchschnitt', $durchschnitt); } } elseif ($row_note['zeugnisschnitt'] == "0.00" AND $row_cnt > 0 AND $row_note['erfdat_hzb'] != "0000-00-00 00:00:00") { $radio = "j"; $smarty->assign('hzb_radio', $radio); $smarty->assign('hzb_durchschnitt', ""); if ($row_note['hzb_punkte'] == "0.00") { $hzb = $row_note['hzb']; $smarty->assign('hzb_hzbnote', $hzb); } else { $hzb = $row_note['hzb_punkte']; $smarty->assign('hzb_hzbnote', $hzb); } } elseif ($row_note['zeugnisschnitt'] == "0.00" AND $row_note['hzb'] == "0.00" AND $row_cnt > 0 AND $row_note['erfdat_hzb'] == "0000-00-00 00:00:00" AND $row_note['erfdat_schnitt'] == "0000-00-00 00:00:00") { # Es wurde von Punkte auf Note oder umgekehrt gewechselt, dann übergabe $hzbjn = $_GET['hzbjn']; if ($hzbjn == 'j') { $hzb = $row_note['hzb']; $radio = "j"; $smarty->assign('hzb_radio', $radio); $smarty->assign('hzb_durchschnitt', ""); } else { $durchschnitt = $row_note['zeugnisschnitt']; $radio = "n"; $smarty->assign('hzb_radio', $radio); $smarty->assign('hzb_durchschnitt', $durchschnitt); $smarty->assign('hzb_hzbnote', ""); } $smarty->assign('hzb_hzbnote', $hzb); } else { $smarty->assign('hzb_radio', ""); $smarty->assign('hzb_hzbnote', ""); } } if ($action == 'zusatz') { $ka_id = $_SESSION["ka_id"]; $behinderung = $_POST["behinderung"]; $verkuerzung = $_POST["verkuerzung"]; if ($behinderung != 'J') { $behinderung = 'N'; } if ($verkuerzung != 'J') { $verkuerzung = 'N'; } #Update $sql1 = $db->query("UPDATE bpm_kandidat SET behinderung = '$behinderung' ,verkuerzung = '$verkuerzung' WHERE ka_id = '$ka_id'"); echo ""; } if ($action == 'skala') { $ka_id = $_SESSION["ka_id"]; $hzbjn = $_POST["hzb"]; $query_anz = $db->query("SELECT count(*) Anz FROM bpm_note WHERE ka_id = $ka_id"); $row_anz = $query_anz->fetch_array(); # Hier wird alles auf 0 gesetzt. Denn es findet intern nur eine Umrechnung von Punkte -> Noten statt. Wenn man wechselt, sollte es auch ander rum funktionieren. Aber da gibts keine Regelung, wie man umrechnet. # Daher lieber alles auf 0 gesetzt, damit es für den Bewerber eindeutig ist $hzbnote = "0.00"; $hzbpunkte = "0.00"; $durchschnittnote = "0.00"; $durchschnittpunkte = "0.00"; $erfdat_hzb = "0000-00-00 00:00:00"; $erfdat_schnitt = "0000-00-00 00:00:00"; 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'"); } #$skala_j = $_POST['notenskala_j']; $skala_n = $_POST['notenskala_n']; #$_SESSION["skala_j"] = $skala_j; $_SESSION["skala_n"] = $skala_n; echo ""; } if ($action == 'upload') { $username_kand = $_SESSION["username_kand"]; $tan = $_SESSION["tan"]; if ($username_kand == "" OR $tan == "") { echo ""; exit; } // https://www.tutorials.de/tutorials65420.html #echo '
', print_r($_POST, true), '
'; $tempname = $_FILES['file']['tmp_name']; $name = $_FILES['file']['name']; $type = $_FILES['file']['type']; $size = $_FILES['file']['size']; $einheit = "Byte"; // Fü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 ""; exit; } # Tabelle bpm_parameter $size_mb = trim(get_parameter(12)); $size_bt = $size_mb * 1024 * 1024; if ($size > $size_bt) { echo ""; exit; } $name = str_replace(array( "ä", "ö", "ü", "ß", "Ä", "Ü", "Ü", " " ), array( "ae", "oe", "ue", "ss", "Ae", "Oe", "Ue", "_" ), $name); $ka_id = $_SESSION["ka_id"]; $neu = $username_kand . "_" . $name; $result_exists = $db->query("SELECT count(*) Anz FROM bpm_upload WHERE file = '$verz$neu' AND ka_id = '$ka_id'"); $row_exists = $result_exists->fetch_array(); $result_anz = $db->query("SELECT count(*) Anz FROM bpm_upload WHERE ka_id = '$ka_id'"); $row_anz = $result_anz->fetch_array(); if ($row_exists['Anz'] > 0) { echo ""; exit; } # Tabelle bpm_parameter $anz_dok = trim(get_parameter(13)); if ($row_anz['Anz'] >= $anz_dok) { echo ""; exit; } # Datei hochladen $datum_db = date("Y-m-d H:i:s"); move_uploaded_file("$tempname", "$verz$neu"); // Unterverzeichnisse wie folgt: copy("$tempname", "pdf/$neu"); $sql1 = $db->query("insert into bpm_upload (ka_id, file, dok_dat) VALUES('$ka_id', '$verz$neu', '$datum_db')"); echo ""; } if ($action == 'del') { $username_kand = $_SESSION["username_kand"]; $tan = $_SESSION["tan"]; if ($username_kand == "" OR $tan == "") { echo ""; exit; } function deleteFiles($datei) { if (@unlink($datei)) { $error = TRUE; } else { $error = FALSE; } return $error; } $up_id = $_GET["up_id"]; $username_kand = $_SESSION["username_kand"]; $ka_id = $_SESSION["ka_id"]; $result_del = $db->query("SELECT file FROM bpm_upload WHERE ka_id = $ka_id AND up_id= $up_id AND ka_id IN (SELECT ka_id FROM bpm_kandidat WHERE id='$username_kand') LIMIT 1; "); $row_del = $result_del->fetch_array(); $del = deleteFiles($row_del['file']); // Dateien werden im Uploadverzeichnis gelöscht, falls noch welche darin wären if ($del) { $sql1 = $db->query("DELETE FROM bpm_upload WHERE ka_id = $ka_id AND up_id= $up_id AND ka_id IN (SELECT ka_id FROM bpm_kandidat WHERE id='$username_kand')"); } echo ""; } if ($action == 'descr') { ################################################ # Speicherung der Dokumentenbeschreibung ################################################ // https://www.tutorials.de/tutorials65420.html #echo '
', print_r($_POST, true), '
'; $username_kand = $_SESSION["username_kand"]; $query1 = "SELECT up_id FROM bpm_upload WHERE ka_id IN (SELECT ka_id FROM bpm_kandidat WHERE id='$username_kand') 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 bpm_upload SET beschreibung = '$beschreibung' WHERE up_id = $row1[up_id] "); } echo ""; } if ($action == 'stelle') { #echo '
', print_r($_POST, true), '
'; $username_kand = $_SESSION["username_kand"]; $tan = $_SESSION["tan"]; $ka_id = $_SESSION["ka_id"]; if ($username_kand == "" OR $tan == "") { echo ""; exit; } $result_anz = $db->query("SELECT count(*) Anz FROM bpm_upload WHERE ka_id = '$ka_id'"); $row_anz = $result_anz->fetch_array(); if ($row_anz['Anz'] == 0) { echo ""; exit; } #Dokumentenbeschreibung prüfen $result_anzdescr = $db->query("SELECT count(*) Anz FROM bpm_upload WHERE ka_id = $ka_id AND beschreibung = ''"); $row_anzdescr = $result_anzdescr->fetch_array(); if ($row_anzdescr['Anz'] > 0) { echo ""; exit; } # HZB Frage ja / nein beantwortet $result_anznote = $db->query("SELECT count(*) Anz FROM bpm_note WHERE ka_id = $ka_id"); $row_anznote = $result_anznote->fetch_array(); if ($row_anznote['Anz'] == "") { echo ""; exit; } # Pflichtdokumente prüfen. Entweder letzte 2 Zeugnisse oder HZB Note $result_anzzeug = $db->query("SELECT count(*) Anz FROM bpm_upload WHERE ka_id = $ka_id AND (beschreibung = 'Zeugnis 1' OR beschreibung = 'Zeugnis 2')"); $row_anzzeug = $result_anzzeug->fetch_array(); $result_anzhzb = $db->query("SELECT count(*) Anz FROM bpm_upload WHERE ka_id = $ka_id AND beschreibung = 'HZB'"); $row_anzhzb = $result_anzhzb->fetch_array(); if ($row_anzzeug['Anz'] < 2 AND $row_anzhzb['Anz'] <> 1) { echo ""; exit; } # Lebenslauf vorhanden $result_anzleben = $db->query("SELECT count(*) Anz FROM bpm_upload WHERE ka_id = $ka_id AND beschreibung = 'Lebenslauf'"); $row_anzleben = $result_anzleben->fetch_array(); if ($row_anzleben['Anz'] < 1) { echo ""; exit; } # Wenn HZB dann Ja in Schritt 4 # Wenn keine HZB dann Nein in Schritt 4 $result_hzbnote = $db->query("SELECT hzb, hzb_punkte, erfdat_hzb FROM bpm_note WHERE ka_id = $ka_id"); $row_hzbnote = $result_hzbnote->fetch_array(); if ($row_hzbnote['hzb'] == "0.00" AND $row_anzhzb['Anz'] > 0) { echo ""; exit; } # Handelt es sich um ein Zwischenzeugnis? # Handelt es sich um erfasste Punkte oder Note # Sind die Werte im gültigen Bereich? if ($row_hzbnote['erfdat_hzb'] != "0000-00-00 00:00:00") { # Zwischenzeugnis erfasst if ($row_hzbnote['hzb_punkte'] != "0.00") { # Punkte erfasst if ($row_hzbnote['hzb_punkte'] < "1.00" or $row_hzbnote['hzb_punkte'] > "15.00") { echo ""; exit; } } else { # Noten erfasst if ($row_hzbnote['hzb'] < "0.70" or $row_hzbnote['hzb'] > "6.00") { echo ""; exit; } } } $result_schnitt = $db->query("SELECT zeugnisschnitt, zeugnisschnitt_punkte, erfdat_schnitt FROM bpm_note WHERE ka_id = $ka_id"); $row_schnitt = $result_schnitt->fetch_array(); if ($row_schnitt['zeugnisschnitt'] == "0.00" AND $row_anzzeug['Anz'] > 0 AND $row_anzhzb['Anz'] == 0) { echo ""; exit; } # Handelt es sich um ein Zwischenzeugnis? # Handelt es sich um erfasste Punkte oder Note # Sind die Werte im gültigen Bereich? if ($row_schnitt['erfdat_schnitt'] != "0000-00-00 00:00:00") { # Zwischenzeugnis erfasst if ($row_schnitt['zeugnisschnitt_punkte'] != "0.00") { # Punkte erfasst if ($row_schnitt['zeugnisschnitt_punkte'] < "1.00" or $row_schnitt['zeugnisschnitt_punkte'] > "15.00") { echo ""; exit; } } else { # Noten erfasst if ($row_schnitt['zeugnisschnitt'] < "0.70" or $row_schnitt['zeugnisschnitt'] > "6.00") { echo ""; exit; } } } # Zusatzangaben Behinderung / Verkürzung mit entsprechendem Dokument vorhanden? $result_behinderung = $db->query("SELECT behinderung FROM bpm_kandidat WHERE ka_id = $ka_id"); $row_behinderung = $result_behinderung->fetch_array(); $result_anzbehinderung = $db->query("SELECT count(*) Anz FROM bpm_upload WHERE ka_id = $ka_id AND beschreibung = 'Nachweis Schwerbehinderung'"); $row_anzbehinderung = $result_anzbehinderung->fetch_array(); if ($row_behinderung['behinderung'] == 'J' AND $row_anzbehinderung['Anz'] < 1) { echo ""; exit; } if ($row_anzbehinderung['Anz'] > 0 AND $row_behinderung['behinderung'] != 'J') { echo ""; exit; } $result_verkuerzung = $db->query("SELECT verkuerzung FROM bpm_kandidat WHERE ka_id = $ka_id"); $row_verkuerzung = $result_verkuerzung->fetch_array(); $result_anzverkuerzung = $db->query("SELECT count(*) Anz FROM bpm_upload WHERE ka_id = $ka_id AND beschreibung = 'Nachweis Verkürzung'"); $row_anzverkuerzung = $result_anzverkuerzung->fetch_array(); if ($row_verkuerzung['verkuerzung'] == 'J' AND $row_anzverkuerzung['Anz'] < 1) { echo ""; exit; } if ($row_anzverkuerzung['Anz'] > 0 AND $row_verkuerzung['verkuerzung'] != 'J') { echo ""; exit; } # Ggf. Wahl der Standardhochschule wenn diese nicht über PLZ zugeordnet werden kann. $result_hs = $db->query("SELECT a.ka_id, anrede, vorname, nachname, str, plz, ort, date_format(login_dat, '%d.%m.%Y - %H:%i') login_dat_form, a.id, c.tan 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 a.id = '$username_kand' AND c.tan= '$tan' LIMIT 1"); $row_hs = $result_hs->fetch_array(); $hochschule = standard_hs($row_hs['plz']); if ($hochschule == 'NA') { $smarty->assign('index_wahl_prx', 1); } else { $smarty->assign('index_wahl_prx', 0); } # Im Falle einer Verkürzung, dürfen keine Praxisstellen gewählt werden. Weiter zur HS Wahl oder Übersicht if ($row_verkuerzung['verkuerzung'] == 'J') { if ($hochschule == 'NA') { echo ""; exit; } else { echo ""; exit; } } # $query1 = "SELECT a.dst_id, bez, plz, ort # FROM bpm_dienststellen a # WHERE a.dst_id NOT IN (SELECT dst_id # FROM bpm_dst_wunsch # WHERE ka_id = '$ka_id' # ) # 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') # Warum ausgegraut? Hier sollte noch rein, dass nur registrierte DST angezeigt werden. Besprechen Videokonferenz # ORDER BY bez ASC"; # # $result1 = $db->query($query1) or die("Cannot execute query1"); # # 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 bpm_dst_wunsch a, bpm_dienststellen b WHERE a.dst_id = b.dst_id AND a.ka_id = $ka_id"; $result2 = $db->query($query2) or die("Cannot execute query2b"); while ($row2 = $result2->fetch_array()) { $table_data2[] = $row2; } $smarty->assign('table_data2', $table_data2); # Tabelle bpm_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 ($action == 'save_praxis') { $username_kand = $_SESSION["username_kand"]; $tan = $_SESSION["tan"]; $ka_id = $_SESSION["ka_id"]; $dst_id = $_POST["stelle"]; if ($username_kand == "" OR $tan == "") { echo ""; exit; } // https://www.tutorials.de/tutorials65420.html $result_anz = $db->query("SELECT count(*) Anz FROM bpm_dst_wunsch WHERE ka_id = '$ka_id'"); $row_anz = $result_anz->fetch_array(); # Tabelle bpm_parameter $anz_stellen = trim(get_parameter(14)); if ($row_anz['Anz'] >= $anz_stellen) { echo ""; exit; } if ($dst_id == '') { echo ""; exit; } $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 $sql1 = $db->query("insert into bpm_dst_wunsch (dst_id, ka_id, datum) VALUES('$dst_id', '$ka_id', '$datum_db')"); echo ""; } if ($action == 'del_stelle') { $username_kand = $_SESSION["username_kand"]; $tan = $_SESSION["tan"]; $ka_id = $_SESSION["ka_id"]; $wu_id = $_GET["wu_id"]; if ($username_kand == "" OR $tan == "") { echo ""; exit; } $sql1 = $db->query("DELETE FROM bpm_dst_wunsch WHERE ka_id = $ka_id AND wu_id= $wu_id AND ka_id IN (SELECT ka_id FROM bpm_kandidat WHERE id='$username_kand')"); echo ""; } if ($action == 'hswahl') { $username_kand = $_SESSION["username_kand"]; $tan = $_SESSION["tan"]; $ka_id = $_SESSION["ka_id"]; # entsprechend Vor und zurückbuttons anzeigen $result_hs = $db->query("SELECT verkuerzung FROM bpm_kandidat WHERE id = '$username_kand' LIMIT 1"); $row_hs = $result_hs->fetch_array(); if ($row_hs['verkuerzung'] == 'J') { $smarty->assign('index_wahl_prx', 0); } else { $smarty->assign('index_wahl_prx', 1); } if ($username_kand == "" OR $tan == "") { echo ""; exit; } $smarty->assign('hsw_value_hs', $_SESSION["hochschule"]); ## Fehlerhandling $error1 = $_GET['error1']; if ($error1 == 1) { $smarty->assign('index_error', 1); if ($error1 == 1) { $smarty->assign('index_error_text', 'Bitte wählen Sie zuerst eine Hochschule!'); } } } if ($action == 'overview') { $username_kand = $_SESSION["username_kand"]; $tan = $_SESSION["tan"]; $ka_id = $_SESSION["ka_id"]; if ($username_kand == "" OR $tan == "") { echo ""; exit; } # Ggf. Hat Wahl der Standardhochschule stattgefunden, wenn diese nicht über PLZ zugeordnet werden kann. $result_hs = $db->query("SELECT a.ka_id, anrede, vorname, nachname, str, plz, ort, date_format(login_dat, '%d.%m.%Y - %H:%i') login_dat_form, a.id, c.tan, verkuerzung 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 a.id = '$username_kand' AND c.tan= '$tan' LIMIT 1"); $row_hs = $result_hs->fetch_array(); if ($row_hs['verkuerzung'] == 'J') { $smarty->assign('index_wahl_prx', 0); } else { $smarty->assign('index_wahl_prx', 1); } $hochschule = standard_hs($row_hs['plz']); if ($hochschule == 'NA') { $smarty->assign('index_wahl_hochschule', 1); if (isset($_POST['hs'])) { $hochschule = trim($_POST['hs']); } else { $hochschule = $_SESSION["hochschule"]; } $smarty->assign('index_wahl_hs', $hochschule); $_SESSION["hochschule"] = $hochschule; if ($hochschule == '') { $error1 = 1; $error = true; } if (isset($error)) { echo ""; exit; } } else { $smarty->assign('index_wahl_hochschule', 0); } # Gespeicherte Werte $query1 = "SELECT up_id, ka_id, file, beschreibung FROM bpm_upload WHERE ka_id = $ka_id"; $result1 = $db->query($query1) or die("Cannot execute query1"); while ($row1 = $result1->fetch_array()) { $basename = basename($row1['file']); $username_kand = $_SESSION["username_kand"]; $rep = $username_kand . "_"; $row1['basename'] = str_replace($rep, '', $basename); $table_data1[] = $row1; } $smarty->assign('table_data1', $table_data1); # Note / HZB erfasst? $query_note = $db->query("SELECT hzb, hzb_punkte, zeugnisschnitt, zeugnisschnitt_punkte, erfdat_hzb, erfdat_schnitt FROM bpm_note WHERE ka_id = $ka_id"); $row_note = $query_note->fetch_array(); $row_cnt = $query_note->num_rows; # 1) Wenn hbz_punkte, dann punkte ausgeben und errechnete Note # 2) wenn hzb_note ohne punkte dann nur Note ausgeben # 3) wenn zeugnisschnitt_punkte dann punkte ausgeben und errechnete Note # 4) wenn zeugnisschnitt ohne punkte dann nur Note ausgeben # 5) Wenn erfdat_schnitt dann Hinweis, dass hzb nachgereicht werden muss #1 if ($row_note['hzb_punkte'] != "0.00" AND $row_note['erfdat_hzb'] != '0000-00-00 00:00:00') { $smarty->assign('overview_zeugnisschnittpunkte', ""); $smarty->assign('overview_zeugnisschnittnote', ""); $smarty->assign('overview_hzbpunkte', round($row_note['hzb_punkte'])); $smarty->assign('overview_hzbnote', number_format($row_note['hzb'], 1, ',', '.')); #5 $smarty->assign('overview_hinweis_hzb', 0); } #2 if ($row_note['hzb_punkte'] == "0.00" AND $row_note['hzb'] != "0.00" AND $row_note['erfdat_hzb'] != '0000-00-00 00:00:00') { $smarty->assign('overview_zeugnisschnittpunkte', ""); $smarty->assign('overview_zeugnisschnittnote', ""); $smarty->assign('overview_hzbpunkte', ""); $smarty->assign('overview_hzbnote', number_format($row_note['hzb'], 1, ',', '.')); #5 $smarty->assign('overview_hinweis_hzb', 0); } #3 if ($row_note['zeugnisschnitt_punkte'] != "0.00" AND $row_note['erfdat_schnitt'] != '0000-00-00 00:00:00') { $smarty->assign('overview_hzbpunkte', ""); $smarty->assign('overview_hzbnote', ""); $smarty->assign('overview_zeugnisschnittpunkte', round($row_note['zeugnisschnitt_punkte'])); $smarty->assign('overview_zeugnisschnittnote', number_format($row_note['zeugnisschnitt'], 1, ',', '.')); #5 $smarty->assign('overview_hinweis_hzb', 1); } #4 if ($row_note['zeugnisschnitt_punkte'] == "0.00" AND $row_note['zeugnisschnitt'] != "0.00" AND $row_note['erfdat_schnitt'] != '0000-00-00 00:00:00') { $smarty->assign('overview_hzbpunkte', ""); $smarty->assign('overview_hzbnote', ""); $smarty->assign('overview_zeugnisschnittpunkte', ""); $smarty->assign('overview_zeugnisschnittnote', number_format($row_note['zeugnisschnitt'], 1, ',', '.')); #5 $smarty->assign('overview_hinweis_hzb', 1); } # Gespeicherte Werte $query2 = "SELECT a.wu_id, b.bez, b.str, b.plz, b.ort, b.mail FROM bpm_dst_wunsch a, bpm_dienststellen b WHERE a.dst_id = b.dst_id AND a.ka_id = $ka_id"; $result2 = $db->query($query2) or die("Cannot execute query2c"); while ($row2 = $result2->fetch_array()) { $table_data2[] = $row2; } $smarty->assign('table_data2', $table_data2); } if ($action == 'save') { $username_kand = $_SESSION["username_kand"]; $tan = $_SESSION["tan"]; if ($username_kand == "" OR $tan == "") { echo ""; exit; } $ka_id = $_SESSION["ka_id"]; $query2 = "SELECT up_id, ka_id, file, beschreibung FROM bpm_upload WHERE ka_id = $ka_id"; $result2 = $db->query($query2) or die("Cannot execute query2d"); $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 while ($row2 = $result2->fetch_array()) { $files = $row2['file']; $basename = basename($files); $destination = '../uploads/'; $rename_file = $destination . $basename; $admindir = '../uploads/' . $basename; rename($files, $rename_file); $sql1 = $db->query("UPDATE bpm_upload SET file = '$admindir' , upload_dat = '$datum_db' WHERE up_id = $row2[up_id] "); if (!$sql1) { $err = 1; } } # Mailversand $query1 = "SELECT a.wu_id, b.bez, b.str, b.plz, b.ort, b.mail, init_tan, b.dst_id, register_dat FROM bpm_dst_wunsch a, bpm_dienststellen b WHERE a.dst_id = b.dst_id AND a.ka_id = $ka_id"; $result1 = $db->query($query1) or die("Cannot execute query1"); $result_hs = $db->query("SELECT anrede, plz FROM bpm_kandidat WHERE ka_id = '$ka_id'"); $row_hs = $result_hs->fetch_array(); # Standardhochschule $hochschule = standard_hs($row_hs['plz']); if ($hochschule == 'NA') { $hochschule = $_SESSION["hochschule"]; } else { $hochschule = $hochschule; } # Initialtan erforderlich für Login? $result_tan = $db->query("SELECT anrede, plz FROM bpm_kandidat WHERE ka_id = '$ka_id'"); $row_tan = $result_tan->fetch_array(); $sql0 = $db->query("UPDATE bpm_kandidat SET hochschule = '$hochschule' WHERE ka_id = '$ka_id' "); if ($hochschule == 'Ludwigsburg') { $anschrift = 'Reuteallee 36
71634 Ludwigsburg'; $sender = "Hochschule Ludwigsburg"; $sendermail = get_parameter(8); } elseif ($hochschule == 'Kehl') { $anschrift = 'Kinzigallee 1
77694 Kehl'; $sender = "Hochschule Kehl"; $sendermail = get_parameter(7); } $link_arzt = 'https://www.gesundheitsamt-bw.de'; $link = 'https://www.hs-ludwigsburg.de/kurs/bpm/praxisstelle/index.php'; $link_register = 'https://www.hs-ludwigsburg.de/kurs/bpm/praxisstelle/register.php'; ######################################################### ## dieselbe Mail ist auch in /admin/bewerber_daten.php ######################################################### while ($row1 = $result1->fetch_array()) { # Initialtan erforderlich für Login?, Falls eine neue Dienststelle ohne TAN vorhanden wäre. Inital habe alle DST eine TAN if ($row1['init_tan'] == '') { $tan = tangen(); $sql0 = $db->query("UPDATE bpm_dienststellen SET init_tan = '$tan' WHERE dst_id = '$row1[dst_id]' "); } else { $tan = ""; } $empfaenger = "$row1[mail]"; $betreff = "Bewerbung zur praktischen Ausbildung BPM"; if ($row_hs['anrede'] != 'W') { # männliche Version $text = "Guten Tag,

ein Bewerber hat Sie als Wunschausbildungsstelle für das Einführungspraktikum im Studiengang Public Management ausgewählt.
"; if ($tan == "") { $text .= " Sie erhalten einen Link für die Einsicht der Bewerbungsunterlagen:

$link"; } if ($tan != "") { $text .= "

Bitte registrieren Sie Ihre Praxisstelle zunächst mit folgenden Logindaten:
Registrierung: $link_register
Benutzername: $empfaenger
Einmalpasswort: $tan "; } $text .= "

Die Ausbildungsstellen führen das Auswahlverfahren nach § 7 Absätze 3 und 4 APrOVw gD durch. Sollten Sie sich für den Bewerber und selbiger für Ihre Ausbildungsstelle entscheiden, teilt die Ausbildungsstelle der zuständigen Hochschule schnellstmöglich, jedoch bis spätestens 22. Juli des Jahres des Ausbildungsbeginns schriftlich Ihre Entscheidung mit.
Der Bewerber ist von Ihnen darauf hinzuweisen, sich um folgende personalrechtlichen Unterlagen zu bemühen und an Sie zu übersenden:
Diese Unterlagen sind von Ihnen als Einstellungsvoraussetzungen zum 1. September des Einstellungsjahres zu prüfen. Nach Ausbildungsbeginn müssen diese Unterlagen an die Hochschule übersendet werden, diese sind die Grundlage für die spätere Ernennung in ein Beamtenverhältnis.

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. Endgültige Zulassungen zum Studium können erst nach Abschluss der Bewerbungsphase und nach der Rückmeldefrist der Ausbildungsstellen (22. Juli des Jahres des Ausbildungsbeginns) erfolgen. Erst dann kann die finale Bewerberrangliste gebildet werden, die die Grundlage der Studienplatzvergabe darstellt. Das Nachrückverfahren kann in Einzelfällen wie bisher auch bis unmittelbar vor Praktikumsbeginn andauern.

Freundliche Grüße

Ihre Hochschule $hochschule
$anschrift

Diese Mail wurde automatisch generiert!
Antworten Sie daher nicht auf diese Mail.

Vielen Dank! "; } else { # weibliche Version $text = "Guten Tag,

eine Bewerberin hat Sie als Wunschausbildungsstelle für das Einführungspraktikum im Studiengang Public Management ausgewählt.
"; if ($tan == "") { $text .= " Sie erhalten einen Link für die Einsicht der Bewerbungsunterlagen:

$link"; } if ($tan != "") { $text .= "

Bitte registrieren Sie Ihre Praxisstelle zunächst mit folgenden Logindaten:
Registrierung: $link_register
Benutzername: $empfaenger
Einmalpasswort: $tan "; } $text .= "

Die Ausbildungsstellen führen das Auswahlverfahren nach § 7 Absätze 3 und 4 APrOVw gD durch. Sollten Sie sich für die Bewerberin und selbige für Ihre Ausbildungsstelle entscheiden, teilt die Ausbildungsstelle der zuständigen Hochschule schnellstmöglich, jedoch bis spätestens 22. Juli des Jahres des Ausbildungsbeginns schriftlich Ihre Entscheidung mit.
Die Bewerberin ist von Ihnen darauf hinzuweisen, sich um folgende personalrechtlichen Unterlagen zu bemühen und an Sie zu übersenden:


Diese Unterlagen sind von Ihnen als Einstellungsvoraussetzungen zum 1. September des Einstellungsjahres zu prüfen. Nach Ausbildungsbeginn müssen diese Unterlagen an die Hochschule übersendet werden, diese sind die Grundlage für die spätere Ernennung in ein Beamtenverhältnis.

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. Endgültige Zulassungen zum Studium können erst nach Abschluss der Bewerbungsphase und nach der Rückmeldefrist der Ausbildungsstellen (22. Juli des Jahres des Ausbildungsbeginns) erfolgen. Erst dann kann die finale Bewerberrangliste gebildet werden, die die Grundlage der Studienplatzvergabe darstellt. Das Nachrückverfahren kann in Einzelfällen wie bisher auch bis unmittelbar vor Praktikumsbeginn andauern.

Freundliche Grüße

Ihre Hochschule $hochschule
$anschrift

Diese Mail wurde automatisch generiert!
Antworten Sie daher nicht auf diese Mail.

Vielen Dank! "; } #echo " #From: $sender - $sendermail
#$empfaenger
#$betreff
#$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); $datum_db = date("Y-m-d H:i:s"); $text_db = addslashes($text); if ($return) { $sql1 = $db->query("UPDATE bpm_dst_wunsch SET mail_text = '$text_db' , mail_betreff = '$betreff' , status = 'V' , sendedat = '$datum_db' WHERE wu_id = $row1[wu_id] "); } else { $sql1 = $db->query("UPDATE bpm_dst_wunsch SET mail_text = '$text_db' , mail_betreff = '$betreff' , status = 'F' WHERE wu_id = $row1[wu_id] "); $err = 2; } } if (!isset($err)) { #echo "destroy1"; session_destroy(); } else { #echo "destroy2"; session_destroy(); # echo ""; # exit; } } $smarty->assign('action', "$action"); $smarty->display("$template/upload/$templatename"); ?>