|
1 #!/usr/bin/php |
|
2 <?php |
|
3 |
|
4 /** |
|
5 * @author Bettina Schwarzer, Fritz-Haber-Institut |
|
6 * @copyright 10/2012 |
|
7 * |
|
8 * sendet email an Sekretariate am Ende des Monats |
|
9 * mit Namen der ausgeschiedenen Mitarbeiter in diesem Monat |
|
10 * auch als cron-Job einsetzbar |
|
11 * |
|
12 */ |
|
13 |
|
14 include_once("/var/www/fhiiqm/inc/dbconnect.inc.php"); |
|
15 if (!isset($dbc) || !$dbc) $dbc = new dbconnection(); |
|
16 |
|
17 $addr = array ( "AC" => "acsek@fhi-berlin.mpg.de", |
|
18 "CP" => "mehnert@fhi-berlin.mpg.de,misch@fhi-berlin.mpg.de", |
|
19 "MP" => "doelln@fhi-berlin.mpg.de", |
|
20 "PC" => "reimers@fhi-berlin.mpg.de,bunkherr@fhi-berlin.mpg.de", |
|
21 "TH" => "thsecretary@fhi-berlin.mpg.de", |
|
22 "VW" => "admsek@fhi-berlin.mpg.de", |
|
23 "INF" => "admsek@fhi-berlin.mpg.de" |
|
24 ); |
|
25 $mon = array ( "January" => "Januar", |
|
26 "February" => "Februar", |
|
27 "March" => "März", |
|
28 "April" => "April", |
|
29 "May" => "Mai", |
|
30 "June" => "Juni", |
|
31 "July" => "Juli", |
|
32 "August" => "August", |
|
33 "September" => "September", |
|
34 "October" => "Oktober", |
|
35 "November" => "November", |
|
36 "December" => "Dezember" |
|
37 ); |
|
38 /* |
|
39 $sql = "SELECT nachname, vorname, abt_name,max(timestamp) as dat |
|
40 FROM fhiiqm.Mitarbeiter m LEFT OUTER JOIN Abteilung a |
|
41 ON m.abt_tel=a.abt_ID |
|
42 WHERE aktiv != 1 AND (timestamp) > LAST_DAY(NOW()) - INTERVAL 1 MONTH |
|
43 GROUP BY abt_name, nachname, vorname"; |
|
44 */ |
|
45 $sql = "CALL ma_change(0)"; |
|
46 // liefert: nachname,vorname,abt,dat,aktiv |
|
47 $result = $dbc -> queryObjectArray($sql); |
|
48 if ($result) |
|
49 { |
|
50 $heute = new DateTime(); |
|
51 $me = $heute->format("F"); |
|
52 $infoh = " |
|
53 <html> |
|
54 <head> |
|
55 <title>Mitarbeiter (IQM-DB)</title> |
|
56 </head> |
|
57 <body> |
|
58 <p>Liebe Kollegin,</p> |
|
59 <p>im Monat " . $mon["$me"] ." haben folgende Mitarbeiter Ihre Abteilung / das FHI verlassen:</p> |
|
60 <table border='1' cellspacing='0' cellpadding='5'>\n |
|
61 <tr><td>Name</td><td>Vorname</td><td>Abteilung</td></tr>\n"; |
|
62 |
|
63 $trenn = md5( time() ); |
|
64 // $eaddr = "kaendler@fhi-berlin.mpg.de"; // nur fuer Test |
|
65 $eaddr = "schwarzer@fhi-berlin.mpg.de"; // nur fuer Test |
|
66 // $eaddr = "bettina.schwarzer@gmx.de"; // nur fuer Test |
|
67 $eheader = |
|
68 // 'Reply-To: noreply@' .$_SERVER['SERVER_NAME'] . "\r\n" . |
|
69 'Message-ID: <' .$trenn.'@achilleus.rz-berlin.mpg.de'.">\r\n" . |
|
70 'X-Mailer: PHP v' .phpversion() . "\r\n" . |
|
71 'Bcc: schwarzer@fhi-berlin.mpg.de' . "\r\n" . |
|
72 'From: noreply@achilleus.rz-berlin.mpg.de'."\r\n" . |
|
73 'MIME-Version: 1.0' . "\r\n" . |
|
74 'Content-Type: text/html; charset=iso-8859-1' . "\r\n" ; |
|
75 // $eheader .= " boundary = " .$trenn; // nur fuer Content-Type: multipart/mixed email |
|
76 $eheader .= "\r\n\r\n"; |
|
77 $esubj = "Mitarbeiter FHI"; |
|
78 |
|
79 // Mailbody vorbereiten |
|
80 // $mailbody = "This is a multi-part message in MIME format\r\n"; |
|
81 // $mailbody .= "--" .$trenn. "\r\n"; |
|
82 // $mailbody .= "Content-Type: text/html; charset=iso-8859-1\r\n"; |
|
83 // $mailbody .= "Content-Transfer-Encoding: 8bit\r\n\r\n"; |
|
84 |
|
85 $emesse = "<p>Diese Information unterstützt Sie dabei, Ihre Mitarbeiter-Listen und -Zuordnungen aktuell zu halten.</p>"; |
|
86 $emesse .= "<br /><p>Das ist eine automatisch generierte E-Mail, bitte nicht darauf antworten.</p>\n"; |
|
87 $emesse .= "<p>Beste Grüße, Ihre FHIIQM-Datenbank</p>\n</body></html>\n"; |
|
88 |
|
89 $first = 1; $info = ""; |
|
90 foreach ($result as $row) |
|
91 { |
|
92 if ($first) $abt = $row->abt; |
|
93 $dat = new DateTime($row->dat); |
|
94 if ($abt == $row->abt) |
|
95 { |
|
96 // $info .= "<tr><td>$row->nachname</td><td>$row->vorname</td><td>". $dat->format('d.m.Y')."</td><td>$row->abt</td></tr>\n"; |
|
97 $info .= "<tr><td>$row->nachname</td><td>$row->vorname</td><td>$row->abt</td></tr>\n"; |
|
98 } |
|
99 else |
|
100 { |
|
101 // $emess = $mailbody . $infoh."\n".$info ."</table>\n" . $emesse ."\n"; |
|
102 $emess = $infoh."\n".$info ."</table>\n" . $emesse ."\n"; |
|
103 // $eaddr = $addr["$abt"]; |
|
104 mail($eaddr,$esubj,$emess,$eheader); |
|
105 // echo "<br />adr=$eaddr<br />mess= $emess"; |
|
106 // $info = "<tr><td>$row->nachname</td><td>$row->vorname</td><td>". $dat->format('d.m.Y')."</td><td>$row->abt</td></tr>\n"; |
|
107 $info = "<tr><td>$row->nachname</td><td>$row->vorname</td><td>$row->abt</td></tr>\n"; |
|
108 } |
|
109 $abt = $row->abt; |
|
110 $first = 0; |
|
111 } |
|
112 $emess = $infoh."\n".$info ."</table>\n" . $emesse ."\n"; |
|
113 // $eaddr = $addr["$abt"]; |
|
114 mail($eaddr,$esubj,$emess,$eheader); |
|
115 // echo "<br />adr=$eaddr<br />mess= $emess"; |
|
116 } |
|
117 ?> |