<?php #error_reporting(E_ALL); #ini_set('display_errors', 1); session_start(); include("kurs/datenbankanbindung.php"); // fügt die Datenbankanbindung ein: Sys:\php\includes\kurs\datenbankanbindung.php require_once("zuweisung_mail.php"); require_once("func_mail_att.php"); $user_admin = $_COOKIE["user_admin"]; $hs = $_COOKIE["ck_hs"]; $jahrgang = $_COOKIE["jahrgang"]; $qid = $_GET["qid"]; $hist = $_GET["hist"]; $_SESSION["ck_hist"] = $hist; $db = dbconnect(); if (isset($_GET['action'])) $action = $_GET['action']; else $action = ""; switch ($action) { default: unset($_SESSION["ck_name"]); unset($name); if($hist==''){ unset($_SESSION["ck_hist"]); } if ($hs == 'K') { $result3 = $db->query("SELECT wert1 FROM parameter WHERE pid=16"); $row3 = $result3->fetch_array(); $auslandsamt = $row3['wert1']; } if ($hs == 'L') { $result3 = $db->query("SELECT wert1 FROM parameter WHERE pid=17"); $row3 = $result3->fetch_array(); $auslandsamt = $row3['wert1']; } $sql = $db->query("INSERT INTO stan_printqueue_hist SELECT qid, saaid, uid, block, zuweisung, datum,klartext, printed_obj, wagsid, '$user_admin',hs_admin,'N',versandart, dokument, mail_intern_office, sort_order FROM stan_printqueue_antrag WHERE qid=$qid"); $querya = "SELECT a.saaid, b.uid, a.zuweisung, vorname, nachname,a.qid, c.mail, b.dst_id, aendid, art, date_format(beginn, '%d.%m.%Y') beginn_form, date_format(ende, '%d.%m.%Y') ende_form, dokument FROM stan_printqueue_hist a, stan_antrag b, stud c WHERE a.saaid=b.saaid AND b.uid=c.uid AND a.qid='$qid' AND a.zuweisung != 'SOZ' ORDER BY uid,sort_order"; $resulta = $db->query($querya) or die("Cannot execute query2"); $lnzaehler1 = 0; $lnzaehler2 = 0; while ($row_cur_uid = $resulta->fetch_array()) { $uid = $row_cur_uid['uid']; $dokument = $row_cur_uid['dokument']; #AES und EZS jeweils nur einmal in der Schleife if ($lnzaehler1 < 1 AND $row_cur_uid['zuweisung'] == 'EZS') { # Dokument ggf. erzeugen if($dokument == '' or !file_exists($dokument)){ $dok_name = zuweisung_mail($hs, 'EZS', $row_cur_uid['saaid'], $uid, $hist); }else{ $dok_name = $dokument; } $name['dokument'][] = $dok_name; $name['mail'][] = $row_cur_uid['mail']; $name['mailcc'][] = ''; $name['art'][] = 'EZS'; $name['qid'][] = $row_cur_uid['qid']; $name['vorname'][] = $row_cur_uid['vorname']; $name['nachname'][] = $row_cur_uid['nachname']; $name['beginn_form'][] = $row_cur_uid['beginn_form']; $name['ende_form'][] = $row_cur_uid['ende_form']; $lnzaehler1 = 1; } if ($row_cur_uid['zuweisung'] == 'EZP') { # Mailadressen für die Dienststellen suchen, falls vorhanden $result_data2 = $db->query("SELECT distinct 1 FROM stan_dienststellen WHERE dst_id= '$row_cur_uid[dst_id]'"); $rowdata2 = $result_data2->fetch_array(); if ($rowdata2[0] == '1') { $result_data3 = $db->query("SELECT mail FROM stan_dienststellen WHERE dst_id='$row_cur_uid[dst_id]'"); $rowdata3 = $result_data3->fetch_array(); } else { $result_data3 = $db->query("SELECT mail FROM stan_dienststellen_tmp WHERE dst_id='$row_cur_uid[dst_id]'"); $rowdata3 = $result_data3->fetch_array(); } # Dokument ggf. erzeugen if($dokument == '' or !file_exists($dokument)){ $dok_name = zuweisung_mail($hs, 'EZP', $row_cur_uid['saaid'], $uid, $hist); }else{ $dok_name = $dokument; } $name['dokument'][] = $dok_name; ## Bei nicht geänderten Daten soll das Auslandsamt nicht angeschrieben werden. ## # Bei Auslandsstellen auch Auslandsamt anschreiben ## if ($row_cur_uid['art'] == 6) { ## $mailcc = $auslandsamt; ## } else { ## $mailcc = ''; ## } $name['mail'][] = $rowdata3['mail']; $name['mailcc'][] = $mailcc; $name['art'][] = 'EZP'; $name['qid'][] = $row_cur_uid['qid']; $name['vorname'][] = $row_cur_uid['vorname']; $name['nachname'][] = $row_cur_uid['nachname']; $name['beginn_form'][] = $row_cur_uid['beginn_form']; $name['ende_form'][] = $row_cur_uid['ende_form']; } if ($row_cur_uid['zuweisung'] == 'AEP') { # wird u.a für AEP benötigt $resultakt = $db->query("SELECT saaid, aendid, status, zuweisung, uid FROM stan_antrag WHERE saaid ='$row_cur_uid[saaid]' "); $row_akt = $resultakt->fetch_array(); // Prüfen ob schon Änderungsanträge vorhanden # aendid: 82164 $res_alt = $db->query("SELECT saaid, aendid, status, zuweisung FROM stan_antrag WHERE saaid<'$row_cur_uid[saaid]' AND aendid='$row_akt[aendid]' AND zuweisung!='NA' ORDER BY saaid DESC LIMIT 1"); $row_alt = $res_alt->fetch_array(); #saaid: 82164 # Mailadressen für die Dienststellen suchen, falls vorhanden $res_dst = $db->query("SELECT dst_id, art FROM stan_antrag WHERE saaid='$row_alt[saaid]'"); $row_dst = $res_dst->fetch_array(); # dst_id: 212000 $result_data2 = $db->query("SELECT distinct 1 FROM stan_dienststellen WHERE dst_id= '$row_dst[dst_id]'"); $rowdata2 = $result_data2->fetch_array(); if ($rowdata2[0] == '1') { $result_data3 = $db->query("SELECT mail FROM stan_dienststellen WHERE dst_id='$row_dst[dst_id]'"); $rowdata3 = $result_data3->fetch_array(); } else { $result_data3 = $db->query("SELECT mail FROM stan_dienststellen_tmp WHERE dst_id='$row_dst[dst_id]'"); $rowdata3 = $result_data3->fetch_array(); } # Dokument ggf. erzeugen if($dokument == '' or !file_exists($dokument)){ $dok_name = zuweisung_mail($hs, 'AEP', $row_cur_uid['saaid'], $uid, $hist); }else{ $dok_name = $dokument; } $name['dokument'][] = $dok_name; ## Bei nicht geänderten Daten soll das Auslandsamt nicht angeschrieben werden. # # Bei Auslandsstellen auch Auslandsamt anschreiben # if ($row_dst['art'] == 6) { # $mailcc = $auslandsamt; # } else { # $mailcc = ''; # } $name['mail'][] = $rowdata3['mail']; $name['mailcc'][] = $mailcc; $name['art'][] = 'AEP'; $name['qid'][] = $row_cur_uid['qid']; $name['vorname'][] = $row_cur_uid['vorname']; $name['nachname'][] = $row_cur_uid['nachname']; $name['beginn_form'][] = $row_cur_uid['beginn_form']; $name['ende_form'][] = $row_cur_uid['ende_form']; } #AES und EZS jeweils nur einmal in der Schleife if ($lnzaehler2 < 1 AND $row_cur_uid['zuweisung'] == 'AES') { # Dokument ggf. erzeugen if($dokument == '' or !file_exists($dokument)){ $dok_name = zuweisung_mail($hs, 'AES', $row_cur_uid['saaid'], $uid, $hist); }else{ $dok_name = $dokument; } $name['dokument'][] = $dok_name; $name['mail'][] = $row_cur_uid['mail']; $name['mailcc'][] = ''; $name['art'][] = 'AES'; $name['qid'][] = $row_cur_uid['qid']; $name['vorname'][] = $row_cur_uid['vorname']; $name['nachname'][] = $row_cur_uid['nachname']; $name['beginn_form'][] = $row_cur_uid['beginn_form']; $name['ende_form'][] = $row_cur_uid['ende_form']; $lnzaehler2 = 1; } } # Ende While # Offene Standortzuweisungen # Select darf keine weiteren spalten enthalten, sonst passt das mit dem distinct nicht mehr $querya = "SELECT a.saaid, a.UID, a.zuweisung, vorname, nachname,a.qid, c.mail, dokument,a.wagsid FROM stan_printqueue_hist a, stud c WHERE a.uid=c.uid AND a.qid='$qid' AND a.zuweisung = 'SOZ' ORDER BY uid,sort_order"; /* SELECT a.saaid, a.UID, a.zuweisung, vorname, nachname,a.qid, c.mail, dokument,d.wagsid FROM stan_printqueue_hist a, stud c, stan_ag_standort_wunsch d WHERE a.uid=c.uid AND a.uid=d.uid and a.wagsid=d.wagsid AND a.qid='94382' AND a.zuweisung = 'SOZ' AND d.prio=0 ORDER BY uid,sort_order */ $resulta = $db->query($querya) or die("Cannot execute query1"); while ($row_cur_uid2 = $resulta->fetch_array()) { $dok_name2 = ''; $uid = $row_cur_uid2['UID']; $wagsid = $row_cur_uid2['wagsid']; $dokument = $row_cur_uid2['dokument']; # Dokument ggf. erzeugen if($dokument == '' or !file_exists($dokument)){ $dok_name2 = zuweisung_mail($hs, 'SOZ', $qid, $uid, $hist); }else{ $dok_name2 = $dokument; } $name['dokument'][] = $dok_name2; $name['mail'][] = $row_cur_uid2['mail']; $name['mailcc'][] = ''; $name['art'][] = 'SOZ'; $name['qid'][] = $row_cur_uid2['qid']; $name['vorname'][] = $row_cur_uid2['vorname']; $name['nachname'][] = $row_cur_uid2['nachname']; $name['beginn_form'][] = ''; $name['ende_form'][] = ''; } $_SESSION["ck_name"] = serialize($name); #echo "<pre>"; #print_r($name); #echo "</pre>"; #exit; echo " <html> <head> <meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"> <link rel=\"stylesheet\" href=\"../styles_pc.css\" type=\"text/css\"> <title>Auswahl</title> <script type='text/javascript' src='jquery-1.9.1.js'> </script> <script type='text/javascript'> function checkAll(ele) { var checkboxes = document.getElementsByTagName('input'); if (ele.checked) { for (var i = 0; i < checkboxes.length; i++) { if (checkboxes[i].type == 'checkbox') { checkboxes[i].checked = true; } } } else { for (var i = 0; i < checkboxes.length; i++) { console.log(i) if (checkboxes[i].type == 'checkbox') { checkboxes[i].checked = false; } } } } </script> </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=\"80%\" 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\">Dokumente prüfen und auswählen</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\"> <form action="; echo $_SERVER['PHP_SELF'] . "?action=mail"; echo " method=\"POST\" name=\"mail\"> <table width='100%' cellspacing=0 cellpadding=0 border=0> <tr> <td 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><INPUT type='checkbox' onclick='checkAll(this)' name='chk[]' /></b> </td> <td 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>Dokument prüfen</b> für Emailversand anwählen und nicht ausdrucken! </td> <td 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>Mailadresse</b> </td> </tr>"; for ($i = 0; $i < sizeof($name['dokument']); $i++) { $dokument = ''; $dokbase = ''; $dokument = $name['dokument'][$i]; $dokbase = basename($dokument); $mail = $name['mail'][$i]; $qid = $name['qid'][$i]; # erzeugtes PDF nachtragen in Printqueue $result4 = $db->query("SELECT dokument FROM stan_printqueue_antrag WHERE qid=$qid"); $row4 = $result4->fetch_array(); if($row4['dokument'] == '' or !file_exists($row4['dokument'])){ # Wenn das Feld Dokument leer ist, oder es die darin enthaltene Datei nicht mehr gibt, dann die neu erzeugte Datei reinschreiben. $sql_queue = $db->query("UPDATE stan_printqueue_antrag set dokument='$dokument' WHERE qid=$qid"); } #Historie wieder löschen $sql_queue = $db->query("DELETE FROM stan_printqueue_hist WHERE qid='" . $name['qid'][$i] . "'"); echo " <tr> <td>"; if ($mail != '') { echo "<input type='checkbox' name='mail[]' value='$i'>"; } echo " </td> <td>"; if ($mail != '') { echo "<a href='$dokument' target='_new'>$dokbase</a>"; } else { # Wenn keine Mailadresse hinterlegt ist, kann das Dokument nicht angezeigt werden. # Es soll an dieser verhindert werden, dass die Dokumente ausgedruckt und per Post verschickt werden. Das muss separat über die Historie erfolgen, wo auch entsprechneder Kenner gesetzt wird. echo "$dokbase"; } echo " </td> <td>"; if ($mail != '') { echo $mail; } else { echo "<i>Schreiben muss mit der Post verschickt werden -> Historie->Offenen Drucke</i>"; } echo " </td> </tr> "; } echo " </table> <br> <input type=\"submit\" value=\"Mailversand\" name=\"B1\"></td> </form> </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>"; break; case "mail": #echo "hier: mail<br>"; # Angehakten Mails $name = unserialize($_SESSION["ck_name"]); $mail = $_POST['mail']; $hist = $_SESSION["ck_hist"]; #echo nl2br(print_r($_COOKIE,true)); # exit; # echo "<pre>"; # print_r($name); # print_r($mail); # echo "</pre>"; # exit; # Welche Möglichkeiten gibt es /* Schleife über $name[dokument] 1) Mailadresse vorhanden und ausgewählt -> Ausgewählte Mails verschicken; Versandart=M, Status=G $name[dokument].index in $mail.wert enthalten, dann angehakt #Bei Fehler $error['art'][] = Mail $error['status'][] = Mailversand fehlgeschlagen 2) Mailadresse vorhanden und nicht ausgewählt -> Versandart=M, Status=N #Bei Fehler $error['art'][] = Mail $error['status'][] = Noch nicht versendet 3) Mailadresse nicht vorhanden -> nicht verschicken, Versandart=B, Status=N $error['art'][] = Brief $error['status'][] = Keine Mailadresse hinterlegt (Auslandsamt wurde ggf angeschrieben) Ende Schleife $name[dokument] */ /* # Mails, die versendet werden sollen Fall 1: Mail angehakt zum Versand<br> Fall 2: Mailadresse vorhanden und nicht ausgewählt<br> Fall 3: Mailadresse nicht vorhanden und keine Auslandsstelle-> nicht verschicken Fall 4: Mailadresse nicht vorhanden MailCC nur vorhanden, also bei Auslandsstelle ist die Variable mailCC mit der Mailadresse international Office der Hochschule befüllt. Diese soll auch verschickt werden, wenn $mail leer ist, also die Auslandspraxisstelle keine Mailadresse hat. <br><br><br>"; */ if ($hs == 'K' or $hs == 'k') { //Empfängeradresse selektieren. Je nach Hochshule verschieden $result3 = $db->query("SELECT wert1, wert2 FROM parameter WHERE pid=15"); $row3 = $result3->fetch_array(); $hochschule = 'Kehl'; $result4 = $db->query("SELECT wert1 FROM parameter WHERE pid=18"); $row4 = $result4->fetch_array(); $telefon = $row4['wert1']; } if ($hs == 'L' or $hs == 'l') { //Empfängeradresse selektieren. Je nach Hochshule verschieden $result3 = $db->query("SELECT wert1, wert2 FROM parameter WHERE pid=6"); $row3 = $result3->fetch_array(); $hochschule = 'Ludwigsburg'; $result4 = $db->query("SELECT wert1 FROM parameter WHERE pid=5"); $row4 = $result4->fetch_array(); $telefon = $row4['wert1']; } for ($i = 0; $i < sizeof($name['dokument']); $i++) { $mail_betreff = ""; $mail_body = ""; #Mail aufbereiten if ($name['art'][$i] == 'EZS') { $mail_betreff = "Genehmigung und Bekanntgabe Praktikumsstelle " . $name['nachname'][$i]; $mail_body = "Sehr geehrte(r) Frau / Herr " . $name['vorname'][$i] . " " . $name['nachname'][$i] . ",<br><br> im Anhang erhalten Sie Ihre Zuweisung zu den Ausbildungsstellen in der praktischen Ausbildung.<br><br> Sollten sich Änderungen ergeben stellen Sie einen erneuten Antrag über das Praxisstellensystem.<br> Weitere wichtige Informationen zum Zuweisungsbescheid erhalten Sie im Downloadbereich der beiden Homepages der Hochschulen Ludwigsburg und Kehl..<br><br> Sollten Sie noch Fragen zur praktischen Ausbildung und zur Zuweisung haben, wenden Sie sich bitte an: <a href='mailto:$row3[wert2]'>$row3[wert1]</a>. <br><br> Mit freundlichen Grüßen<br><br> $row3[wert1]"; } if ($name['art'][$i] == 'EZP') { $mail_betreff = "Genehmigung und Bekanntgabe Praktikumsstelle " . $name['nachname'][$i]; $mail_body = "Sehr geehrte Damen und Herren,<br><br> vielen Dank, dass Sie sich bereit erklärt haben im Rahmen der praktischen Ausbildung im gehobenen Verwaltungsdienst eine Praktikumsstelle zur Verfügung zu stellen.<br> Im Anhang erhalten Sie die aktuelle Zuweisung von Herrn / Frau " . $name['vorname'][$i] . " " . $name['nachname'][$i] . " für den Zeitraum " . $name['beginn_form'][$i] . " - " . $name['ende_form'][$i] . ".<br> <b>Bitte beachten:</b> Dieses Zuweisungsschreiben wird <b><u>nur per Email</u></b> versendet, bitte an die zuständige Stelle weiterleiten.<br> In �� 22 bis 24 APrOVw gD finden Sie die jeweiligen Regelungen für das Praktikum.<br> Sollten Sie noch Fragen zur praktischen Ausbildung und zur Zuweisung haben, steht Ihnen <a href='mailto:$row3[wert2]'>$row3[wert1]</a> als Ansprechpartner zur Verfügung.<br><br> Mit freundlichen Grüßen<br><br> $row3[wert1]<br> Tel: $telefon"; } if ($name['art'][$i] == 'AEP') { $mail_betreff = "Genehmigung und Bekanntgabe Praktikumsstelle " . $name['nachname'][$i]; $mail_body = "Sehr geehrte Damen und Herren,<br><br> vielen Dank, dass Sie sich bereit erklärt haben im Rahmen der praktischen Ausbildung im gehobenen Verwaltungsdienst eine Praktikumsstelle zur Verfügung zu stellen.<br> Im Anhang erhalten Sie die geänderte und aktualisierte Zuweisung von Herrn / Frau " . $name['vorname'][$i] . " " . $name['nachname'][$i] . " für den Zeitraum " . $name['beginn_form'][$i] . " - " . $name['ende_form'][$i] . ".<br><br> <b>Bitte beachten:</b> Dieses Zuweisungsschreiben wird <b><u>nur per Email</u></b> versendet, bitte an die zuständige Stelle weiterleiten.<br> In �� 22 bis 24 APrOVw gD finden Sie die jeweiligen Regelungen für das Praktikum.<br> Sollten Sie noch Fragen zur praktischen Ausbildung und zur Zuweisung haben, steht Ihnen <a href='mailto:$row3[wert2]'>$row3[wert1]</a> als Ansprechpartner zur Verfügung.<br><br> Mit freundlichen Grüßen<br><br> $row3[wert1]<br> Tel: $telefon"; } if ($name['art'][$i] == 'AES') { $mail_betreff = "Genehmigung und Bekanntgabe Praktikumsstelle " . $name['nachname'][$i]; $mail_body = "Sehr geehrte(r) Frau / Herr " . $name['vorname'][$i] . " " . $name['nachname'][$i] . ",<br><br> im Anhang erhalten Sie Ihre aktualisierte Zuweisung zu den Ausbildungsstellen in der praktischen Ausbildung.<br> Sollten sich weitere Änderungen ergeben stellen Sie einen erneuten Antrag über das Praxisstellensystem.<br><br> Weitere wichtige Informationen zum Zuweisungsbescheid erhalten Sie im Downloadbereich der beiden Homepages der Hochschulen Ludwigsburg und Kehl..<br><br> Sollten Sie noch Fragen zur praktischen Ausbildung und zur Zuweisung haben, wenden Sie sich bitte an: <a href='mailto:$row3[wert2]'>$row3[wert1]</a>. <br><br> Mit freundlichen Grüßen<br><br> $row3[wert1]"; } if ($name['art'][$i] == 'SOZ') { $mail_betreff = "Bekanntgabe Abordnung AG-Standort " . $name['nachname'][$i]; $mail_body = "Sehr geehrte(r) Frau / Herr " . $name['vorname'][$i] . " " . $name['nachname'][$i] . ",<br><br> im Anhang erhalten Sie Ihre Abordnung zu Ihren AG-Standorten.<br> Sollten sich aufgrund von Veränderungen des Schwerpunkts Änderungen beim AG-Vertiefungsbereich ergeben, kontaktieren Sie bitte die Hochschule.<br> Wenn Sie einen Härtefallantrag stellen möchten, oder sich Probleme mit dem Standort, kontaktieren Sie ebenfalls Ihre Hochschule.<br><br> Weitere wichtige Informationen zur Abordnung an die Arbeitsgemeinschaften erhalten Sie im Downloadbereich der beiden Homepages der Hochschulen Ludwigsburg und Kehl.<br> Sollten Sie noch Fragen zur praktischen Ausbildung und zur Zuweisung haben, wenden Sie sich bitte an: <a href='mailto:$row3[wert2]'>$row3[wert1]</a>. <br><br> Mit freundlichen Grüßen<br><br> $row3[wert1]"; } # Fall1 if (@in_array($i, $mail) AND $name['mail'][$i] != "") { # Wenn Mail angehakt und Mailadresse nicht leer # Mailversand #$returncode =@mail_att("Empfaenger@domain.de", "cc@domain.de", "Betreff", "Euer Nachrichtentext", "Absendername", "absender@domain.de", "antwortadresse@domain.de", "datei.zip"); $returncode = @mail_att($name['mail'][$i], $name['mailcc'][$i], $mail_betreff, $mail_body, "Hochschule $hochschule", $row3['wert2'], $row3['wert2'], $name['dokument'][$i]); if ($returncode) { #Mail wurde verschickt if (!isset($hist)) { # Kein Historiendruck $datum = date("Y-m-d H:i:s", time()); # Wurde auch eine Mail ans international office der Hochschule geschickt, dann dokumentieren if ($name['mailcc'][$i] != "") { $datum_int_office = date("Y-m-d H:i:s", time()); } else { $datum_int_office = "0000-00-00 00:00:00"; } #Bei EZS, AES und SOZ werden die Schreiben dem Student als Sammelmail verschickt, daher den Status bei allen in der Printqueue auf Gesendet setzen if ($name['art'][$i] == 'EZS' OR $name['art'][$i] == 'AES' or $name['art'][$i] == 'SOZ') { $resultpo = $db->query("SELECT printed_obj FROM stan_printqueue_antrag WHERE qid = '" . $name['qid'][$i] . "' "); $row_po = $resultpo->fetch_array(); // Prüfen ob schon Änderungsanträge vorhanden $printed_obj = explode(',', substr(trim($row_po['printed_obj']), 0, -1)); if ($name['art'][$i] != 'SOZ') { for ($k = 0; $k < count($printed_obj); $k++) { # Bei Erstranträge/Änderungsanträge steht die SAAID in printed_obj $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET druckstatus='G' , datum = '$datum' , versandart = 'M' , mail_intern_office = '$datum_int_office' WHERE saaid='" . $printed_obj[$k] . "' "); } } else { # Bei SOZ steht die QID in printed_obj for ($k = 0; $k < count($printed_obj); $k++) { # Bei SOZ steht die QID in printed_obj $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET druckstatus='G' , datum = '$datum' , versandart = 'M' , mail_intern_office = '$datum_int_office' WHERE qid='" . $printed_obj[$k] . "' "); } } } else { $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET druckstatus='G' , datum='$datum' , versandart = 'M' , mail_intern_office = '$datum_int_office' WHERE qid='" . $name['qid'][$i] . "' "); } } else { # Historiendruck } } else { #Mailversand hat nicht funktioniert. Druckstatus wird in diesem Modul trotzdem auf versendet gesetzt. Da dieses Modul aus der Historie aufgerufen wird. Dann waren sie auch schon mal gedruckt. if (!isset($hist)) { if ($name['art'][$i] == 'SOZ') { # Ging die Mail nicht raus, muss der Eintrag aus der printqueue wieder gelöscht werden, denn Standortzuweisungen können nur erneut geschickt werden, wenn SOZ dort nicht eingetragen ist. $resultpo = $db->query("SELECT printed_obj FROM stan_printqueue_antrag WHERE qid = '" . $name['qid'][$i] . "' "); $row_po = $resultpo->fetch_array(); // Prüfen ob schon Änderungsanträge vorhanden $printed_obj = explode(',', substr(trim($row_po['printed_obj']), 0, -1)); for ($k = 0; $k < count($printed_obj); $k++) { # $sql_queue = $db->query("DELETE FROM stan_printqueue_antrag WHERE qid='" . $printed_obj[$k] . "'"); } } else { $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET druckstatus='G' , versandart = 'M' WHERE qid='" . $name['qid'][$i] . "' "); } } else { #Mailversandfehler historiendruck } $error['art'][] = 'Mail'; $error['status'][] = 'Mailversand fehlgeschlagen'; $error['qid'][] = $name['qid'][$i]; $error['dokument'][] = $name['dokument'][$i]; # Versandart muss nicht getauscht werden, wird beim offenen Briefdruck geändert } } #Fall 2: Mail nicht ausgewählt. Alle druckstatis auf G da dieses Modul aus der Historie aufgerufen wird. if (!@in_array($i, $mail) AND $name['mail'][$i] != "") { if (!isset($hist)) { # Kein Historiendruck $datum = date("Y-m-d H:i:s", time()); # Wurde auch eine Mail ans international office der Hochschule geschickt, dann dokumentieren if ($name['mailcc'][$i] != "") { $datum_int_office = date("Y-m-d H:i:s", time()); } else { $datum_int_office = "0000-00-00 00:00:00"; } #Bei EZS, AES und SOZ werden die Schreiben dem Student als Sammelmail verschickt, daher den Status bei allen in der Printqueue auf Gesendet setzen if ($name['art'][$i] == 'EZS' OR $name['art'][$i] == 'AES' or $name['art'][$i] == 'SOZ') { $resultpo = $db->query("SELECT printed_obj FROM stan_printqueue_antrag WHERE qid = '" . $name['qid'][$i] . "' "); $row_po = $resultpo->fetch_array(); // Prüfen ob schon Änderungsanträge vorhanden $printed_obj = explode(',', substr(trim($row_po['printed_obj']), 0, -1)); if ($name['art'][$i] != 'SOZ') { for ($k = 0; $k < count($printed_obj); $k++) { $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET druckstatus='G' , datum = '$datum' , versandart = 'M' , mail_intern_office = '$datum_int_office' WHERE saaid='" . $printed_obj[$k] . "' "); } } else { # Bei SOZ steht die QID in printed_obj for ($k = 0; $k < count($printed_obj); $k++) { # Bei SOZ steht die QID in printed_obj # $sql_queue = $db->query("DELETE FROM stan_printqueue_antrag WHERE qid='" . $printed_obj[$k] . "'"); } } } else { $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET druckstatus='G' , versandart = 'M' WHERE qid='" . $name['qid'][$i] . "' "); } } else { # Historiendruck } $error['art'][] = 'Mail'; $error['status'][] = 'Noch nicht versendet'; $error['qid'][] = $name['qid'][$i]; $error['dokument'][] = $name['dokument'][$i]; } # Fall 3 Mailadresse leer und kein Ausland -> Brief if ($name['mail'][$i] == "" AND $name['mailcc'][$i] == "") { if (!isset($hist)) { # Kein Historiendruck if ($name['art'][$i] != 'SOZ') { $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET druckstatus='G' , versandart = 'B' WHERE qid='" . $name['qid'][$i] . "' "); } else { # Standortzuweisung löschen aus printqueue, damit sie erneut gedruckt werden können $resultpo = $db->query("SELECT printed_obj FROM stan_printqueue_antrag WHERE qid = '" . $name['qid'][$i] . "' "); $row_po = $resultpo->fetch_array(); // Prüfen ob schon Änderungsanträge vorhanden $printed_obj = explode(',', substr(trim($row_po['printed_obj']), 0, -1)); # Bei SOZ steht die QID in printed_obj for ($k = 0; $k < count($printed_obj); $k++) { # Bei SOZ steht die QID in printed_obj # $sql_queue = $db->query("DELETE FROM stan_printqueue_antrag WHERE qid='" . $printed_obj[$k] . "'"); } } } else { # Historiendruck } $error['art'][] = 'Brief'; $error['status'][] = 'Keine Mailadresse hinterlegt'; $error['qid'][] = $name['qid'][$i]; $error['dokument'][] = $name['dokument'][$i]; } # Fall 4 Mailadresse leer und Ausland -> zumindest international Office der Hochschule anschreiben if ($name['mail'][$i] == "" AND $name['mailcc'][$i] != "" AND ($name['art'][$i] == 'EZP' OR $name['art'][$i] == 'AEP')) { # IntOffice anschreiben $returncode = @mail_att($name['mailcc'][$i], '', $mail_betreff, $mail_body, "Hochschule $hochschule", $row3['wert2'], $row3['wert2'], $name['dokument'][$i]); if ($returncode) { #Mail wurde verschickt if (!isset($hist)) { # Kein Historiendruck $datum = date("Y-m-d H:i:s", time()); # Wurde auch eine Mail ans international office der Hochschule geschickt, dann dokumentieren if ($name['mailcc'][$i] != "") { $datum_int_office = date("Y-m-d H:i:s", time()); } else { $datum_int_office = "0000-00-00 00:00:00"; } $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET druckstatus='G' , versandart = 'B' , mail_intern_office = '$datum_int_office' WHERE qid='" . $name['qid'][$i] . "' "); } else { # Historiendruck } $error['art'][] = 'Brief'; $error['status'][] = 'Keine Mailadresse der Praxisstelle hinterlegt; International Office wurde angeschrieben'; $error['qid'][] = $name['qid'][$i]; $error['dokument'][] = $name['dokument'][$i]; } else { # Mail nicht verschickt if (!isset($hist)) { # Kein Historiendruck, Standortzuweisungen SOZ kann es nicht geben, da die MailCC bei SOZ nicht gefüllt ist(keine Beteiligung des int.office) $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET druckstatus='G' , versandart = 'B' WHERE qid='" . $name['qid'][$i] . "' "); } else { # Historiendruck } $error['art'][] = 'Brief'; $error['status'][] = 'Keine Mailadresse der Praxisstelle hinterlegt; International Office wurde nicht angeschrieben'; $error['qid'][] = $name['qid'][$i]; $error['dokument'][] = $name['dokument'][$i]; } # Ende Returncode } # Ende Fall 4 } # Ende Dokumentenschleife # Aufbereitung der Fehlermeldung mit Dokumentenausgabe #echo "<pre><hr>"; #print_r($error); #echo "<hr></pre>"; #exit; echo " <html> <head> <meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"> <link rel=\"stylesheet\" href=\"../styles_pc.css\" type=\"text/css\"> <title>Auswahl</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=\"80%\" 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\">Hinweis- & Fehlerbericht</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\"> <table width='100%' cellspacing=0 cellpadding=0 border=0> <tr> <td 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>Dokument</b> </td> <td 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>Versandempfehlung</b> </td> <td 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>Hinweis</b> </td> </tr>"; for ($i = 0; $i < sizeof($error['art']); $i++) { $dokument = basename($error['dokument'][$i]); echo " <tr> <td>"; echo $dokument; echo " </td> <td>"; echo $error['art'][$i]; echo " </td> <td>"; echo $error['status'][$i]; echo " </td> </tr>"; } echo " </table> <br> Sie können das Fenster in der oberen rechten Ecke schließen! </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>"; } // Ende Action script ?>