1 |
<? |
2 |
|
3 |
include("inc/head.inc"); |
4 |
|
5 |
function check_required() { |
6 |
global $warn,$ime,$prezime,$sifra,$tel,$zap_plive; |
7 |
$warn=""; |
8 |
if (! isset($ime) || $ime=="") { |
9 |
$warn.="<li>ime osobe"; |
10 |
} |
11 |
if (! isset($prezime) || $prezime=="") { |
12 |
$warn.="<li>prezime osobe"; |
13 |
} |
14 |
if ((! isset($sifra) || $sifra=="" || $sifra==0) && $zap_plive=="t") { |
15 |
$warn.="<li>¹ifra radnika"; |
16 |
} |
17 |
if (! isset($tel) || $tel=="") { |
18 |
$warn.="<li>telefon na koji se mo¾e dobiti osoba"; |
19 |
} |
20 |
if ($warn=="") { |
21 |
return 1; |
22 |
} else { |
23 |
$warn="Nedostaju slijedeæi obavezni podaci:<ul>$warn</ul>"; |
24 |
return 0; |
25 |
} |
26 |
$ime=trim($ime); |
27 |
$prezime=trim($prezime); |
28 |
$sifra=trim($sifra); |
29 |
$soba=trim($soba); |
30 |
$tel=trim($tel); |
31 |
} |
32 |
|
33 |
|
34 |
|
35 |
if (isset($kontakt_osoba_id)) { |
36 |
$result = pg_Exec ($conn, "select ime,prezime,passwd from kontakt_osobe where aktivna=true and id=$kontakt_osoba_id"); |
37 |
$row=pg_fetch_array($result,0); |
38 |
# print "--$row[passwd] | $md5_passwd | $passwd "; |
39 |
print "<small>Trenutno ste prijavljeni kao $row[ime] $row[prezime], ako je to krivo odaberite <a href=\"$PHP_SELF?what=relogin\">ovaj link</a>.</small>"; |
40 |
$curr_md5_passwd=base64_encode(mhash(MHASH_MD5,$row[passwd])); |
41 |
if ( (!isset($md5_passwd) && $row[passwd] != $passwd) || |
42 |
(isset($md5_passwd) && $curr_md5_passwd != $md5_passwd) ) { |
43 |
include("inc/auth.inc"); |
44 |
$what="auth"; |
45 |
echo "<big>Upisana je neispravna loznika!</big>"; |
46 |
session_destroy(); |
47 |
print '<p><a href="index.php">Povratak na poèetnu stranicu</a>'; |
48 |
} else { |
49 |
session_register("md5_passwd"); |
50 |
$md5_passwd=base64_encode(mhash(MHASH_MD5,$row[passwd])); |
51 |
} |
52 |
} |
53 |
|
54 |
if (! isset($kontakt_osoba_id)) { |
55 |
include("inc/auth.inc"); |
56 |
$what="auth"; |
57 |
|
58 |
} elseif (isset($lookup) && isset($sifra)) { |
59 |
|
60 |
$warn="<i>Polja oznaèena zvjezdicom (*) su obavezna</i>"; |
61 |
$conn_mreze = pg_connect("dbname=mreze user=dpavlin"); |
62 |
$result=pg_Exec($conn_mreze,"select ime,prezime from iso_korisnik where sifra=$sifra"); |
63 |
if ($result && pg_numrows($result)>0) { |
64 |
$row=pg_fetch_array($result,0); |
65 |
$ime=$row[ime]; |
66 |
$prezime=$row[prezime]; |
67 |
} else { |
68 |
$warn.="<br><b>Osoba sa ¹ifrom $sifra nije pronaðena!</b>"; |
69 |
$sifra=""; $ime=""; $prezime=""; |
70 |
} |
71 |
# $what="insert-osoba"; |
72 |
|
73 |
} elseif ($what == "insert-osoba" && check_required()) { |
74 |
$result=pg_Exec($conn,"select id,ime,prezime from osobe where sifra='$sifra'"); |
75 |
if (pg_numrows($result) > 0) { |
76 |
$row=pg_fetch_array($result,0); |
77 |
$warn.="<p><big>Va¹ podatakak nije une¹en zbog duple ¹ifre radnika!</big> |
78 |
<p>Osoba sa ¹ifrom $sifra veæ postoji. Prema |
79 |
na¹im podacima to je $row[ime] $row[prezime] i unesena |
80 |
je na zahtjevu broj $row[id]. Ako ste pogrije¹ili |
81 |
u broju ¹ifre unesite ga ponovo!"; |
82 |
} else { |
83 |
|
84 |
$org_jed_id=trim($nad_select); |
85 |
$tmp=explode(" ",$pod_select); |
86 |
$org_pod_jed_id=$tmp[1]; |
87 |
if ($org_jed_id != $tmp[0]) { $warn.="<p>Gre¹ka u konzistentnosti podataka o organizacijskoj jedinici!"; } |
88 |
if (! isset($org_pod_jed_id) || $org_pod_jed_id=="" ) { $warn.="<p>Gre¹ka u podacima o organizacijskoj pod jedinici!"; $org_pod_jed_id=0; } |
89 |
$sql="insert into osobe |
90 |
(ime,prezime,zap_plive,sifra, |
91 |
org_jed_id,org_pod_jed_id,lokacija_id, |
92 |
objekt,kat,soba,tel,shell, |
93 |
lok_racunala,z_rac,podesavanje,umrezavanje, |
94 |
datum_unesen,kontakt_osoba_id) |
95 |
values |
96 |
('$ime','$prezime','$zap_plive','$sifra', |
97 |
$org_jed_id,$org_pod_jed_id,$lokacija_id, |
98 |
'$objekt','$kat','$soba','$tel','$shell', |
99 |
'$lok_racunala','$z_rac','$podesavanje','$umrezavanje', |
100 |
'now'::datetime,$kontakt_osoba_id) |
101 |
"; |
102 |
# echo "<pre>$sql</pre>"; |
103 |
$result=pg_Exec($conn,"$sql"); |
104 |
|
105 |
$oid=pg_GetLastOid($result); |
106 |
$result=pg_Exec($conn,"select id from osobe where oid=$oid"); |
107 |
$row=pg_fetch_array($result,0); |
108 |
$id=$row[id]; |
109 |
|
110 |
$result=pg_Exec($conn,"insert into status (osoba_id,kontakt_osoba_id,datum,status_tip_id) values ($id,$kontakt_osoba_id,'now'::datetime,1)"); |
111 |
|
112 |
$what="update-osoba"; |
113 |
|
114 |
$warn="Va¹ zahtjev je une¹en. Ako ste napravili pogre¹ku |
115 |
mo¾ete je ispraviti na ovoj stranici."; |
116 |
|
117 |
$prev_button='<a href="index.php">Poèetna stranica</a>'; |
118 |
|
119 |
$warn.='<p>Mo¾ete se vratiti na |
120 |
<a href="lista.php">listu otvorenih zahtjeva</a>, |
121 |
<a href="index.php">poèetnu stranicu</a> ili |
122 |
unijeti <a href="osoba.php?kontakt_osoba_id='.$kontakt_osoba_id.'">podatke o novoj osobi</a>.'; |
123 |
|
124 |
} // sifra postoji? |
125 |
|
126 |
|
127 |
} elseif ($what == "select-osoba" && isset($id)) { |
128 |
|
129 |
$sql="select |
130 |
ime,prezime,zap_plive,sifra, |
131 |
org_jed_id,org_pod_jed_id,lokacija_id, |
132 |
objekt,kat,soba,tel,shell, |
133 |
lok_racunala,z_rac,podesavanje,umrezavanje, |
134 |
datum_unesen,kontakt_osoba_id |
135 |
from osobe |
136 |
where id=$id"; |
137 |
# echo "<pre>$sql</pre>"; |
138 |
$result=pg_Exec($conn,"$sql"); |
139 |
$row=pg_fetch_array($result,0); |
140 |
|
141 |
$ime=$row[ime]; |
142 |
$prezime=$row[prezime]; |
143 |
$zap_plive=$row[zap_plive]; |
144 |
$sifra=$row[sifra]; |
145 |
$nad_select=$row[org_jed_id]; |
146 |
$pod_select="$row[org_jed_id] $row[org_pod_jed_id]"; |
147 |
$lokacija_id=$row[lokacija_id]; |
148 |
$objekt=$row[objekt]; |
149 |
$kat=$row[kat]; $soba=$row[soba]; |
150 |
$tel=$row[tel]; $shell=$row[shell]; |
151 |
$lok_racunala=$row[lok_racunala]; |
152 |
$z_rac=$row[z_rac]; |
153 |
$podesavanje=$row[podesavanje]; |
154 |
$umrezavanje=$row[umrezavanje]; |
155 |
|
156 |
$what="update-osoba"; |
157 |
$warn="Ovdje mo¾ete mijenjati podatke o osobi"; |
158 |
$prev_button='<a href="index.php">Poèetna stranica</a>'; |
159 |
|
160 |
} elseif ($what == "update-osoba" && check_required()) { |
161 |
$org_jed_id=trim($nad_select); |
162 |
$tmp=explode(" ",$pod_select); |
163 |
$org_pod_jed_id=$tmp[1]; |
164 |
|
165 |
# echo "--$pod_select|$org_pod_jed_id|$tmp[0]|$tmp[1]"; |
166 |
|
167 |
if ($org_jed_id != $tmp[0]) { $warn.="<p>Gre¹ka u konzistentnosti podataka o organizacijskoj jedinici!"; } |
168 |
if (! isset($org_pod_jed_id) || $org_pod_jed_id=="" ) { $warn.="<p>Gre¹ka u podacima o organizacijskoj pod jedinici!"; $org_pod_jed_id=0; |
169 |
|
170 |
|
171 |
} |
172 |
$sql="update osobe set |
173 |
ime='$ime',prezime='$prezime',zap_plive='$zap_plive', |
174 |
sifra='$sifra', org_jed_id=$org_jed_id, |
175 |
org_pod_jed_id=$org_pod_jed_id, |
176 |
lokacija_id=$lokacija_id, |
177 |
objekt='$objekt', kat='$kat', soba='$soba', |
178 |
lok_racunala='$lok_racunala', |
179 |
z_rac='$z_rac', |
180 |
podesavanje='$podesavanje', |
181 |
umrezavanje='$umrezavanje', |
182 |
tel='$tel', shell='$shell' |
183 |
where id=$id"; |
184 |
# echo "<pre>$sql</pre>"; |
185 |
$result=pg_Exec($conn,"$sql"); |
186 |
if ($result) { |
187 |
$warn.="<p>Podaci su promjenjeni..."; |
188 |
$result=pg_Exec($conn,"insert into status (osoba_id,kontakt_osoba_id,datum,status_tip_id) values ($id,$kontakt_osoba_id,'now'::datetime,2)"); |
189 |
|
190 |
} else { |
191 |
$warn.="<p>Gre¹ka kod mijenjanja podataka"; |
192 |
} |
193 |
|
194 |
$warn.='<p>Mo¾ete se vratiti na |
195 |
<a href="lista.php">listu otvorenih zahtjeva</a>, |
196 |
<a href="index.php">poèetnu stranicu</a> ili |
197 |
unijeti <a href="osoba.php?kontakt_osoba_id='.$kontakt_osoba_id.'">podatke o novoj osobi</a>.'; |
198 |
|
199 |
|
200 |
} elseif (! isset($what)) { |
201 |
|
202 |
$what="insert-osoba"; |
203 |
$warn="<i>Polja oznaèena zvjezdicom (*) su obavezna</i>"; |
204 |
$prev_button='<a href="index.php">Poèetna stranica</a>'; |
205 |
} |
206 |
|
207 |
if ($what=="insert-osoba" || $what=="update-osoba") { |
208 |
|
209 |
?> |
210 |
|
211 |
<h1>Podaci o osobi</h1> |
212 |
<form method="post" action="<? echo $PHP_SELF ?>" name="forma"> |
213 |
<input type="hidden" name="what" value="<? echo $what ?>"> |
214 |
<input type="hidden" name="kontakt_osoba_id" value="<? echo $kontakt_osoba_id ?>"> |
215 |
<input type="hidden" name="md5_passwd" value="<? echo $md5_passwd ?>"> |
216 |
<? if (isset($id)) { echo '<input type="hidden" name="id" value="'.$id.'">'; } ?> |
217 |
<table border="0" cellpadding="3" cellspacing="0"> |
218 |
<? if (isset($warn)) { echo ' |
219 |
<tr bgcolor="#ffe0e0"><td colspan="5"> <div align="left">'.$warn.'</div> |
220 |
</td></tr> |
221 |
'; } ?> |
222 |
<tr> |
223 |
<td> |
224 |
<p>Zaposlenik<br> |
225 |
Pliva d.d.</p> |
226 |
</td> |
227 |
<td> |
228 |
<? |
229 |
function radio($name,$value,$current,$default) { |
230 |
// echo "<tt>$name|$value|$current|$default|</tt>"; |
231 |
echo "<input type=\"radio\" name=\"$name\" value=\"$value\""; |
232 |
if (isset($current) && $current==$value || !isset($current) & $default) { |
233 |
echo " checked"; |
234 |
} |
235 |
echo ">"; |
236 |
} |
237 |
?> |
238 |
<? radio("zap_plive","t",$zap_plive,1) ?> da |
239 |
<br> |
240 |
<? radio("zap_plive","f",$zap_plive,0) ?> ne |
241 |
</td> |
242 |
<td colspan="3">©ifra radnika: |
243 |
<input type="text" name="sifra" size="6" maxsize="6" value="<? echo $sifra ?>"> |
244 |
<small> |
245 |
<input type=submit name=lookup value="Potra¾i osobu po ¹ifri"> |
246 |
<br>(¹ifra radnika je obavezna za zaposlenike Pliva d.d.) |
247 |
</small> |
248 |
</td> |
249 |
</tr> |
250 |
<tr bgcolor="#f0f0f0"> |
251 |
<td>Ime</td> |
252 |
<td colspan="4"> |
253 |
<input type="text" name="ime" size="50" value="<? echo $ime ?>"> * |
254 |
</td> |
255 |
</tr> |
256 |
<tr> |
257 |
<td>Prezime</td> |
258 |
<td colspan="4"> |
259 |
<input type="text" name="prezime" size="50" value="<? echo $prezime ?>"> * |
260 |
</td> |
261 |
</tr> |
262 |
<tr bgcolor="#f0f0f0"> |
263 |
<td>Organizacijska<br>jedinica</td> |
264 |
<td colspan="4"> |
265 |
|
266 |
<? include("inc/org_jed.inc"); ?> * |
267 |
|
268 |
</td> |
269 |
</tr> |
270 |
<tr> |
271 |
<td>Lokacija</td> |
272 |
<td colspan="4"> |
273 |
<select name="lokacija_id"> |
274 |
<? |
275 |
$result=pg_Exec($conn,"select id,naziv from lokacije where aktivna=true"); |
276 |
for ($k = 0; $k < pg_numrows($result); $k++) { |
277 |
$row=pg_fetch_array($result,$k); |
278 |
echo "<option value=\"$row[id]\""; |
279 |
if ($row[id] == $lokacija_id) { |
280 |
echo "selected "; |
281 |
} |
282 |
echo ">$row[naziv]</option>\n"; |
283 |
} |
284 |
?> |
285 |
</select> * |
286 |
</td> |
287 |
</tr> |
288 |
<tr bgcolor="#f0f0f0"> |
289 |
<td>Objekt</td> |
290 |
<td colspan="2"> |
291 |
<input type="text" name="objekt" size="20" value="<? echo $objekt ?>"> |
292 |
</td><td><div align="right">Kat</div></td><td> |
293 |
<input type="text" name="kat" size="20" value="<? echo $kat ?>"> |
294 |
</td> |
295 |
</tr> |
296 |
<tr> |
297 |
<td>Soba</td> |
298 |
<td colspan="2"> |
299 |
<input type="text" name="soba" size="10" value="<? echo $soba ?>"> |
300 |
</td><td><div align="right">Telefon</div></td><td> |
301 |
<input type="text" name="tel" size="10" value="<? echo $tel ?>"> * |
302 |
</td> |
303 |
</tr> |
304 |
<tr bgcolor="#f0f0f0"> |
305 |
<td>Unix shell</td> |
306 |
<td colspan="2"> |
307 |
<? radio("shell","f",$shell,1) ?> ne<br> |
308 |
<? radio("shell","t",$shell,0) ?> da |
309 |
<small>(pristup telnetom)</small> |
310 |
</td> |
311 |
<td><div align="right">Pode¹avanje browsera</div></td> |
312 |
<td> |
313 |
<? radio("podesavanje","t",$podesavanje,1) ?> da |
314 |
<small>(prema Va¹im podacima, obavlja IC)</small> |
315 |
<br><? radio("podesavanje","f",$podesavanje,2) ?> ne |
316 |
</td> |
317 |
</tr> |
318 |
<tr> |
319 |
<td>Podaci o raèunalu</td> |
320 |
<td colspan="2"> |
321 |
¾-<input type="text" name="z_rac" size="5" value="<? echo $z_rac ?>"> |
322 |
</small> |
323 |
</td> |
324 |
<td><div align="right">Potrebno umre¾avanje</div></td> |
325 |
<td> |
326 |
<? radio("umrezavanje","t",$umrezavanje,1) ?> da |
327 |
<small>(obavlja odjel mre¾a)</small> |
328 |
<br><? radio("umrezavanje","f",$umrezavanje,2) ?> ne |
329 |
<small>(raèunalo je umre¾eno i mo¾e se sa njega do |
330 |
<a href="http://intranet.pliva.hr/">intranet servera</a>)</small> |
331 |
</td> |
332 |
</tr> |
333 |
<tr> |
334 |
<td>Lokacija raèunala</td> |
335 |
<td colspan="4"> |
336 |
<input type="text" name="lok_racunala" size="80" value="<? echo $lok_racunala ?>"> |
337 |
<br><small>popunjava se ukoliko raèunalo nije u istoj prostoriji kao i |
338 |
osoba <b>ili</b> ako raèunalo ne glasi na osobu za koju se |
339 |
podnosi zahtjev (upisati <i>raèunalo glasi na Ime Prezime</i>) |
340 |
</small> |
341 |
</td> |
342 |
</tr> |
343 |
<tr bgcolor="#f0f0f0"> |
344 |
<td><? echo $prev_button ?> </td> |
345 |
<td colspan="3"> |
346 |
<div align="left"><? echo $info ?> </div> |
347 |
</td> |
348 |
<td> |
349 |
<div align="right"> |
350 |
<input type="submit" name="Submit" value="Slijedeæi korak"> |
351 |
</div> |
352 |
</td> |
353 |
</tr> |
354 |
</table> |
355 |
</form> |
356 |
|
357 |
<? |
358 |
/* kraj forme o osobi... */ |
359 |
|
360 |
} elseif ($what="auth") { |
361 |
# ni¹ta ne ispisujemo ovdje! |
362 |
} else { |
363 |
echo "<b>Gre¹ka!</b>"; |
364 |
} |
365 |
|
366 |
include("inc/footer.inc") |
367 |
|
368 |
?> |