|
1 <?php |
|
2 |
|
3 /** |
|
4 * @author Bettina Schwarzer, Fritz-Haber-Institut |
|
5 * @copyright 07/2014 |
|
6 * |
|
7 * Arbeitsgruppe INSERT/UPDATE DELETE COPY |
|
8 */ |
|
9 |
|
10 |
|
11 error_reporting(E_ALL ^ E_NOTICE); |
|
12 |
|
13 session_start(); |
|
14 if (! isset($_SESSION["userid"])) |
|
15 { |
|
16 include_once ("inc/func_lib.inc.php"); |
|
17 login($_SERVER["PHP_SELF"]); |
|
18 exit; |
|
19 } |
|
20 |
|
21 if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("pr",$_SESSION["recht"]) && !in_array("pe",$_SESSION["recht"]))) |
|
22 { |
|
23 header("Location: start.php"); |
|
24 exit; |
|
25 } |
|
26 |
|
27 include_once($_SERVER["DOCUMENT_ROOT"]."/fhiiqm/inc/dbconnect.inc.php"); |
|
28 include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php"); |
|
29 if (!isset($dbc) || !$dbc) $dbc = new dbconnection(); |
|
30 |
|
31 $ragid = $_GET["i"]; |
|
32 |
|
33 $zeil = $_GET["z"]; |
|
34 if (!$zeil) $zeil = 25; // Anzahl der gezeigten Zeilen |
|
35 $start = $_GET["st"]; // Start bei DS $start+1 |
|
36 if (!$start) $start=0; |
|
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 // $_GET-Parameter zurück zur Infoliste mit den selben Einstellungen wie zuvor |
|
42 $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil"; |
|
43 |
|
44 $del = $_POST["del"]; |
|
45 $sub = $_POST["eintragen"]; |
|
46 $dup = $_POST["dup"]; |
|
47 if (!$dup) $dup = $_GET["dp"]; |
|
48 $copy = $_GET["c"]; |
|
49 $rag = $_POST["rag"]; |
|
50 $ok = $_POST["ok"]; |
|
51 if (!$rag["okn"]) $ok = false; |
|
52 $duptext=""; |
|
53 if ($dup) |
|
54 { // Info duplizieren |
|
55 $tab = "RaumArb_Gruppe"; |
|
56 $key = "rag_ID"; |
|
57 $val = $ragid; |
|
58 // $ret=1; |
|
59 $ret = duplicate_record ($tab, $key, $val); |
|
60 if ($ret) |
|
61 { |
|
62 $ragid_new = $ret; |
|
63 $addr = $_SERVER["PHP_SELF"] . "?i=$ragid_new&c=1&$getp"; |
|
64 header("Location: $addr"); |
|
65 exit; |
|
66 } |
|
67 else $duptext = " - Fehler beim Duplizieren von ". $rag["rbez"]; |
|
68 } |
|
69 ?> |
|
70 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
|
71 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> |
|
72 |
|
73 <head> |
|
74 <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> |
|
75 <link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/> |
|
76 <link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/> |
|
77 |
|
78 <title>Edit Arbeitsgruppe</title> |
|
79 </head> |
|
80 |
|
81 <body> |
|
82 |
|
83 <?php |
|
84 echo " "; |
|
85 echo "<div class=\"float-br smaller\" valign='top'>"; |
|
86 echo " user: " . $_SESSION["userid"]; |
|
87 echo " <a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n"; |
|
88 echo "<div class=\"float-r\"><img src=\"/fhiiqm/img/reseller_programm.png\" border=\"0\" alt=\"Arbeitsgruppe ändern\" title=\"Arbeitsgruppe ändern\"/></div>\n"; |
|
89 |
|
90 |
|
91 echo "<div align='center'>"; |
|
92 if ($ragid) $text = "editieren"; else $text = "erfassen"; |
|
93 if ($copy) $duptext = " (Kopie)"; |
|
94 echo "<h3>Arbeitsgruppe $text$duptext<h3>"; |
|
95 |
|
96 echo "</div>\n"; |
|
97 if (!$ok || (!$sub && !$del && !$dup)) |
|
98 { |
|
99 if ($ragid && (!$sub || !$del) && !isset($rag)) |
|
100 { // update |
|
101 $sql = "SELECT rag_bez, rag_bezk, abt_ID FROM RaumArb_Gruppe WHERE rag_ID = $ragid"; |
|
102 if ($result = $dbc -> queryObjectArray($sql)) |
|
103 { |
|
104 foreach ($result as $row) |
|
105 { |
|
106 $rag["ragid"] = $ragid; |
|
107 $rag["ragbez"] = $row->rag_bez; |
|
108 $rag["ragbezk"] = $row->rag_bezk; |
|
109 $rag["abt"] = $row->abt_ID; |
|
110 } |
|
111 } |
|
112 } |
|
113 ?> |
|
114 <div align="center"> |
|
115 <h5>* - Felder sind erforderlich!</h5> |
|
116 </div> |
|
117 <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_ma"> |
|
118 <div align="center"> |
|
119 <table width="65%" border="0" cellspacing="3" cellpadding="3"> |
|
120 <tr><td>Abteilung *</td> |
|
121 <td valign="top"> |
|
122 <select name="rag[abt]" onchange="this.form.submit();"> |
|
123 <?php |
|
124 $okn = true; |
|
125 $sql = "SELECT abt_ID, abt_name, abt_long FROM `fhiiqm`.`Abteilung` ORDER BY abt_ID+0"; |
|
126 if ($result = $dbc->queryObjectArray($sql)) |
|
127 { |
|
128 foreach ($result as $row) |
|
129 { |
|
130 if ($row->abt_ID == $rag['abt']) |
|
131 echo "<option selected='selected' value=\"$row->abt_ID\">$row->abt_name: $row->abt_long</option>\n"; |
|
132 else |
|
133 echo "<option value=\"$row->abt_ID\">$row->abt_name: $row->abt_long</option>\n"; |
|
134 } |
|
135 } |
|
136 ?> |
|
137 </select> |
|
138 </td> |
|
139 </tr> |
|
140 <tr><td>Arbeitsgruppe *</td>; |
|
141 <td><input name="rag[ragbez]" type="text" size="50" maxlength="100" value="<?php echo $rag['ragbez']; ?>" /> |
|
142 <?php |
|
143 if (isset($rag["ragbez"]) && $rag["ragbez"] < "!") |
|
144 { |
|
145 echo "<br><span class=\"red\">AG-Bezeichnung ist erforderlich!</span>\n"; |
|
146 $okn = false; |
|
147 } |
|
148 ?> |
|
149 </td> |
|
150 </tr> |
|
151 <tr><td>Arbeitsgruppe kurz</td>; |
|
152 <td><input name="rag[ragbezk]" type="text" size="10" maxlength="10" value="<?php echo $rag['ragbezk']; ?>" /> |
|
153 </td> |
|
154 </tr> |
|
155 <input type="hidden" name="rag[okn]" value="<?php echo $okn; ?>" /> |
|
156 <input type="hidden" name="rag[ragid]" value="<?php echo $ragid; ?>" /> |
|
157 <?php |
|
158 if ($sub || $del) |
|
159 { |
|
160 if ($sub) |
|
161 $frage = "Alle Angaben ok?"; |
|
162 elseif ($del) |
|
163 $frage = "Arbeitsgruppe wirklich löschen?"; |
|
164 echo "<tr> |
|
165 <td class=\"red\" valign=\"top\" align=\"left\">$frage</td> |
|
166 <td><input type=\"checkbox\" name=\"ok\" value=\"1\""; |
|
167 if ($ok) echo "checked=\"checked\""; |
|
168 echo " /></td>\n</tr>\n"; |
|
169 } |
|
170 if (!is_null($_SESSION["recht"]) && in_array("pe",$_SESSION["recht"])) |
|
171 { |
|
172 echo " |
|
173 <tr><td> </td>\n |
|
174 <td><input class=\"button\" type=\"submit\" name=\"eintragen\" value=\" eintragen \" />"; |
|
175 if ($ragid) |
|
176 { |
|
177 echo " <input class=\"buttonr\" type=\"submit\" value=\"löschen\" name=\"del\" title=\"delete\" />"; |
|
178 echo " <input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />"; |
|
179 } |
|
180 echo "</td></tr>\n"; |
|
181 } |
|
182 echo "</table>\n"; |
|
183 echo "</div>\n"; |
|
184 echo "<p class='sc'> <a href=\"rag_flist.php?$getp\" target=\"_self\" title=\"AG-Liste\">« zur AG-Liste</a></p>\n"; |
|
185 echo "</form>\n"; |
|
186 } |
|
187 else |
|
188 { |
|
189 echo "<div align='center'>\n"; |
|
190 |
|
191 if ($del) |
|
192 { // loeschn |
|
193 $sql = "DELETE FROM RaumArb_Gruppe WHERE rag_ID = '$ragid'"; |
|
194 $retdi = $dbc -> execute($sql); |
|
195 if ($retdi) |
|
196 { |
|
197 // Anzeigen geloeschter Infodaten |
|
198 echo "<p class='green'><b>DELETE: Daten zu '".$rag["ragbez"]."' wurden erfolgreich gelöscht.</b></p>\n"; |
|
199 } |
|
200 else |
|
201 { |
|
202 echo "<p class='red'><b>DELETE: Daten zu '".$rag["ragbez"]."' konnten nicht gelöscht werden!</b></p>\n"; |
|
203 echo "sql = $sql<br />"; |
|
204 echo "error DELETE: " . $dbc->error . "<br />"; |
|
205 } |
|
206 } |
|
207 else //INSERT oder UPDATE |
|
208 { |
|
209 //daten speichern |
|
210 $rag["ragbez"] = substr($rag["ragbez"],0,100); |
|
211 $rag["ragbezk"] = substr($rag["ragbezk"],0,10); |
|
212 if ($rag["ragbezk"] < "!") $rag["ragbezk"] = null; |
|
213 if (!isset($dbc) || !$dbc) $dbc = new dbconnection(); |
|
214 |
|
215 $stmt = $dbc -> stmtinit(); |
|
216 if (is_object($stmt)) |
|
217 { |
|
218 if ($ragid) |
|
219 { //UPDATE |
|
220 |
|
221 $stmt -> prepare("UPDATE fhiiqm.RaumArb_Gruppe SET |
|
222 rag_bez = ?, |
|
223 rag_bezk = ?, |
|
224 abt_ID = ? |
|
225 WHERE rag_ID = ?"); |
|
226 $stmt -> bind_param('ssii',$rag["ragbez"],$rag["ragbezk"],$rag["abt"],$ragid); |
|
227 $result = $stmt -> execute(); |
|
228 if ($stmt->error) echo "error UPDATE AG: " . $stmt->error . "<br><br>\n"; |
|
229 } |
|
230 else |
|
231 { //INSERT |
|
232 $stmt -> prepare ("INSERT INTO RaumArb_Gruppe (rag_bez,rag_bezk,abt_ID) VALUES(?,?,?)"); |
|
233 $stmt -> bind_param('ssi',$rag["ragbez"],$rag["ragbezk"],$rag["abt"]); |
|
234 $result = $stmt -> execute(); |
|
235 if ($stmt->error) echo "error INSERT AG: " . $stmt->error . "<br><br>\n"; |
|
236 else |
|
237 {// rag_ID ermitteln |
|
238 $ragid = $dbc -> insertId(); |
|
239 } |
|
240 } |
|
241 } |
|
242 if ($result) // INSERT/UPDATE Info |
|
243 { |
|
244 //Eingabe Daten erfolgreich |
|
245 echo "<p class='green'><b>AG '".$rag["ragbez"]."' wurde erfolgreich gespeichert.</b></p>\n"; |
|
246 echo "<br /><br />\n"; |
|
247 } |
|
248 } |
|
249 echo "</div>"; |
|
250 echo "<p class='sc'> <a href=\"rag_flist.php?$getp\" target=\"_self\" title=\"AG-Liste\">AG-Liste</a></p>\n"; |
|
251 echo "<p class='sc'> <a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"AG erfassen\">Weitere AG erfassen</a></p>\n"; |
|
252 } |
|
253 |
|
254 ?> |
|
255 </body> |
|
256 </html> |