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