13 error_reporting(E_ALL ^ E_NOTICE); |
13 error_reporting(E_ALL ^ E_NOTICE); |
14 |
14 |
15 if (isset($_GET["i"]) && $_GET["i"]) $edit = $_GET["i"]; // wegen tab_column, "i" als "e" missbraucht -> editieren ermoeglichen |
15 if (isset($_GET["i"]) && $_GET["i"]) $edit = $_GET["i"]; // wegen tab_column, "i" als "e" missbraucht -> editieren ermoeglichen |
16 if (!$edit) $edit = $_GET["e"]; |
16 if (!$edit) $edit = $_GET["e"]; |
17 if (!$edit) $edit = $_POST["e"]; |
17 if (!$edit) $edit = $_POST["e"]; |
18 if (isset($edit)) |
18 if (isset($edit) && $edit) |
19 { |
19 { |
20 session_start(); |
20 session_start(); |
21 if (! isset($_SESSION["userid"])) |
21 if (! isset($_SESSION["userid"])) |
22 { |
22 { |
23 include_once ("inc/func_lib.inc.php"); |
23 include_once ("inc/func_lib.inc.php"); |
24 login($_SERVER["PHP_SELF"]); |
24 login($_SERVER["PHP_SELF"]); |
25 exit; |
25 exit; |
26 } |
26 } |
27 |
27 |
28 if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("fmr",$_SESSION["recht"]) && !in_array("fme",$_SESSION["recht"]) |
28 if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("mtr",$_SESSION["recht"]) && !in_array("mte",$_SESSION["recht"]))) |
29 && !in_array("ddr",$_SESSION["recht"]) && !in_array("dde",$_SESSION["recht"]))) |
|
30 { |
29 { |
31 header("Location: start.php"); |
30 header("Location: start.php"); |
32 exit; |
31 exit; |
33 } |
32 } |
34 } |
33 } |
39 <head> |
38 <head> |
40 <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> |
39 <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> |
41 <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/> |
40 <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/> |
42 <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/> |
41 <link href="http://achilleus.rz-berlin.mpg.de/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/> |
43 |
42 |
44 <title>MA-Telefonliste</title> |
43 <title>MA/O-Telefonliste</title> |
45 </head> |
44 </head> |
46 |
45 |
47 <body onload="document.ffilter.filter.focus();"> |
46 <body onload="document.ffilter.filter.focus();"> |
48 |
47 |
49 <?php |
48 <?php |
50 if (isset($edit)) |
49 if (isset($edit) && $edit) |
51 { |
50 { |
52 echo " "; |
51 echo " "; |
53 echo "<div class=\"float-br smaller\" valign='top'>"; |
52 echo "<div class=\"float-br smaller\" valign='top'>"; |
54 echo " user: " . $_SESSION["userid"]; |
53 echo " user: " . $_SESSION["userid"]; |
55 echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n"; |
54 echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n"; |
56 echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Telefonliste\" title=\"Telefonliste\"/></div>\n"; |
55 echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Telefonliste\" title=\"Telefonliste\"/></div>\n"; |
57 } |
56 } |
58 |
57 |
59 // Felder, nach denen gefiltert werden kann |
58 // Felder, nach denen gefiltert werden kann |
60 $fields = array(2=>"Name",3=>"Vorname",5=>"Abteilung",6=>"Telefon/Fax",9=>"Haus", 10=>"Raum"); |
59 $fields = array(2=>"Name",3=>"Vorname",5=>"Abteilung",6=>"Telefon/Fax",9=>"Haus", 10=>"Raum"); |
61 // $fieldf = array(2=>"trim(nachname)",3=>"vorname",5=>"abt_name",6=>"mt.telefon_nr",9=>"geb_ID", 10=>"raum_nr"); |
60 // $fieldf = array(2=>"trim(nachname)",3=>"vorname",5=>"abt_name",6=>"mt.telefon_nr",9=>"geb_ID", 10=>"raum_nr"); |
62 $fieldf = array(2=>"name",3=>"vorname",5=>"abt_name",6=>"telefon_nr",9=>"geb_ID", 10=>"raum_nr"); |
61 $fieldf = array(2=>"name",3=>"vorname",5=>"abt_name",6=>"telefon_nr",9=>"geb_ID", 10=>"raum_nr"); |
63 |
62 |
86 $dbc = new dbconnection(); |
85 $dbc = new dbconnection(); |
87 /* |
86 /* |
88 $sql = "SELECT m.persknr, TRIM(nachname) as name, vorname, titel, abt_name, mt.telefon_nr, telefon_typ, public, geb_ID, raum_nr, email |
87 $sql = "SELECT m.persknr, TRIM(nachname) as name, vorname, titel, abt_name, mt.telefon_nr, telefon_typ, public, geb_ID, raum_nr, email |
89 FROM Mitarbeiter m LEFT OUTER JOIN |
88 FROM Mitarbeiter m LEFT OUTER JOIN |
90 Abteilung a ON m.abt_tel=a.abt_ID LEFT OUTER JOIN |
89 Abteilung a ON m.abt_tel=a.abt_ID LEFT OUTER JOIN |
91 MA_Telefon mt ON m.persknr=mt.persknr INNER JOIN |
90 MA_Telefon mt ON m.persknr=mt.persknr LEFT OUTER JOIN |
92 Telefon t ON mt.telefon_nr=t.telefon_nr LEFT OUTER JOIN |
91 Telefon t ON mt.telefon_nr=t.telefon_nr LEFT OUTER JOIN |
93 Raum r ON t.raum_ID = r.raum_ID |
92 Raum r ON t.raum_ID = r.raum_ID |
94 WHERE aktiv>0 AND (m.abt_tel <> 7) |
93 WHERE aktiv>0 AND (m.abt_tel <> 7 OR m.abt_tel IS NULL) |
95 UNION |
94 UNION |
96 SELECT m.persknr, TRIM(nachname) as name, vorname, titel, IFNULL(rag_bez,'INF') as abt_name, mt.telefon_nr, telefon_typ, public, geb_ID, raum_nr, email |
95 SELECT m.persknr, TRIM(nachname) as name, vorname, titel, IFNULL(rag_bez,'INF') as abt_name, mt.telefon_nr, telefon_typ, public, geb_ID, raum_nr, email |
97 FROM Mitarbeiter m LEFT OUTER JOIN |
96 FROM Mitarbeiter m LEFT OUTER JOIN |
98 MA_Telefon mt ON m.persknr=mt.persknr INNER JOIN |
97 MA_Telefon mt ON m.persknr=mt.persknr INNER JOIN |
99 Telefon t ON mt.telefon_nr=t.telefon_nr LEFT OUTER JOIN |
98 Telefon t ON mt.telefon_nr=t.telefon_nr LEFT OUTER JOIN |
100 Raum r ON t.raum_ID = r.raum_ID LEFT OUTER JOIN |
99 Raum r ON t.raum_ID = r.raum_ID LEFT OUTER JOIN |
101 MA_RaumArbGruppe ma ON m.persknr=ma.persknr LEFT OUTER JOIN |
100 MA_RaumArbGruppe ma ON m.persknr=ma.persknr LEFT OUTER JOIN |
102 RaumArb_Gruppe rag ON ma.rag_ID=rag.rag_ID |
101 RaumArb_Gruppe rag ON ma.rag_ID=rag.rag_ID |
103 WHERE aktiv>0 AND m.abt_tel=7"; |
102 WHERE aktiv>0 AND m.abt_tel=7"; |
104 */ |
103 */ |
105 $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, geb_ID, raum_nr, email FROM v_tel_list"; |
104 // $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, geb_ID, raum_nr, email FROM v_tel_list"; |
106 if ($filter) $wher = " WHERE " . $fieldf[$fnum] . " LIKE " . "'%$filter%'"; else $wher = ""; |
105 // Raum zu Mitarbeiter und nicht zu Telefon |
107 if ($sort == 2) $sort = "2, 3, 5"; |
106 $sql = "SELECT persknr, name, vorname, titel, abt_name, telefon_nr, telefon_typ, public, geb_ID, raum_nr, email FROM v_tel_list_ma_raum"; |
108 if ($sort == 5) $sort = "5, 2, 3"; |
107 if ($filter) |
109 if ($sort) $ord = " ORDER BY $sort, 6"; // immer nach Telefon-Nr als 2. |
108 { |
|
109 if ($fnum > 3) |
|
110 $wher = " WHERE " . $fieldf[$fnum] . " LIKE " . "'%$filter%'"; |
|
111 else |
|
112 $wher = " WHERE " . $fieldf[$fnum] . " LIKE " . "'$filter%'"; |
|
113 } |
|
114 else $wher = ""; |
|
115 |
|
116 if ($sort == 2) $so = "name COLLATE latin1_general_ci $dir, 3, 5"; |
|
117 // if ($sort == 2) $sort = "2, 3, 5"; |
|
118 elseif ($sort == 5) $so = "5 $dir, name COLLATE latin1_general_ci, 3"; |
|
119 // if ($sort == 5) $sort = "5, 2, 3"; |
|
120 else $so = "$sort $dir "; |
|
121 if ($so) $ord = " ORDER BY $so, 6 "; // immer nach Telefon-Nr als 2. |
|
122 |
110 $sql .= $wher . $ord; |
123 $sql .= $wher . $ord; |
111 // echo "sql = $sql<br /><br />"; |
124 // echo "sql = $sql<br /><br />"; |
112 $result = $dbc ->queryObjectArray($sql); |
125 $result = $dbc ->queryObjectArray($sql); |
113 |
126 |
114 if ($result) |
127 if ($result) |
117 $bg2 = "#DEDFE1"; |
130 $bg2 = "#DEDFE1"; |
118 $bg = "#FFFFFF"; |
131 $bg = "#FFFFFF"; |
119 $getp = "&s=$sort&d=$dir&f=$fnum&b=$filter"; // Parameter Listenanzeige |
132 $getp = "&s=$sort&d=$dir&f=$fnum&b=$filter"; // Parameter Listenanzeige |
120 |
133 |
121 echo "<div align='center'>\n"; |
134 echo "<div align='center'>\n"; |
122 echo "<p><b>Mitarbeiter - Telefonliste</b></p>\n"; |
135 echo "<p><b>Mitarbeiter/Objekte - Telefonliste</b></p>\n"; |
123 |
136 |
124 echo "<table border='0' cellspacing='0'>\n"; |
137 echo "<table border='0' cellspacing='0'>\n"; |
125 echo "<tr><td class='bigger'>Mittels '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />' |
138 echo "<tr><td class='bigger'>Mittels '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/auf.gif' border='0' width='11' hight='11' />' / '<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/ab.gif' border='0' width='11' hight='11' />' |
126 können Sie nach bestimmten Spalten auf- bzw. absteigend sortieren</td></tr> |
139 können Sie nach bestimmten Spalten auf- bzw. absteigend sortieren</td></tr> |
127 <tr><td class='bigger'>'<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' ermöglicht das Filtern nach ausgewählten Spalten der Liste</td></tr> |
140 <tr><td class='bigger'>'<img src='http://achilleus.rz-berlin.mpg.de/fhiiqm/img/filter.gif' border='0' width='14' hight='11' />' ermöglicht das Filtern nach ausgewählten Spalten der Liste</td></tr> |
128 <tr><td class='bigger'>Rote Telefon-/Fax-Nummern sind nur intern erreichbar</td></tr>"; |
141 <tr><td class='bigger'>Rote Telefon-/Fax-Nummern sind nur intern erreichbar</td></tr>"; |
129 if ($edit) |
142 if ($edit) |
130 echo "<tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Angaben</tr>"; |
143 echo "<tr><td class='bigger'>Klick auf '<img src='/fhiiqm/img/edit.gif' border='0' width='11' hight='11'>' - Bearbeiten der Angaben</tr>"; |
131 |
144 |
132 echo "</table><br />\n"; |
145 echo "</table>\n"; |
133 |
146 |
|
147 echo "</div><p> <a href=/fhiiqm/ma_tel_pdf.php?e=$edit$getp>PDF erstellen</a></p>\n<div align='center'>\n"; |
134 if (isset($fnum) && $fnum>1 && !$filter && !$subf) |
148 if (isset($fnum) && $fnum>1 && !$filter && !$subf) |
135 { |
149 { |
136 // Formular anzeigen fuer Filterbegriff |
150 // Formular anzeigen fuer Filterbegriff |
137 $text = $fields[$fnum]; |
151 $text = $fields[$fnum]; |
138 $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows |
152 $azeil = array(10=>'10',20=>'20',25=>'25',50=>'50',100=>'100',9999=>'alle'); // Anzahl gezeigter rows |
155 */ |
169 */ |
156 echo "<td><input class=\"button\" type=\"hidden\" value=\"finden\" name=\"subf\" title=\"subf\" /></td></tr></table>\n"; |
170 echo "<td><input class=\"button\" type=\"hidden\" value=\"finden\" name=\"subf\" title=\"subf\" /></td></tr></table>\n"; |
157 echo "</form>\n"; |
171 echo "</form>\n"; |
158 echo "<p> </p>\n"; |
172 echo "<p> </p>\n"; |
159 } |
173 } |
|
174 |
|
175 // Schnellsuche Namen |
|
176 echo "<p>"; |
|
177 for ($j=65; $j<91; $j++) |
|
178 { |
|
179 echo "<a href='". $_SERVER["PHP_SELF"] . "?e=$edit&f=2&b=". chr($j)."' target=\"_self\" title=\"Telefonliste\" class=\"sc\">".chr($j)." </a>"; |
|
180 } |
|
181 echo "</p>\n"; |
160 echo "<table width='55%'>\n"; |
182 echo "<table width='55%'>\n"; |
161 |
183 |
162 if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td></tr>\n"; |
184 if ($filter>'!') echo "<tr><td class='bigger' colspan=6>Filter: ". $fields["$fnum"] . " wie '$filter'</td></tr>\n"; |
163 |
185 |
164 // Listenkopf generieren |
186 // Listenkopf generieren |
165 echo "<tr bgcolor='#68ACBF'>"; |
187 echo "<tr bgcolor='#68ACBF'>"; |
166 tab_column(2,"Name",$sort,$dir,2,$fnum,$filter,$start,$zeil,$edit); |
188 tab_column(2,"Name",$sort,$dir,2,$fnum,$filter,$start,$zeil,$edit); |
167 tab_column(3,"Vorname",$sort,$dir,3,$fnum,$filter,$start,$zeil,$edit); |
189 tab_column(3,"Vorname",$sort,$dir,3,$fnum,$filter,$start,$zeil,$edit); |
168 tab_column(5,"Abteilung",$sort,$dir,5,$fnum,$filter,$start,$zeil,$edit); |
190 tab_column(5,"Abteilung",$sort,$dir,5,$fnum,$filter,$start,$zeil,$edit); |
169 tab_column(6,"Telefon/Fax",$sort,$dir,6,$fnum,$filter,$start,$zeil,$edit); |
|
170 tab_column(9,"Haus",$sort,$dir,9,$fnum,$filter,$start,$zeil,$edit); |
191 tab_column(9,"Haus",$sort,$dir,9,$fnum,$filter,$start,$zeil,$edit); |
171 tab_column(10,"Raum",$sort,$dir,10,$fnum,$filter,$start,$zeil,$edit); |
192 tab_column(10,"Raum",$sort,$dir,10,$fnum,$filter,$start,$zeil,$edit); |
172 if ($edit && !is_null($_SESSION["recht"]) && in_array("fme", $_SESSION["recht"])) |
193 tab_column(6,"Telefon/Fax",$sort,$dir,6,$fnum,$filter,$start,$zeil,$edit); |
|
194 if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"])) |
173 echo "<th> </th>"; |
195 echo "<th> </th>"; |
174 echo "</tr>\n"; |
196 echo "</tr>\n"; |
175 foreach ($result as $row) |
197 foreach ($result as $row) |
176 { |
198 { |
177 if ($row->persknr != $vpnr) |
199 if ($row->persknr != $vpnr) |
183 echo "<td>$row->vorname</td>"; |
205 echo "<td>$row->vorname</td>"; |
184 echo "<td>$row->abt_name</td>"; |
206 echo "<td>$row->abt_name</td>"; |
185 // echo "<td class=\"left\">$row->telnr " . ($row->telefon_typ == 'fax')? ", " . strtoupper($row->telefon_typ) : "" . "</td>"; |
207 // echo "<td class=\"left\">$row->telnr " . ($row->telefon_typ == 'fax')? ", " . strtoupper($row->telefon_typ) : "" . "</td>"; |
186 $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : ""; |
208 $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : ""; |
187 $rot = ($row->public)? "" : " class=\"red\""; |
209 $rot = ($row->public)? "" : " class=\"red\""; |
188 echo "<td$rot>$row->telefon_nr $ttyp</td>"; |
|
189 echo "<td>$row->geb_ID</td>"; |
210 echo "<td>$row->geb_ID</td>"; |
190 echo "<td>$row->raum_nr</td>"; |
211 echo "<td>$row->raum_nr</td>"; |
191 if ($edit && !is_null($_SESSION["recht"]) && in_array("fme", $_SESSION["recht"])) |
212 echo "<td$rot>$row->telefon_nr $ttyp</td>"; |
|
213 if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"])) |
192 echo "<td><a href='/fhiiqm/ma_tel_ed.php?i=$row->persknr$getp'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td>"; |
214 echo "<td><a href='/fhiiqm/ma_tel_ed.php?i=$row->persknr$getp'><img src=\"/fhiiqm/img/edit.gif\" alt='edit' title='edit' border='0'/></a></td>"; |
193 echo "</tr>\n"; |
215 echo "</tr>\n"; |
194 } |
216 } |
195 else |
217 else |
196 { |
218 { |
197 echo "<tr bgcolor='" . $bg . "'><td colspan='3'> </td>"; |
219 if ($vabt != $row->abt_name) $abt = $row->abt_name; |
|
220 else $abt = ' '; |
|
221 echo "<tr bgcolor='" . $bg . "'><td colspan='2'> </td>"; |
198 $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : ""; |
222 $ttyp = ($row->telefon_typ == 'fax')? " " . strtoupper($row->telefon_typ) : ""; |
199 $rot = ($row->public)? "" : " class=\"red\""; |
223 $rot = ($row->public)? "" : " class=\"red\""; |
|
224 echo "<td>$abt</td>"; |
|
225 echo "<td> </td>"; |
|
226 echo "<td> </td>"; |
200 echo "<td$rot>$row->telefon_nr $ttyp</td>"; |
227 echo "<td$rot>$row->telefon_nr $ttyp</td>"; |
201 echo "<td>$row->geb_ID</td>"; |
228 if ($edit && !is_null($_SESSION["recht"]) && in_array("mte", $_SESSION["recht"])) |
202 echo "<td>$row->raum_nr</td>"; |
|
203 if ($edit && !is_null($_SESSION["recht"]) && in_array("fme", $_SESSION["recht"])) |
|
204 echo "<td> </td>"; |
229 echo "<td> </td>"; |
205 echo "</tr>\n"; |
230 echo "</tr>\n"; |
206 } |
231 } |
207 $vpnr = $row->persknr; |
232 $vpnr = $row->persknr; |
|
233 $vabt = $row->abt_name; |
208 } |
234 } |
209 echo "</table></div>\n"; |
235 echo "</table></div>\n"; |
|
236 echo "<p> <a href=/fhiiqm/ma_tel_pdf.php?e=$edit$getp>PDF erstellen</a></p>\n"; |
210 |
237 |
211 } |
238 } |
212 else |
239 else |
213 { |
240 { |
214 echo "<div align=center>"; |
241 echo "<div align=center>"; |
215 if ($dbc -> error) |
242 if ($dbc -> error) |
216 echo "error: " . $dbc -> error . "<br />\n"; |
243 echo "error: " . $dbc -> error . "<br />\n"; |
217 else |
244 else |
218 { |
245 { |
219 echo "<p class='red'> Leider nichts gefunden für ". $fields["$fnum"] . " wie '$filter'!</p><br />"; |
246 echo "<p class='red'> Leider nichts gefunden für ". $fields["$fnum"] . " wie '$filter'!</p><br />"; |
220 echo " <a href=\"" . $_SERVER["PHP_SELF"] . "?$edit\" target=\"_self\" title=\"Telefonliste\" class=\"sc\">Telefonliste</a></p>\n"; |
247 echo " <a href=\"" . $_SERVER["PHP_SELF"] . "?e=$edit\" target=\"_self\" title=\"Telefonliste\" class=\"sc\">Telefonliste</a></p>\n"; |
221 } |
248 } |
222 echo "</div>"; |
249 echo "</div>"; |
223 } |
250 } |
224 |
251 |
225 ?> |
252 ?> |