|
1 <?php |
|
2 |
|
3 /** |
|
4 * @author Bettina Schwarzer, Fritz-Haber-Institut |
|
5 * @copyright 11/2012 |
|
6 * |
|
7 * Edit Telefon |
|
8 */ |
|
9 |
|
10 error_reporting(E_ALL ^ E_NOTICE); |
|
11 |
|
12 session_start(); |
|
13 if (! isset($_SESSION["userid"])) |
|
14 { |
|
15 include_once ("inc/func_lib.inc.php"); |
|
16 login($_SERVER["PHP_SELF"]); |
|
17 exit; |
|
18 } |
|
19 |
|
20 if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("fmr",$_SESSION["recht"]) && !in_array("fme",$_SESSION["recht"]))) |
|
21 { |
|
22 header("Location: start.php"); |
|
23 exit; |
|
24 } |
|
25 |
|
26 include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php"); |
|
27 if (!isset($dbc) || !$dbc) $dbc = new dbconnection(); |
|
28 |
|
29 $sub = $_POST["eintragen"]; |
|
30 $del = $_POST["del"]; |
|
31 $tf = $_POST["tf"]; |
|
32 $okn = $_POST["okn"]; |
|
33 $ok = $_POST["ok"]; |
|
34 if (!$okn) $ok=0; |
|
35 $tid = urldecode($_GET["i"]); // Telefon |
|
36 |
|
37 $sort = $_GET["s"]; // Sortierung nach Spalte |
|
38 $dir = $_GET["d"]; // Sortierrichtung |
|
39 $fnum = $_GET["f"]; // Spaltennummer, nach der aktuell gefiltert wird |
|
40 $filter = $_GET["b"]; // Filterbegriff |
|
41 $zeil = $_GET["z"]; // Anzahl der gezeigten Zeilen |
|
42 $start = $_GET["st"]; // Start bei DS $start+1 |
|
43 $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil"; // Parameter Listenanzeige |
|
44 |
|
45 // print_r ($tf); echo ", i= $tid<br />sub = $sub<br /><br />"; |
|
46 |
|
47 ?> |
|
48 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
|
49 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> |
|
50 |
|
51 <head> |
|
52 <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> |
|
53 <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/> |
|
54 <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/> |
|
55 <title>Telefon bearbeiten</title> |
|
56 |
|
57 </head> |
|
58 |
|
59 <body> |
|
60 |
|
61 <?php |
|
62 echo " "; |
|
63 echo "<div class=\"float-br smaller\" valign='top'>"; |
|
64 echo " user: " . $_SESSION["userid"]; |
|
65 echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n"; |
|
66 echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Mitarbeiter bearbeiten\" title=\"Mitarbeiter bearbeiten\"/></div>\n"; |
|
67 |
|
68 if ($tid) $text = "editieren"; else $text = "erfassen"; |
|
69 echo "<div align=\"center\">"; |
|
70 echo "<h3>Telefon $text</h3>"; |
|
71 echo "</div>\n"; |
|
72 if ((!$sub && !$del) || !$ok) |
|
73 { |
|
74 |
|
75 if ($tid && (!$sub || !$del) && !isset($tf)) |
|
76 { |
|
77 $sql = "SELECT telefon_nr, telefon_typ, raum_ID FROM Telefon WHERE telefon_nr='$tid'"; |
|
78 if ($result = $dbc -> queryObjectArray($sql)) |
|
79 { |
|
80 foreach ($result as $row) |
|
81 { |
|
82 $tf['tel'] = $row->telefon_nr; |
|
83 $tf['typ'] = $row->telefon_typ; |
|
84 $tf['raum'] = $row->raum_ID; |
|
85 } |
|
86 } |
|
87 // Haus |
|
88 if ($tf['raum']) |
|
89 { |
|
90 $sql = "SELECT geb_ID FROM Raum |
|
91 WHERE raum_ID = " . $tf['raum']; |
|
92 $tf['geb'] = $dbc -> querySingleItem($sql); |
|
93 } |
|
94 } |
|
95 $okn = true; |
|
96 if (!$tf) $tf['geb'] = 'A'; |
|
97 ?> |
|
98 <div align="center"> |
|
99 <h5>* - Felder sind erforderlich!</h5> |
|
100 </div> |
|
101 <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_ma"> |
|
102 <div align="center"> |
|
103 <table width="60%" border="0" cellspacing="3" cellpadding="3"> |
|
104 <tr> |
|
105 <td>Telefon *</td> |
|
106 <td><input name="tf[tel]" type="text" size="30" maxlength="30" value="<?php echo $tf['tel']; ?>" /> |
|
107 <?php |
|
108 if (isset($tf['tel']) && $tf['tel']<'!') |
|
109 { |
|
110 echo "<br><span class=\"red\">Telefon-Nummer ist erforderlich!</span>\n"; |
|
111 $okn = false; |
|
112 } |
|
113 ?> |
|
114 </td> |
|
115 </tr> |
|
116 <tr> |
|
117 <td>Telefontyp *</td> |
|
118 <td><select name="tf[typ]"> |
|
119 <?php |
|
120 $sql = "SHOW COLUMNS FROM Telefon WHERE Field = 'telefon_typ'"; |
|
121 if ($result = $dbc->queryRow($sql)) |
|
122 { |
|
123 foreach ($result as $row) |
|
124 $arr=explode("','",preg_replace("/(enum|set)\('(.+?)'\)/","\\2",$row[1])); |
|
125 foreach ($arr as $typ) |
|
126 { |
|
127 if ($typ == $tf["typ"]) |
|
128 echo "<option selected value=\"$typ\">$typ</option>\n"; |
|
129 else |
|
130 echo "<option value=\"$typ\">$typ</option>\n"; |
|
131 } |
|
132 } |
|
133 ?> |
|
134 </select> |
|
135 </td> |
|
136 </tr> |
|
137 <tr><td>Ort</td> |
|
138 <td valign="top">Haus |
|
139 <select name="tf[geb]" onchange="this.form.submit();"> |
|
140 <?php |
|
141 if ($tf['geb'] == -1) $select = " selected "; else $select = ""; |
|
142 echo "<option $select value=\"-1\"></option>\n"; |
|
143 $sql = "SELECT geb_ID, geb_name FROM `fhiiqm`.`Haus` ORDER BY 1"; |
|
144 if ($result = $dbc->queryObjectArray($sql)) |
|
145 { |
|
146 foreach ($result as $row) |
|
147 { |
|
148 if ($row->geb_ID == $tf['geb']) |
|
149 echo "<option selected value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n"; |
|
150 else |
|
151 echo "<option value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n"; |
|
152 } |
|
153 } |
|
154 ?> |
|
155 </select> |
|
156 Raum |
|
157 <select name="tf[raum]"> |
|
158 <?php |
|
159 if ($tf['raum'] == -1) $select = " selected "; else $select = ""; |
|
160 echo "<option $select value=\"-1\"></option>\n"; |
|
161 $sql = "SELECT raum_ID, raum_nr, raum_name FROM `fhiiqm`.`Raum` WHERE geb_ID='" . $tf['geb'] ."' ORDER BY 2"; |
|
162 if ($result = $dbc->queryObjectArray($sql)) |
|
163 { |
|
164 foreach ($result as $row) |
|
165 { |
|
166 if ($row->raum_ID == $tf['raum']) |
|
167 echo "<option selected value=\"$row->raum_ID\">$row->raum_nr $row->raum_name</option>\n"; |
|
168 else |
|
169 echo "<option value=\"$row->raum_ID\">$row->raum_nr $row->raum_name</option>\n"; |
|
170 } |
|
171 } |
|
172 ?> |
|
173 </select> |
|
174 </td> |
|
175 </tr> |
|
176 <input type="hidden" name="okn" value="<?php echo $okn; ?>" /> |
|
177 |
|
178 <?php |
|
179 if ($sub || $del) |
|
180 { |
|
181 if ($sub) |
|
182 $frage = "Alle Angaben ok?"; |
|
183 elseif ($del) |
|
184 $frage = "Telefon wirklich löschen?"; |
|
185 echo "<tr> |
|
186 <td class=\"red\" valign=\"top\" align=\"left\">$frage</td> |
|
187 <td><input type=\"checkbox\" name=\"ok\" value=\"1\""; |
|
188 if ($ok) echo "checked=\"checked\""; |
|
189 echo " /></td>\n</tr>\n"; |
|
190 } |
|
191 if (!is_null($_SESSION["recht"]) && in_array("fme",$_SESSION["recht"])) |
|
192 { |
|
193 echo " |
|
194 <tr><td> </td>\n |
|
195 <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />"; |
|
196 if ($tid) |
|
197 { |
|
198 echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />"; |
|
199 // echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />"; |
|
200 } |
|
201 echo "</td></tr>\n"; |
|
202 } |
|
203 echo "</table>\n"; |
|
204 echo "</div>\n"; |
|
205 echo "<p class='sc'> <a href=\"tel_flist.php?$getp\" target=\"_self\" title=\"Telefon-Liste\">« zur Telefon-Liste</a></p>\n"; |
|
206 echo "</form>\n"; |
|
207 } |
|
208 else |
|
209 { |
|
210 echo "<div align='center'>\n"; |
|
211 |
|
212 if ($del) |
|
213 { // Telefon-Nr. auch in MA_Telefon loeschen |
|
214 $sql = "DELETE FROM Telefon WHERE telefon_nr ='$tid'"; |
|
215 $retdi = $dbc -> execute($sql); |
|
216 if ($retdi) |
|
217 { |
|
218 echo "<p class='green'><b>DELETE: TelefonNr. '".$tf["tel"] ."' wurde erfolgreich gelöscht (auch die Mitarbeiterzuordnung).</b></p>\n"; |
|
219 } |
|
220 else |
|
221 { |
|
222 echo "<p class='red'><b>DELETE: TelefonNr. '".$tf["tel"] ."' konnte nicht gelöscht werden!</b></p>\n"; |
|
223 echo "sql = $sql<br />"; |
|
224 echo "error DELETE: " . $dbc->error . "<br />"; |
|
225 } |
|
226 include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/tel_dat_show.inc.php"); |
|
227 } |
|
228 else //INSERT oder UPDATE |
|
229 { |
|
230 $stmt = $dbc -> stmtinit(); |
|
231 if (is_object($stmt)) |
|
232 { |
|
233 if ($tf["raum"] == "-1") $tf["raum"] = 'NULL'; |
|
234 if ($tid) //UPDATE |
|
235 { |
|
236 $stmt -> prepare("UPDATE Telefon SET |
|
237 telefon_nr = ?, |
|
238 telefon_typ = ?, |
|
239 raum_ID = ? |
|
240 WHERE telefon_nr = '$tid'"); |
|
241 $stmt -> bind_param('sss',$tf["tel"],$tf["typ"],$tf["raum"]); |
|
242 $result = $stmt -> execute(); |
|
243 if ($stmt->error) echo "error UPDATE Telefon: " . $stmt->error . "<br><br>\n"; |
|
244 } |
|
245 else |
|
246 { |
|
247 $stmt -> prepare("INSERT INTO Telefon (telefon_nr, telefon_typ, raum_ID) VALUES (?,?,?)"); |
|
248 $stmt -> bind_param('sss',$tf["tel"],$tf["typ"],$tf["raum"]); |
|
249 $result = $stmt -> execute(); |
|
250 if ($stmt->error) echo "error INSERT Telefon: " . $stmt->error . "<br><br>\n"; |
|
251 } |
|
252 } |
|
253 if ($result) // INSERT/UPDATE Telefon |
|
254 { |
|
255 //Eingabe Daten erfolgreich |
|
256 echo "<p class='green'><b>Telefondaten zu '" . $tf['tel']. "' wurden erfolgreich gespeichert.</b></p>\n"; |
|
257 echo "<br /><br />\n"; |
|
258 } |
|
259 else |
|
260 { |
|
261 echo "<p class='red'><b>Telefondaten zu '" . $tf['tel']. "' wurden nicht gespeichert.</b></p>\n"; |
|
262 echo "error: ". $dbc -> error; |
|
263 echo "<br /><br />\n"; |
|
264 } |
|
265 include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/tel_dat_show.inc.php"); |
|
266 } |
|
267 echo "</div>"; |
|
268 echo "<p class='sc'> <a href=\"tel_flist.php?$getp\" target=\"_self\" title=\"Telefonliste\">Telefonliste</a></p>\n"; |
|
269 echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Telefon erfassen\">Neue Telefon-Nummer erfassen</a></p>\n"; |
|
270 } |
|
271 ?> |