Esempio n. 1
0
function nastavnik_unos_ocjene()
{
    global $userid, $user_studentska, $user_siteadmin;
    // Parametri
    $predmet = intval($_REQUEST['predmet']);
    $ag = intval($_REQUEST['ag']);
    // Naziv predmeta
    $q10 = myquery("select naziv from predmet where id={$predmet}");
    if (mysql_num_rows($q10) < 1) {
        biguglyerror("Nepoznat predmet");
        zamgerlog("ilegalan predmet {$predmet}", 3);
        //nivo 3: greska
        zamgerlog2("nepoznat predmet", $predmet);
        return;
    }
    $predmet_naziv = mysql_result($q10, 0, 0);
    $kolokvij = false;
    $q12 = myquery("SELECT tippredmeta FROM akademska_godina_predmet WHERE akademska_godina={$ag} AND predmet={$predmet}");
    if (mysql_num_rows($q12) > 0 && mysql_result($q12, 0, 0) == 2000) {
        // FIXME: Ovo ne treba biti hardcodirani tip predmeta nego jedan od parametara za tip predmeta
        $kolokvij = true;
    }
    // Da li korisnik ima pravo ući u modul?
    if (!$user_siteadmin && !$user_studentska) {
        $q10 = myquery("select nivo_pristupa from nastavnik_predmet where nastavnik={$userid} and predmet={$predmet} and akademska_godina={$ag}");
        if (mysql_num_rows($q10) < 1 || mysql_result($q10, 0, 0) != "nastavnik") {
            zamgerlog("nastavnik/ispiti privilegije (predmet pp{$predmet})", 3);
            zamgerlog2("nije nastavnik na predmetu", $predmet, $ag);
            biguglyerror("Nemate pravo pristupa ovoj opciji");
            return;
        }
    }
    ?>

<p>&nbsp;</p>

<p><h3><?php 
    echo $predmet_naziv;
    ?>
 - Konačna ocjena (pojedinačni unos)</h3></p>

<?php 
    print ajah_box();
    ?>
	<SCRIPT language="JavaScript">
	function dobio_focus(element) {
		element.style.borderColor='red';
		if (element.value == "/") element.value="";
	}
	function izgubio_focus(element) {
		element.style.borderColor='black';
		var id = element.id;
		if (element.value == "") element.value="/";
		var vrijednost = element.value;
		if (vrijednost!=origval[id]) {
			if (id.substr(0,6) == "ocjena") {
				var value = parseInt(element.id.substr(6));
				ajah_start("index.php?c=N&sta=common/ajah&akcija=izmjena_ispita&idpolja=ko-"+value+"-<?php 
    echo $predmet;
    ?>
-<?php 
    echo $ag;
    ?>
&vrijednost="+vrijednost+"","document.getElementById('ocjena'+"+id+").focus()");
			} else if (id.substr(0,5) == "datum") {
				var value = parseInt(element.id.substr(5));
				ajah_start("index.php?c=N&sta=common/ajah&akcija=izmjena_ispita&idpolja=kodatum-"+value+"-<?php 
    echo $predmet;
    ?>
-<?php 
    echo $ag;
    ?>
&vrijednost="+vrijednost+"","document.getElementById('datum'+"+id+").focus()");
				element.style.backgroundColor="#FFFFFF";
			}
			origval[id]=vrijednost;
		}
	}
	function ispunio_uslove(element) {
		var id = element.id;
		var vrijednost = element.checked;
		if (vrijednost!=origval[id]) {
			var oc_vrijednost;
			if (vrijednost) oc_vrijednost=11;
			else oc_vrijednost='/';
			var value = parseInt(element.id.substr(6));
			ajah_start("index.php?c=N&sta=common/ajah&akcija=izmjena_ispita&idpolja=ko-"+value+"-<?php 
    echo $predmet;
    ?>
-<?php 
    echo $ag;
    ?>
&vrijednost="+oc_vrijednost+"","document.getElementById('ocjena'+"+id+").focus()");
		}
	}
	function enterhack(element,e) {
		if(e.keyCode==13) {
			element.blur();
//			document.getElementById('ocjena'+gdje).focus();
//			document.getElementById('ocjena'+gdje).select();
			document.getElementById(nextjump[element.id]).focus();
			document.getElementById(nextjump[element.id]).select();
		}
	}
	var origval=new Array();
	var nextjump=new Array();
	</SCRIPT>


	<table border="1" bordercolordark="grey" cellspacing="0">
		<tr>
			<td><b>R. br.</b></td><td width="300"><b>Prezime i ime</b></td>
			<td><b>Broj indeksa</b></td>
			<td><b><?php 
    if ($kolokvij) {
        ?>
Ispunio/la obaveze<?php 
    } else {
        ?>
Ocjena<?php 
    }
    ?>
</b></td>
			<td><b>Datum</b></td>
		</tr>
	<?php 
    $upit = "SELECT o.id, o.ime, o.prezime, o.brindexa from osoba as o, student_predmet as sp, ponudakursa as pk where sp.student=o.id and sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag} order by o.prezime, o.ime";
    $q520 = myquery($upit);
    $id = 0;
    $rbr = 0;
    while ($r520 = mysql_fetch_row($q520)) {
        $rbr++;
        if ($id != 0) {
            ?>
			<SCRIPT language="JavaScript"> nextjump['ocjena<?php 
            echo $id;
            ?>
']="ocjena<?php 
            echo $r520[0];
            ?>
";</SCRIPT>
			<SCRIPT language="JavaScript"> nextjump['datum<?php 
            echo $id;
            ?>
']="datum<?php 
            echo $r520[0];
            ?>
";</SCRIPT>
			<?php 
        }
        //			print "$r520[0])\"></tr>\n";
        $id = $r520[0];
        $q530 = myquery("select ocjena, UNIX_TIMESTAMP(datum_u_indeksu), datum_provjeren from konacna_ocjena where student={$r520['0']} and predmet={$predmet}");
        if (mysql_num_rows($q530) > 0) {
            $ocjena = mysql_result($q530, 0, 0);
            $datum_u_indeksu = date("d. m. Y.", mysql_result($q530, 0, 1));
            $datum_provjeren = mysql_result($q530, 0, 2);
            //			$datum_u_indeksu = mysql_result($q530,0,1);
        } else {
            $ocjena = "/";
            $datum_u_indeksu = date("d. m. Y.", time());
            $datum_provjeren = 1;
        }
        if ($kolokvij) {
            if ($ocjena == 11) {
                $ispunio_uslove = "CHECKED";
                $ocjena = "true";
            } else {
                $ispunio_uslove = "";
                $ocjena = "false";
            }
        }
        ?>
		<SCRIPT language="JavaScript"> origval['ocjena<?php 
        echo $id;
        ?>
']="<?php 
        echo $ocjena;
        ?>
";</SCRIPT>
		<SCRIPT language="JavaScript"> origval['datum<?php 
        echo $id;
        ?>
']="<?php 
        echo $datum_u_indeksu;
        ?>
";</SCRIPT>
		<tr>
			<td><?php 
        echo $rbr;
        ?>
</td>
			<td><?php 
        echo $r520[2];
        ?>
 <?php 
        echo $r520[1];
        ?>
</td>
			<td><?php 
        echo $r520[3];
        ?>
</td>
			<td align="center">
			<?php 
        if ($kolokvij) {
            ?>
<input type="checkbox" id="ocjena<?php 
            echo $id;
            ?>
" onchange="ispunio_uslove(this)" <?php 
            echo $ispunio_uslove;
            ?>
><?php 
        } else {
            ?>
<input type="text" id="ocjena<?php 
            echo $id;
            ?>
" size="2" value="<?php 
            echo $ocjena;
            ?>
" style="border:1px black solid" onblur="izgubio_focus(this)" onfocus="dobio_focus(this)" onkeydown="enterhack(this,event)"><?php 
        }
        ?>
			</td>
			<td align="center"><input type="text" id="datum<?php 
        echo $id;
        ?>
" size="8" value="<?php 
        echo $datum_u_indeksu;
        ?>
" style="border:1px black solid<?php 
        if ($datum_provjeren != 1) {
            print "; background-color: ffaaaa";
        }
        ?>
" onblur="izgubio_focus(this)" onfocus="dobio_focus(this)" onkeydown="enterhack(this,event)"></td>
		</tr>
		<?php 
    }
    ?>
	</table>
	<?php 
}
Esempio n. 2
0
function studentska_prijemni()
{
    global $_lv_;
    // Default akcija je unos novog studenta
    if ($_REQUEST['akcija'] == "") {
        $_REQUEST['akcija'] = "unos";
    }
    ?>
<center>
<table border="0" width="100%">


<?php 
    // ODREDJIVANJE TERMINA I NASLOVA
    $termin = intval($_REQUEST['termin']);
    if ($termin == 0) {
        // Daj najskoriji ispit
        $q10 = myquery("select pt.id, ag.naziv, UNIX_TIMESTAMP(pt.datum), pt.ciklus_studija from prijemni_termin as pt, akademska_godina as ag where pt.akademska_godina=ag.id order by pt.datum desc limit 1");
        if (mysql_num_rows($q10) < 1) {
            $_REQUEST['akcija'] = "novi_ispit";
            $termin = 0;
        } else {
            $termin = mysql_result($q10, 0, 0);
        }
    } else {
        $q10 = myquery("select pt.id, ag.naziv, UNIX_TIMESTAMP(pt.datum), pt.ciklus_studija from prijemni_termin as pt, akademska_godina as ag where pt.id={$termin} and pt.akademska_godina=ag.id");
        if (mysql_num_rows($q10) < 1) {
            niceerror("Nepostojeći termin.");
            zamgerlog("nepostojeci termin {$termin}", 3);
            zamgerlog2("nepostojeci termin prijemnog ispita", $termin);
            return;
        }
    }
    if (mysql_num_rows($q10) < 1) {
        // Ovo će se desiti samo ako nije kreiran niti jedan termin
        $datum = "/";
        $ciklus_studija = 1;
    } else {
        $datum = date("d. m. Y.", mysql_result($q10, 0, 2));
        $ciklus_studija = mysql_result($q10, 0, 3);
        $naziv = " za " . mysql_result($q10, 0, 1) . " akademsku godinu (" . mysql_result($q10, 0, 3) . " ciklus studija), {$datum}";
    }
    // MENI S LIJEVE STRANE
    // (ne prikazuje se ako je akcija "pregled")
    if ($_REQUEST['akcija'] != "pregled") {
        ?>
<tr><td valign="top" width="220">

<!-- Termini prijemnog ispita -->
* <a href="?sta=studentska/prijemni&akcija=novi_ispit">Novi prijemni ispit</a><br />
* <a href="?sta=studentska/prijemni&akcija=arhiva_ispita">Arhiva prijemnih ispita</a><br /><br /><br />


<!-- Tabela za linkove koji otvaraju ostale stranice vezane za modul -->
<?php 
        echo $datum;
        ?>
:<br />
<table bgcolor="" style="border:1px;border-style:solid;border-color:black">
	<tr>
		<td align="left"><a href="?sta=studentska/prijemni&akcija=unos&termin=<?php 
        echo $termin;
        ?>
">Unos kandidata</a></td>
	</tr>
	<tr>&nbsp;</tr>
	<tr>
		<td align="left"><a href="?sta=studentska/prijemni&akcija=brzi_unos&termin=<?php 
        echo $termin;
        ?>
">Brzi unos</a></td>
	</tr>
	<tr>&nbsp;</tr>
	<tr>
		<td align="left"><a href="?sta=studentska/prijemni&akcija=pregled&termin=<?php 
        echo $termin;
        ?>
">Tabelarni pregled kandidata</a></td>
	</tr>
	<tr>&nbsp;</tr>
	<tr>
		<td><a href="?sta=studentska/prijemni&akcija=prijemni&termin=<?php 
        echo $termin;
        ?>
">Unos bodova sa prijemnog ispita</a></td>
	</tr>
	<tr>&nbsp;</tr>
	<tr>
		<td align="left"><a href="?sta=studentska/prijemni&akcija=prijemni_sifre&termin=<?php 
        echo $termin;
        ?>
">Unos bodova po šiframa</a></td>
	</tr>
	<tr>&nbsp;</tr>
	<tr>
		<td><a href="?sta=studentska/prijemni&akcija=upis_kriterij&termin=<?php 
        echo $termin;
        ?>
">Kriteriji za upis</a></td>
	</tr>
	<tr>&nbsp;</tr>
	<tr>
		<td><a href="?sta=studentska/prijemni&akcija=spisak&termin=<?php 
        echo $termin;
        ?>
">Spisak kandidata</a></td>
	</tr>
        <tr>&nbsp;</tr> 	 
	<tr>
		<td><a href="?sta=izvjestaj/prijemni_top10posto&termin=<?php 
        echo $termin;
        ?>
">Najboljih 10% po školama</a></td>
	</tr>
        <tr>&nbsp;</tr> 	 
	<tr> 	 
		<td><a href="?sta=studentska/prijemni&akcija=rang_liste&termin=<?php 
        echo $termin;
        ?>
">Rang liste kandidata</a></td>
	</tr> 	 
</table>




</td><td width="10">&nbsp;</td>


<?php 
    }
    // if ($_REQUEST['akcija'] != "pregled" )
    // NASLOV
    ?>
<td valign="top">

<h1>Prijemni ispit</h1>
<?php 
    // NOVI PRIJEMNI ISPIT
    if ($_POST['akcija'] == "novi_ispit_potvrda" && check_csrf_token()) {
        $ciklus = intval($_REQUEST['ciklus']);
        if ($ciklus != 1 && $ciklus != 2 && $ciklus != 3) {
            biguglyerror("Neispravan ciklus studija");
            return;
        }
        $ag = intval($_REQUEST['_lv_column_akademska_godina']);
        if (preg_match("/(\\d+).*?(\\d+).*?(\\d+)/", $_REQUEST['datum'], $matches)) {
            $dan = $matches[1];
            $mjesec = $matches[2];
            $godina = $matches[3];
            if ($godina < 100) {
                if ($godina < 50) {
                    $godina += 2000;
                } else {
                    $godina += 1900;
                }
            }
            if ($godina < 1000) {
                if ($godina < 900) {
                    $godina += 2000;
                } else {
                    $godina += 1000;
                }
            }
        } else {
            biguglyerror("Neispravan datum");
            return;
        }
        $q20 = myquery("insert into prijemni_termin set akademska_godina={$ag}, datum='{$godina}-{$mjesec}-{$dan}', ciklus_studija={$ciklus}");
        zamgerlog("kreiran novi termin za prijemni ispit", 4);
        // 4 = audit
        zamgerlog2("kreiran novi termin za prijemni ispit", mysql_insert_id());
        ?>
	<p>Novi termin kreiran. <a href="?sta=studentska/prijemni">Kliknite ovdje za nastavak</a></p>

</td></tr></table></center>
	<?php 
        return;
        // Necemo da se ispise naziv
    }
    if ($_REQUEST['akcija'] == "novi_ispit") {
        unset($_REQUEST['akcija']);
        ?>
<h2>Novi termin prijemnog ispita:</h2>

	<?php 
        echo genform("POST");
        ?>
	<input type="hidden" name="akcija" value="novi_ispit_potvrda">
	<table border="0"><tr><td>
	Ciklus studija:</td><td><select name="ciklus"><option value="1">Prvi</option><option value="2">Drugi</option><option value="3">Treći</option></select>
	</td></tr><tr><td>
	Akademska godina:</td><td><?php 
        echo db_dropdown("akademska_godina");
        ?>
	</td></tr><tr><td>
	Datum održavanja ispita:</td><td><input type="text" name="datum" size="20">
	</td></tr><tr><td>&nbsp;</td><td>
	<input type="submit" value="  Kreiraj  ">
	</td></tr></table>
	</form>
	
	<p>Za povratak, kliknite na link "Unos kandidata" sa lijeve strane.</p>

</td></tr></table></center>
	<?php 
        return;
        // Necemo da se ispise naziv
    }
    // ARHIVA PRIJEMNIH ISPITA
    if ($_REQUEST['akcija'] == "arhiva_ispita") {
        ?>
	<p>Do sada održani prijemni ispiti (po datumu ispita):</p>
	<ul>
	<?php 
        $q30 = myquery("select pt.id, ag.naziv, UNIX_TIMESTAMP(pt.datum), pt.ciklus_studija from prijemni_termin as pt, akademska_godina as ag where pt.akademska_godina=ag.id order by pt.datum");
        while ($r30 = mysql_fetch_row($q30)) {
            $datum = date("d. m. Y.", $r30[2]);
            ?>
		<li><a href="?sta=studentska/prijemni&termin=<?php 
            echo $r30[0];
            ?>
">(<?php 
            echo $datum;
            ?>
) Akademska <?php 
            echo $r30[1];
            ?>
 godina, <?php 
            echo $r30[3];
            ?>
. ciklus studija</a></li>
		<?php 
        }
        ?>
	</ul>

</td></tr></table></center>
	<?php 
        return;
        // Necemo da se ispise naziv
    }
    // ISPIS NAZIVA ODABRANOG TERMINA ISPITA
    ?>
<p><?php 
    echo $naziv;
    ?>
</p>
<?php 
    // BRZI UNOS SA AUTOMATSKOM OBRADOM
    if ($_REQUEST['akcija'] == "promijeni_kod") {
        $osoba = intval($_REQUEST['osoba']);
        do {
            $sifra = chr(ord('A') + rand(0, 7)) . chr(ord('A') + rand(0, 7)) . chr(ord('A') + rand(0, 7)) . rand(1, 8) . rand(1, 8);
            $q3015 = myquery("select count(*) from prijemni_obrazac where sifra='{$sifra}' and prijemni_termin={$termin}");
        } while (mysql_result($q3015, 0, 0) > 0);
        $q3040 = myquery("update prijemni_obrazac set sifra='{$sifra}' where prijemni_termin={$termin} and osoba={$osoba}");
        print "Kod promijenjen";
        return;
    }
    if ($_REQUEST['akcija'] == "prijemni_sifre_submit" && check_csrf_token()) {
        if ($_POST['fakatradi'] != 1) {
            $ispis = 1;
        } else {
            $ispis = 0;
        }
        $redovi = explode("\n", $_POST['massinput']);
        $separator = intval($_REQUEST['separator']);
        if ($separator == 1) {
            $sepchar = ',';
        } else {
            $sepchar = "\t";
        }
        $kolona = 2;
        unset($_REQUEST['fakatradi']);
        if ($ispis) {
            print genform("POST");
            ?>
		<input type="hidden" name="fakatradi" value="1">
		<?php 
        }
        $sifra_izasao = array();
        $q6 = myquery("select sifra from prijemni_obrazac where prijemni_termin={$termin}");
        while ($r6 = mysql_fetch_row($q6)) {
            $sifra_izasao[$r6[0]] = "nije";
        }
        foreach ($redovi as $red) {
            $red = trim($red);
            if (strlen($red) < 2) {
                continue;
            }
            // prazan red
            // popravljamo nbsp Unicode karakter
            $red = str_replace("¡", " ", $red);
            $red = str_replace(" ", " ", $red);
            $red = my_escape($red);
            $nred = explode($sepchar, $red, $kolona);
            $sifra = $nred[0];
            $bodovi = floatval(str_replace(",", ".", $nred[1]));
            // Da li korisnik postoji u bazi?
            $q10 = myquery("select osoba from prijemni_obrazac where sifra='{$sifra}' and prijemni_termin={$termin}");
            if (mysql_num_rows($q10) < 1) {
                if ($ispis) {
                    print "<font color=\"red\">Nepoznata šifra {$sifra}</font><br>\n";
                }
                $greska = 1;
                continue;
            } else {
                $osoba = mysql_result($q10, 0, 0);
                $q20 = myquery("select izasao from prijemni_prijava where prijemni_termin={$termin} and osoba={$osoba}");
                /*if (mysql_result($q20,0,0)==1) {
                			if ($ispis)  {
                				print "<font color=\"red\">Kandidatu pod šifrom $sifra je već evidentiran izlazak na prijemni.</font><br>\n";
                			}
                			$greska=1;
                			continue;
                		}*/
                if ($ispis) {
                    print "-- Upisujem {$bodovi} bodova za kandidata pod šifrom {$sifra}<br>\n";
                } else {
                    $q20 = myquery("update prijemni_prijava set izasao=1, rezultat={$bodovi} where prijemni_termin={$termin} and osoba={$osoba}");
                }
                $sifra_izasao[$sifra] = "jeste";
            }
        }
        // Potvrda i Nazad
        if ($ispis) {
            foreach ($sifra_izasao as $sifra => $izasao) {
                if ($izasao == "nije") {
                    print "Nije izasao: {$sifra}<br />\n";
                }
            }
            print '<input type="submit" name="nazad" value=" Nazad "> ';
            if ($greska == 0) {
                print '<input type="submit" value=" Potvrda ">';
            }
            print "</form>";
            return;
        } else {
            ?>
		Upisani rezultati prijemnog.
		<?php 
        }
    }
    if ($_REQUEST['akcija'] == "prijemni_sifre") {
        ?>

<p><hr/></p><p><b>Masovni unos rezultata prijemnog ispita po šiframa</b><br/>
<?php 
        echo genform("POST");
        ?>
<input type="hidden" name="fakatradi" value="0">
<input type="hidden" name="akcija" value="prijemni_sifre_submit">
<input type="hidden" name="nazad" value="">
<input type="hidden" name="visestruki" value="1">
<input type="hidden" name="duplikati" value="0">
<input type="hidden" name="brpodataka" value="1">

<textarea name="massinput" cols="50" rows="10"><?php 
        if (strlen($_POST['nazad']) > 1) {
            print $_POST['massinput'];
        }
        ?>
</textarea><br/>
<br/>Separator: <select name="separator" class="default">
<option value="0" <?php 
        if ($separator == 0) {
            print "SELECTED";
        }
        ?>
>Tab</option>
<option value="1" <?php 
        if ($separator == 1) {
            print "SELECTED";
        }
        ?>
>Zarez</option></select><br/><br/>
<br/><br/>

<input type="submit" value="  Dodaj  ">
</form></p><?php 
    }
    if ($_REQUEST['akcija'] == "brzi_unos") {
        $bojaime = $bojaimerod = $bojaprezime = $bojajmbg = "#FFFF00";
        $rjezik = 'bs';
        if ($_REQUEST['subakcija'] == "potvrda" && check_csrf_token()) {
            $rime = my_escape($_REQUEST['ime']);
            $rprezime = my_escape($_REQUEST['prezime']);
            $rimeroditelja = my_escape($_REQUEST['imeroditelja']);
            $rjmbg = my_escape($_REQUEST['jmbg']);
            $rjezik = my_escape($_REQUEST['jezik']);
            if (!preg_match("/\\w/", $rime)) {
                niceerror("Ime nije ispravno");
                $greska = 1;
                $greskaime = 1;
                $bojaime = "#FF0000";
            }
            if (!preg_match("/\\w/", $rprezime)) {
                niceerror("Prezime nije ispravno");
                $greska = 1;
                $greskaprezme = 1;
                $bojaprezime = "#FF0000";
            }
            if (!preg_match("/\\w/", $rimeroditelja)) {
                niceerror("Ime roditelja nije ispravno");
                $greska = 1;
                $greskaime = 1;
                $bojaimerod = "#FF0000";
            }
            if (testjmbg($rjmbg) != "") {
                niceerror("JMBG neispravan: " . testjmbg($rjmbg));
                $greska = 1;
                $greskajmbg = 1;
                $bojajmbg = "#FF0000";
            }
            $q2995 = myquery("select count(*) from osoba where jmbg='{$rjmbg}'");
            if (mysql_result($q2995, 0, 0) > 0) {
                niceerror("Osoba sa ovim JMBGom već postoji u bazi");
                print "<p>Moguće je da sljedeće:<br />\n\t\t\t1. Pogrešno unesen JMBG. Molimo da ga popravite ispod.<br />\n\t\t\t2. Moguće je da ste ovog kandidata već unijeli! Koristite tabelarni pregled da biste ušli u dosje kandidata, a zatim kliknite na link <i>Odštampaj obrazac</i> koji se nalazi odmah ispod broja dosjea.<br />\n\t\t\t3. Ako se isti kandidat ponovo prijavljuje za prijemni ispit, kliknite na link <i>Unos kandidata</i> a zatim koristite pretragu po broju JMBGa kako biste automatski povukli podatke ovog kandidata i generisali novi obrazac za njega.</p>";
                $greska = 1;
                $greskajmbg = 1;
                $bojajmbg = "#FF0000";
            }
            if ($greska == 0) {
                $q3000 = myquery("select broj_dosjea from prijemni_prijava where prijemni_termin={$termin} order by broj_dosjea desc limit 1");
                if (mysql_num_rows($q3000) > 0) {
                    $broj_dosjea = mysql_result($q3000, 0, 0) + 1;
                } else {
                    $broj_dosjea = 1;
                }
                $q3010 = myquery("select id from osoba order by id desc limit 1");
                $osoba = mysql_result($q3010, 0, 0) + 1;
                // Određivanje šifre
                do {
                    $sifra = chr(ord('A') + rand(0, 7)) . chr(ord('A') + rand(0, 7)) . chr(ord('A') + rand(0, 7)) . rand(1, 8) . rand(1, 8);
                    $q3015 = myquery("select count(*) from prijemni_obrazac where sifra='{$sifra}' and prijemni_termin={$termin}");
                } while (mysql_result($q3015, 0, 0) > 0);
                // Određivanje datuma rođenja iz JMBGa
                $datumrod = mktime(0, 0, 0, substr($rjmbg, 2, 2), substr($rmjbg, 0, 2), substr($rjmbg, 4, 3) + 1000);
                $q3020 = myquery("insert into osoba set id={$osoba}, ime='{$rime}', prezime='{$rprezime}', imeoca='{$rimeroditelja}', jmbg='{$rjmbg}', datum_rodjenja=FROM_UNIXTIME({$datumrod})");
                $q3030 = myquery("insert into prijemni_prijava set prijemni_termin={$termin}, osoba={$osoba}, broj_dosjea={$broj_dosjea}, izasao=0, rezultat=0");
                $q3040 = myquery("insert into prijemni_obrazac set prijemni_termin={$termin}, osoba={$osoba}, sifra='{$sifra}', jezik='{$rjezik}'");
                if ($ciklus_studija == 1) {
                    $q3050 = myquery("select count(*) from uspjeh_u_srednjoj where osoba={$osoba}");
                    if (mysql_result($q3050, 0, 0) == 0) {
                        // Kreiramo blank zapis u tabeli uspjeh u srednjoj kako bi kandidat bio prikazan u tabeli, a naknadno se može popuniti podacima
                        $q3060 = myquery("insert into uspjeh_u_srednjoj set osoba={$osoba}");
                    }
                } else {
                    $q3050 = myquery("select count(*) from prosliciklus_uspjeh where osoba={$osoba}");
                    if (mysql_result($q3050, 0, 0) == 0) {
                        // Kreiramo blank zapis u tabeli uspjeh u srednjoj kako bi kandidat bio prikazan u tabeli, a naknadno se može popuniti podacima
                        $q3060 = myquery("insert into prosliciklus_uspjeh set osoba={$osoba}");
                    }
                }
                zamgerlog("brzo unesen kandidat {$rime} {$rprezime} za termin {$termin}", 2);
                zamgerlog2("brzo unesen kandidat za prijemni", $termin, 0, 0, "{$rime} {$rprezime}");
                ?>
			<table border="1" cellspacing="0" cellpadding="3"><tr><td>
			<table border="0">
				<tr><td>Broj dosjea:</td><td><b><?php 
                echo $broj_dosjea;
                ?>
</b></td></tr>
				<tr><td>Šifra za prijemni ispit:</td><td><b><?php 
                echo $sifra;
                ?>
</b></td></tr>
				<tr><td>Ime:</td><td><b><?php 
                echo $rime;
                ?>
</b></td></tr>
				<tr><td>Prezime:</td><td><b><?php 
                echo $rprezime;
                ?>
</b></td></tr>
				<tr><td>Ime roditelja:</td><td><b><?php 
                echo $rimeroditelja;
                ?>
</b></td></tr>
				<tr><td>JMBG:</td><td><b><?php 
                echo $rjmbg;
                ?>
</b></td></tr>
			</table>
			</td></tr></table>
			<p><a href="?sta=izvjestaj/prijemni_brzi_unos&termin=<?php 
                echo $termin;
                ?>
&osoba=<?php 
                echo $osoba;
                ?>
" target="_new">Odštampaj obrazac</a></p>
			<p><a href="?sta=studentska/prijemni&termin=<?php 
                echo $termin;
                ?>
&akcija=brzi_unos">Unos sljedećeg studenta</a></p>
			<?php 
                return;
            }
        }
        ?>
	<script language="JavaScript">
// Kada korisnik ukuca nesto u obavezno polje, ono prestaje biti zuto (postaje bijelo)
function odzuti(nesto) {
	nesto.style.backgroundColor = '#FFFFFF';
}

// Predji na sljedece polje pritiskom na dugme enter
function enterhack(e,gdje) {
	if(e.keyCode==13) {
		document.getElementById(gdje).focus();
		return false;
	}
}
function provjeri(varijablu) {
	var nesto = document.getElementById(varijablu);
	if(nesto.value=="") {
		alert("Niste unijeli "+varijablu);
		nesto.focus();
		self.scrollTo(nesto.offsetLeft,nesto.offsetTop);
		return false;
	}
	return true;
}
function provjeri_sve() {
	if (!provjeri('ime')) return false;
	if (!provjeri('imeroditelja')) return false;
	if (!provjeri('prezime')) return false;
	if (!provjeri('jmbg')) return false;

	document.getElementById('slanje').disabled = true;
	document.getElementsByName('brzaforma')[0].submit();
	return true;
}
	</script>

	<?php 
        echo genform("POST", "brzaforma");
        ?>
	<input type="hidden" name="subakcija" value="potvrda">
	<h2>Brzi unos kandidata za prijemni ispit</h2>

	<table border="0">
		<tr>
			<td>Ime:</td><td><input type="text" name="ime" id="ime" size="20" style="background-color:<?php 
        echo $bojaime;
        ?>
" oninput="odzuti(this)" autocomplete="off" onkeypress="return enterhack(event,'prezimeoca')" value="<?php 
        echo $rime;
        ?>
" /></td>
		</tr>
		<tr>
			<td>Ime roditelja:</td><td><input type="text" name="imeroditelja" id="imeroditelja" size="20" style="background-color:<?php 
        echo $bojaimerod;
        ?>
" oninput="odzuti(this)" autocomplete="off" onkeypress="return enterhack(event,'prezimeoca')" value="<?php 
        echo $rimeroditelja;
        ?>
" /></td>
		</tr>
		<tr>
			<td>Prezime:</td><td><input type="text" name="prezime" id="prezime" size="20" style="background-color:<?php 
        echo $bojaprezime;
        ?>
" oninput="odzuti(this)" autocomplete="off" onkeypress="return enterhack(event,'prezimeoca')" value="<?php 
        echo $rprezime;
        ?>
" /></td>
		</tr>
		<tr>
			<td>JMBG:</td><td><input type="text" name="jmbg" id="jmbg" size="20" style="background-color:<?php 
        echo $bojajmbg;
        ?>
" oninput="odzuti(this)" autocomplete="off" onkeypress="return enterhack(event,'prezimeoca')" value="<?php 
        echo $rjmbg;
        ?>
" /></td>
		</tr>
		<tr>
			<td>Jezik:</td><td>
				<select name="jezik">
					<option value="bs" <?php 
        if ($rjezik == "bs") {
            print "CHECKED";
        }
        ?>
>Bosanski</option>
					<option value="en" <?php 
        if ($rjezik == "en") {
            print "CHECKED";
        }
        ?>
>Engleski</option>
				</select>
			</td>
		</tr>
		<tr>
			<td>&nbsp;</td><td><input type="button" id="slanje" value="Pošalji" onclick="provjeri_sve()"></td>
		</tr>
	</table>
	</form>
	<?php 
    }
    // GENERATORI IZVJEŠTAJA
    if ($_REQUEST['akcija'] == "spisak") {
        ?>
	<form action="index.php" method="GET">
	<input type="hidden" name="sta" value="izvjestaj/prijemni">
	<input type="hidden" name="akcija" value="kandidati">
	<input type="hidden" name="termin" value="<?php 
        echo $termin;
        ?>
">
	<h2>Spisak kandidata za prijemni ispit</h2>

	<p>Studij: <select name="studij"><option value="0">Svi zajedno</option><?php 
        $q1000 = myquery("select s.id, s.naziv from studij as s, tipstudija as ts where s.tipstudija=ts.id and ts.ciklus={$ciklus_studija} and ts.moguc_upis=1 and s.moguc_upis=1 order by s.naziv");
        while ($r1000 = mysql_fetch_row($q1000)) {
            print "<option value=\"{$r1000['0']}\">{$r1000['1']}</option>\n";
        }
        ?>
</select></p>

	<p>Državljanstvo: <select name="iz"><option value="bih">BiH</option>
	<option value="strani">Strani državljani</option>
	<option>Svi zajedno</option>
	</select></p>
	<p>Sortirano po: <select name="sort"><option value="abecedno">imenu i prezimenu</option>
	<option>ukupnom broju bodova</option>
	</select></p>
	<input type="submit" value=" Kreni ">
	</form>
	<?php 
    }
    if ($_REQUEST['akcija'] == "rang_liste") {
        ?>
	<form action="index.php" method="GET">
	<input type="hidden" name="sta" value="izvjestaj/prijemni">
	<input type="hidden" name="akcija" value="rang_liste">
	<input type="hidden" name="termin" value="<?php 
        echo $termin;
        ?>
">
	<h2>Rang liste kandidata</h2>

	<p>Vrsta izvještaja: <select name="vrsta"><option value="preliminarni">Preliminarni rezultati</option>
	<option value="konacni">Konačni rezultati</option></select></p>

	<p>Studij: <select name="studij"><?php 
        $q1000 = myquery("select s.id, s.naziv from studij as s, tipstudija as ts where s.tipstudija=ts.id and ts.ciklus={$ciklus_studija} and ts.moguc_upis=1 and s.moguc_upis=1 order by s.naziv");
        while ($r1000 = mysql_fetch_row($q1000)) {
            print "<option value=\"{$r1000['0']}\">{$r1000['1']}</option>\n";
        }
        ?>
</select></p>

	<p>Državljanstvo: <select name="iz"><option value="bih">BiH</option>
	<option value="strani">Strani državljani</option>
	<option>Svi zajedno</option>
	</select></p>

	<p>Način studiranja: <select name="nacin">
	<option value="o_trosku_kantona">O trošku kantona</option>
	<option value="samofinansirajuci">Samofinansirajući</option>
	<option value="redovni">O trošku kantona i samofinansirajući</option>
	<option value="vanredni">Vanredni</option>
	<option>Svi zajedno</option>
	</select></p>

	<input type="submit" value=" Kreni ">
	</form>
	<?php 
    }
    // UNOS KRITERIJA ZA UPIS
    if ($_REQUEST['akcija'] == "upis_kriterij") {
        if ($_POST['spremi'] && check_csrf_token()) {
            $rdonja = intval($_REQUEST['donja_granica']);
            $rgornja = intval($_REQUEST['gornja_granica']);
            $rkandidatisd = intval($_REQUEST['kandidati_sd']);
            $rkandidatisp = intval($_REQUEST['kandidati_sp']);
            $rkandidatikp = intval($_REQUEST['kandidati_kp']);
            $rkandidativan = intval($_REQUEST['kandidati_van']);
            $rprijemnimax = floatval($_REQUEST['prijemni_max']);
            $rstudij = intval($_REQUEST['rstudij']);
            $qInsert = myquery("REPLACE upis_kriterij SET donja_granica={$rdonja}, gornja_granica={$rgornja}, kandidati_strani={$rkandidatisd}, kandidati_sami_placaju={$rkandidatisp}, kandidati_kanton_placa={$rkandidatikp}, kandidati_vanredni={$rkandidativan}, prijemni_max={$rprijemnimax}, studij={$rstudij}, prijemni_termin={$termin}");
            $_REQUEST['prikazi'] = true;
            // prikazi upravo unesene podatke
            zamgerlog("promijenjeni kriteriji za prijemni ispit termin {$termin}, studij {$rstudij}", 4);
            zamgerlog2("promijenjeni kriteriji za prijemni ispit", $termin);
        }
        if ($_REQUEST['prikazi']) {
            $rstudij = intval($_REQUEST['rstudij']);
            $q120 = myquery("select donja_granica, gornja_granica, kandidati_strani, kandidati_sami_placaju, kandidati_kanton_placa, kandidati_vanredni, prijemni_max from upis_kriterij where studij={$rstudij} and prijemni_termin={$termin}");
            if (mysql_num_rows($q120) < 1) {
                $pdonja = $pgornja = $pksd = $pksp = $pkkp = $ppmax = 0;
            } else {
                $pdonja = mysql_result($q120, 0, 0);
                $pgornja = mysql_result($q120, 0, 1);
                $pksd = mysql_result($q120, 0, 2);
                $pksp = mysql_result($q120, 0, 3);
                $pkkp = mysql_result($q120, 0, 4);
                $pkvan = mysql_result($q120, 0, 5);
                $ppmax = mysql_result($q120, 0, 6);
            }
        }
        // Spisak dostupnih studija
        $q130 = myquery("select s.id, s.naziv from studij as s, tipstudija as ts where s.moguc_upis=1 and s.tipstudija=ts.id and ts.ciklus={$ciklus_studija}");
        $spisak_studija = "";
        while ($r130 = mysql_fetch_row($q130)) {
            $spisak_studija .= "<option value=\"{$r130['0']}\"";
            if ($r130[0] == $rstudij) {
                $spisak_studija .= " selected";
            }
            $spisak_studija .= ">{$r130['1']}</option>\n";
        }
        unset($_REQUEST['spremi']);
        ?>

<SCRIPT language="JavaScript">
function odzuti(nesto) {
	nesto.style.backgroundColor = '#FFFFFF';
}
</SCRIPT>

<h3>Unos kriterija za upis</h3>
<br/>

<?php 
        echo genform("POST");
        ?>
<table align="left" border="0" width="70%" bgcolor="">
	<tr>
		<td colspan="2" align="left">Odsjek:</td>
	</tr>
	<tr>
		<td><select name="rstudij"><?php 
        echo $spisak_studija;
        ?>
</select></td>
		<td><input type="submit" name="prikazi" value=" Prikaži "></td>
	</tr>
	<tr>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td width="70%" align="left">Maksimalni broj bodova na prijemnom ispitu:</td>
		<td><input type="text" size="12" name="prijemni_max" style="background-color:#FFFF00" oninput="odzuti(this)" autocomplete="off" value="<?php 
        echo $ppmax;
        ?>
"></td>
	</tr>
	<tr>
		<td width="70%" align="left">Hard limit:</td>
		<td><input type="text" size="12" name="donja_granica" style="background-color:#FFFF00" oninput="odzuti(this)" autocomplete="off" value="<?php 
        echo $pdonja;
        ?>
"></td>
	</tr>
	<tr>
		<td width="70%" align="left">Soft limit:</td>
		<td><input type="text" size="12" name="gornja_granica" style="background-color:#FFFF00" oninput="odzuti(this)" autocomplete="off" value="<?php 
        echo $pgornja;
        ?>
"></td>
	</tr>
	<tr>
		<td width="70%" align="left">Broj kandidata (strani državljani):</td>
		<td><input type="text" size="12" name="kandidati_sd" style="background-color:#FFFF00" oninput="odzuti(this)" autocomplete="off" value="<?php 
        echo $pksd;
        ?>
"></td>
	</tr>
	<tr>
		<td width="70%" align="left">Broj kandidata (sami plaćaju školovanje):</td>
		<td><input type="text" size="12" name="kandidati_sp" style="background-color:#FFFF00" oninput="odzuti(this)" autocomplete="off" value="<?php 
        echo $pksp;
        ?>
"></td>
	</tr>
	<tr>
		<td width="70%" align="left">Broj kandidata (kanton plaća školovanje):</td>
		<td><input type="text" size="12" name="kandidati_kp" style="background-color:#FFFF00" oninput="odzuti(this)" autocomplete="off" value="<?php 
        echo $pkkp;
        ?>
"></td>
	</tr>
	<tr>
		<td width="70%" align="left">Broj kandidata (vanrednih):</td>
		<td><input type="text" size="12" name="kandidati_van" style="background-color:#FFFF00" oninput="odzuti(this)" autocomplete="off" value="<?php 
        echo $pkvan;
        ?>
"></td>
	</tr>
	<tr>
		<td>&nbsp;<td>
	</tr>
	<tr>
		<td><input type="submit" name="spremi" value="Spremi"></td>
	</tr>
	
	</table>
	</form>
	
<?php 
    }
    // TABELARNI UNOS BODOVA SA PRIJEMNOG ISPITA
    if ($_REQUEST['akcija'] == "prijemni") {
        ?>
	<h3>Unos bodova sa prijemnog ispita</h3>
	<br />
	<hr color="black" width="100%">
	<a href="index.php?sta=studentska/prijemni&akcija=prijemni&sort=prezime&termin=<?php 
        echo $termin;
        ?>
">Sortirano po prezimenu</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	<a href="index.php?sta=studentska/prijemni&akcija=prijemni&sort=unos&termin=<?php 
        echo $termin;
        ?>
">Sortirano po broju dosjea</a>
	<hr color="black" width="100%">

	<?php 
        // AJAH i prateće funkcije
        print ajah_box();
        ?>
	<SCRIPT language="JavaScript">
	function dobio_focus(element) {
		element.style.borderColor='red';
		if (element.value == "/") element.value="";
	}
	function izgubio_focus(element) {
		element.style.borderColor='black';
		var id = parseInt(element.id.substr(8));
		if (element.value == "") element.value="/";
		var vrijednost = element.value;
		if (vrijednost!=origval[id])
			ajah_start("index.php?c=N&sta=common/ajah&akcija=prijemni_unos&osoba="+id+"&vrijednost="+vrijednost+"&termin=<?php 
        echo $termin;
        ?>
","document.getElementById('prijemni'+"+id+").focus()");
		origval[id]=vrijednost;
	}
	function enterhack(element,e,gdje) {
		if(e.keyCode==13) {
			element.blur();
			document.getElementById('prijemni'+gdje).focus();
			document.getElementById('prijemni'+gdje).select();
		}
	}
	var origval=new Array();
	</SCRIPT>


	<table border="1" bordercolordark="grey" cellspacing="0">
		<tr><td><b>R. br.</b></td><td width="300"><b>Prezime i ime</b></td>
		<td><b>Bodovi (srednja šk.)</b></td>
		<td><b>Bodovi (prijemni)</b></td></tr>
	<?php 
        $upit = "";
        $upit = "SELECT o.id, o.ime, o.prezime, pp.rezultat, pp.izasao, us.opci_uspjeh+us.kljucni_predmeti+us.dodatni_bodovi, pp.broj_dosjea from osoba as o, prijemni_prijava as pp, uspjeh_u_srednjoj as us where o.id=pp.osoba and pp.prijemni_termin={$termin} and us.osoba=o.id";
        if ($_REQUEST['sort'] == "prezime") {
            $upit .= " ORDER BY o.prezime, o.ime";
        } else {
            $upit .= " ORDER BY pp.broj_dosjea";
        }
        $q = myquery($upit);
        $id = 0;
        while ($r = mysql_fetch_row($q)) {
            if ($id != 0) {
                print "{$r['0']})\"></tr>\n";
            }
            $id = $r[0];
            if ($r[4] == 0) {
                $bodova = "/";
            } else {
                $bodova = $r[3];
            }
            // izasao na prijemni?
            ?>
		<SCRIPT language="JavaScript"> origval[<?php 
            echo $id;
            ?>
]="<?php 
            echo $bodova;
            ?>
";</SCRIPT>
		<tr><td><?php 
            echo $r[6];
            ?>
</td>
		<td><?php 
            echo $r[2];
            ?>
 <?php 
            echo $r[1];
            ?>
</td>
		<td align="center"><?php 
            echo round($r[5] * 10) / 10;
            ?>
</td>
		<td align="center"><input type="text" id="prijemni<?php 
            echo $id;
            ?>
" size="2" value="<?php 
            echo $bodova;
            ?>
" style="border:1px black solid" onblur="izgubio_focus(this)" onfocus="dobio_focus(this)" onkeydown="enterhack(this,event,<?php 
        }
        if ($id != 0) {
            ?>
0)"><?php 
        }
        ?>
</tr>
	<?php 
        ?>
	</table>
	<?php 
    }
    // BRISANJE KANDIDATA (poziva se sa vise mjesta)
    if ($_REQUEST["akcija"] == "obrisi") {
        $osoba = intval($_GET['osoba']);
        if ($osoba > 0) {
            myquery("DELETE FROM prijemni_prijava WHERE osoba={$osoba} AND prijemni_termin={$termin} LIMIT 1");
            myquery("DELETE FROM prijemni_obrazac WHERE osoba={$osoba} AND prijemni_termin={$termin} LIMIT 1");
            // Necemo brisati osobu i ostale podatke
            zamgerlog("brisem osobu u{$osoba} sa prijemnog - termin {$termin}", 4);
            zamgerlog2("brisem osobu sa prijemnog", $osoba, $termin);
            nicemessage("Kandidat ispisan sa prijemnog ispita");
        }
        $_REQUEST['akcija'] = "pregled";
    }
    // SPISAK KANDIDATA - TABELA
    if ($_REQUEST['akcija'] == "pregled") {
        if ($ciklus_studija == 1) {
            $sirina = "4000";
        } else {
            $sirina = "3000";
        }
        ?>
	<p><a href="?sta=studentska/prijemni&termin=<?php 
        echo $termin;
        ?>
">&lt; &lt; Nazad na unos kandidata</a></p>
	<h3>Pregled kandidata</h3>
	<br />
	
	<hr color="black" width="<?php 
        echo $sirina;
        ?>
">
	<a href="index.php?sta=studentska/prijemni&akcija=pregled&sort=prezime&termin=<?php 
        echo $termin;
        ?>
">Sortirano po prezimenu</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	<a href="index.php?sta=studentska/prijemni&akcija=pregled&sort=bd&termin=<?php 
        echo $termin;
        ?>
">Sortirano po broju dosjea</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	<a href="index.php?sta=studentska/prijemni&akcija=unos&termin=<?php 
        echo $termin;
        ?>
">Dodaj kandidata</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	<a href="index.php?sta=studentska/prijemni&akcija=prijemni&termin=<?php 
        echo $termin;
        ?>
">Unos bodova sa prijemnog ispita</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	<a href="index.php?sta=studentska/prijemni&akcija=kandidati&iz=bih&termin=<?php 
        echo $termin;
        ?>
">Kandidati BiH</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	<a href="index.php?sta=studentska/prijemni&akcija=kandidati&iz=strani&termin=<?php 
        echo $termin;
        ?>
">Kandidati (strani državljani)</a>
	<hr color="black" width="<?php 
        echo $sirina;
        ?>
">
	
	<?php 
        $imena_godina = array();
        $q = myquery("select id, naziv from akademska_godina");
        while ($r = mysql_fetch_row($q)) {
            $imena_godina[$r[0]] = $r[1];
        }
        $imena_studija = array();
        $q = myquery("select id,kratkinaziv from studij");
        while ($r = mysql_fetch_row($q)) {
            $imena_studija[$r[0]] = $r[1];
        }
        $imena_opcina = array();
        $q = myquery("select id, naziv from opcina");
        while ($r = mysql_fetch_row($q)) {
            $imena_opcina[$r[0]] = $r[1];
        }
        $imena_drzava = array();
        $q = myquery("select id, naziv from drzava");
        while ($r = mysql_fetch_row($q)) {
            $imena_drzava[$r[0]] = $r[1];
        }
        $imena_nacionalnosti = array();
        $q = myquery("select id, naziv from nacionalnost");
        while ($r = mysql_fetch_row($q)) {
            $imena_nacionalnosti[$r[0]] = $r[1];
        }
        $imena_skola = $opcina_skola = $domaca_skola = array();
        $q = myquery("select id, naziv, opcina, domaca from srednja_skola");
        while ($r = mysql_fetch_row($q)) {
            $imena_skola[$r[0]] = $r[1];
            $opcina_skola[$r[0]] = $imena_opcina[$r[2]];
            $domaca_skola[$r[0]] = $r[3];
        }
        $imena_mjesta = $opcine_mjesta = $drzave_mjesta = array();
        $q = myquery("select id, naziv, opcina, drzava from mjesto");
        while ($r = mysql_fetch_row($q)) {
            $imena_mjesta[$r[0]] = $r[1];
            $opcine_mjesta[$r[0]] = $imena_opcina[$r[2]];
            $drzave_mjesta[$r[0]] = $imena_drzava[$r[3]];
        }
        $imena_kantona = array();
        $q = myquery("select id, naziv from kanton");
        while ($r = mysql_fetch_row($q)) {
            $imena_kantona[$r[0]] = $r[1];
        }
        if ($ciklus_studija == 1) {
            $sqlSelect = "SELECT o.id, o.ime, o.prezime, o.imeoca, o.prezimeoca, o.imemajke, o.prezimemajke, o.spol, UNIX_TIMESTAMP(o.datum_rodjenja), o.mjesto_rodjenja, o.nacionalnost, o.drzavljanstvo, o.boracke_kategorije, o.jmbg, us.srednja_skola, us.godina, us.ucenik_generacije, o.adresa, o.adresa_mjesto, o.telefon, o.kanton, us.opci_uspjeh, us.kljucni_predmeti, us.dodatni_bodovi, pp.broj_dosjea, ns.naziv, pp.rezultat, pp.izasao, pp.studij_prvi, pp.studij_drugi, pp.studij_treci, pp.studij_cetvrti, pp.broj_dosjea\n\t\tFROM osoba as o, uspjeh_u_srednjoj as us, prijemni_prijava as pp, nacin_studiranja as ns\n\t\tWHERE pp.osoba=o.id and pp.prijemni_termin={$termin} and us.osoba=o.id and pp.nacin_studiranja=ns.id ";
        } else {
            $sqlSelect = "SELECT o.id, o.ime, o.prezime, o.imeoca, o.prezimeoca, o.imemajke, o.prezimemajke, o.spol, UNIX_TIMESTAMP(o.datum_rodjenja), o.mjesto_rodjenja, o.nacionalnost, o.drzavljanstvo, o.boracke_kategorije, o.jmbg, 0, 0, 0, o.adresa, o.adresa_mjesto, o.telefon, o.kanton, pcu.opci_uspjeh, 0, pcu.dodatni_bodovi, pp.broj_dosjea, ns.naziv, pp.rezultat, pp.izasao, pp.studij_prvi, pp.studij_drugi, pp.studij_treci, pp.studij_cetvrti,  pp.broj_dosjea\n\t\tFROM osoba as o, prosliciklus_uspjeh as pcu, prijemni_prijava as pp, nacin_studiranja as ns\n\t\tWHERE pp.osoba=o.id and pp.prijemni_termin={$termin} and pcu.osoba=o.id and pp.nacin_studiranja=ns.id ";
        }
        if ($_REQUEST['sort'] == "bd") {
            $sqlSelect .= "ORDER BY pp.broj_dosjea";
        } else {
            $sqlSelect .= "ORDER BY o.prezime, o.ime";
        }
        $q = myquery($sqlSelect);
        ?>
	
	<table width="<?php 
        echo $sirina;
        ?>
" border="1" cellpadding="1" cellspacing="1" bordercolor="#000000">
	<tr>
	<td width="10"><b>R.br.</b></td>
	<td align="center"><b>Opcije</b></td>
	<td><b>Prezime</b></td>
	<td><b>Ime</b></td>
	<td><b>Prezime oca</b></td>
	<td><b>Ime oca</b></td>
	<td><b>Prezime majke</b></td>
	<td><b>Ime majke</b></td>
	<td><b>Spol</b></td>
	<td width="100"><b>Datum rođenja</b></td>
	<td><b>Mjesto rođenja</b></td>
	<td><b>Općina rođenja</b></td>
	<td><b>Država rođenja</b></td>
	<td><b>Nacionalnost</b></td>
	<td><b>Državljanstvo</b></td>
	<td><b>Por. šeh / RVI</b></td>
	<td><b>JMBG</b></td>
	<?php 
        if ($ciklus_studija == 1) {
            ?>
	<td><b>Završena škola</b></td>
	<td><b>Općina</b></td>
	<td><b>Domaća škola</b></td>
	<td><b>Šk. god.</b></td>
	<td><b>Uč. gen.</b></td><?php 
        }
        ?>
	<td><b>Adresa</b></td>
	<td width="200"><b>Kanton</b></td>
	<td><b>Telefon</b></td>
	<?php 
        if ($ciklus_studija == 1) {
            ?>
	<td width="90"><b>Opći uspjeh</b></td>
	<td width="90"><b>Ključni pred.</b></td>
	<td width="90"><b>Dodatni bod.</b></td>
	<td width="90"><b>Prijemni ispit</b></td><?php 
        } else {
            ?>
	<td width="90"><b>Prethodni ciklus</b></td>
	<td width="90"><b>Dodatni bod.</b></td><?php 
        }
        ?>
	<td width="70"><b>Tip studija</b></td>
	<?php 
        if ($ciklus_studija == 1) {
            ?>
	<td width="80"><b>Odsjek prvi</b></td>
	<td width="80"><b>Odsjek drugi</b></td>
	<td width="80"><b>Odsjek treći</b></td>
	<td width="80"><b>Odsjek četvrti</b></td>
	<?php 
        } else {
            ?>
	<td width="80"><b>Odsjek</b></td><?php 
        }
        ?>
	<td width="10"><b>R.br.</b></td>
	<td align="center"><b>Opcije</b></td>
	</tr>
	
	<?php 
        $brojac = 1;
        while ($kandidat = mysql_fetch_row($q)) {
            ?>
		
		<tr>
		<td align="center"><?php 
            echo $kandidat[24];
            ?>
</td>
		<td align="center">
		<a href="?sta=studentska/prijemni&akcija=obrisi&osoba=<?php 
            echo $kandidat[0];
            ?>
&termin=<?php 
            echo $termin;
            ?>
">Obriši&nbsp;&nbsp;</a>
		<a href="?sta=studentska/prijemni&akcija=unos&izmjena=<?php 
            echo $kandidat[0];
            ?>
&termin=<?php 
            echo $termin;
            ?>
">Izmijeni</a>
		</td>

		<td><?php 
            echo $kandidat[2];
            ?>
</td>
		<td><?php 
            echo $kandidat[1];
            ?>
</td>
		<td><?php 
            echo $kandidat[4];
            ?>
</td>
		<td><?php 
            echo $kandidat[3];
            ?>
</td>
		<td><?php 
            echo $kandidat[6];
            ?>
</td>
		<td><?php 
            echo $kandidat[5];
            ?>
</td>
		<td><?php 
            echo $kandidat[7];
            ?>
</td>
		<td><?php 
            echo date("d. m. Y", $kandidat[8]);
            ?>
</td>
		<td><?php 
            echo $imena_mjesta[$kandidat[9]];
            ?>
</td>
		<td><?php 
            echo $opcine_mjesta[$kandidat[9]];
            ?>
</td>
		<td><?php 
            echo $drzave_mjesta[$kandidat[9]];
            ?>
</td>
		<td><?php 
            echo $imena_nacionalnosti[$kandidat[10]];
            ?>
</td>
		<td><?php 
            echo $imena_drzava[$kandidat[11]];
            ?>
</td>
		<td><?php 
            if ($kandidat[12] == 1) {
                print "DA";
            } else {
                print "&nbsp;";
            }
            ?>
</td>
		<td><?php 
            echo $kandidat[13];
            ?>
</td>
		<?php 
            if ($ciklus_studija == 1) {
                ?>
		<td><?php 
                echo $imena_skola[$kandidat[14]];
                ?>
</td>
		<td><?php 
                echo $opcina_skola[$kandidat[14]];
                ?>
</td>
		<td><?php 
                if ($domaca_skola[$kandidat[14]] > 0) {
                    print "DA";
                } else {
                    print "&nbsp;";
                }
                ?>
</td>
		<td><?php 
                echo $imena_godina[$kandidat[15]];
                ?>
</td>
		<td><?php 
                if ($kandidat[16] > 0) {
                    print "DA";
                } else {
                    print "&nbsp;";
                }
                ?>
</td><?php 
            }
            ?>
		<td><?php 
            echo $kandidat[17];
            ?>
, <?php 
            echo $imena_mjesta[$kandidat[18]];
            ?>
</td>
		<td><?php 
            echo $imena_kantona[$kandidat[20]];
            ?>
</td>
		<td><?php 
            echo $kandidat[19];
            ?>
</td>
		<?php 
            if ($ciklus_studija == 1) {
                ?>
		<td align="center"><?php 
                echo $kandidat[21];
                ?>
</td>
		<td align="center"><?php 
                echo $kandidat[22];
                ?>
</td>
		<td align="center"><?php 
                echo $kandidat[23];
                ?>
</td>
		<td align="center"><?php 
                echo $kandidat[26];
                ?>
</td><?php 
            } else {
                ?>
		<td align="center"><?php 
                echo $kandidat[21];
                ?>
</td>
		<td align="center"><?php 
                echo $kandidat[22];
                ?>
</td><?php 
            }
            ?>
		<td align="center"><?php 
            echo $kandidat[25];
            ?>
</td>
		<td align="center"><?php 
            echo $imena_studija[$kandidat[28]];
            ?>
</td>
		<?php 
            if ($ciklus_studija == 1) {
                ?>
		<td align="center"><?php 
                echo $imena_studija[$kandidat[29]];
                ?>
</td>
		<td align="center"><?php 
                echo $imena_studija[$kandidat[30]];
                ?>
</td>
		<td align="center"><?php 
                echo $imena_studija[$kandidat[31]];
                ?>
</td><?php 
            }
            ?>
		<td align="center"><?php 
            echo $kandidat[24];
            ?>
</td>
		
		<td align="center">
		<a href="?sta=studentska/prijemni&akcija=obrisi&osoba=<?php 
            echo $kandidat[0];
            ?>
&termin=<?php 
            echo $termin;
            ?>
">Obriši&nbsp;&nbsp;</a>
		<a href="?sta=studentska/prijemni&akcija=unos&izmjena=<?php 
            echo $kandidat[0];
            ?>
&termin=<?php 
            echo $termin;
            ?>
">Izmijeni</a>
		</td>
		</tr>
		
		<?php 
            $brojac++;
        }
        ?>
	
	</table>
	
	<hr color="black" width="<?php 
        echo $sirina;
        ?>
">
	<a href="index.php?sta=studentska/prijemni&akcija=pregled&sort=prezime&termin=<?php 
        echo $termin;
        ?>
">Sortirano po prezimenu</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	<a href="index.php?sta=studentska/prijemni&akcija=pregled&sort=bd&termin=<?php 
        echo $termin;
        ?>
">Sortirano po broju dosjea</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	<a href="index.php?sta=studentska/prijemni&akcija=unos&termin=<?php 
        echo $termin;
        ?>
">Dodaj kandidata&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</a>
	<a href="index.php?sta=studentska/prijemni&akcija=prijemni&termin=<?php 
        echo $termin;
        ?>
">Unos bodova sa prijemnog ispita&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font></a>
	<a href="index.php?sta=studentska/prijemni&akcija=kandidati&iz=bih&termin=<?php 
        echo $termin;
        ?>
">Kandidati BiH&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font></a>
	<a href="index.php?sta=studentska/prijemni&akcija=kandidati&iz=strani&termin=<?php 
        echo $termin;
        ?>
">Kandidati (strani državljani)</font></a>
	<hr color="black" width="<?php 
        echo $sirina;
        ?>
">
	<?php 
    }
    // POTVRDA UNOSA KANDIDATA
    // Polje vrstaunosa moze biti:
    // - novi - kreiraju se novi zapisi u tabelama
    // - novigreska - edituju se postojeci zapisi, ali korisnik nema mogucnost unosa ocjena
    // - editovanje - ima mogucnost unosa ocjena
    // - sljedeci - prelazak na unos sljedeceg kandidata
    if ($_POST['akcija'] == 'unospotvrda' && check_csrf_token()) {
        $rosoba = intval($_REQUEST['osoba']);
        $rbrojdosjea = intval($_REQUEST['broj_dosjea']);
        $rime = my_escape(trim($_REQUEST['ime']));
        $rprezime = my_escape(trim($_REQUEST['prezime']));
        $rimeoca = my_escape(trim($_REQUEST['imeoca']));
        $rprezimeoca = my_escape(trim($_REQUEST['prezimeoca']));
        $rimemajke = my_escape(trim($_REQUEST['imemajke']));
        $rprezimemajke = my_escape(trim($_REQUEST['prezimemajke']));
        $rspol = $_REQUEST['spol'];
        // Moze biti samo 'M', 'Z' ili ''
        $rmjestorod = my_escape(trim($_REQUEST['mjesto_rodjenja']));
        $ropcinarod = intval($_REQUEST['opcina_rodjenja']);
        $ropcinavanbihrod = my_escape(trim($_REQUEST['opcina_rodjenja_van_bih']));
        $rdrzavarod = intval($_REQUEST['drzava_rodjenja']);
        $rnacionalnost = my_escape(trim($_REQUEST['nacionalnost']));
        $rdrzavljanstvo = intval($_REQUEST['drzavljanstvo']);
        $rjmbg = $_REQUEST['jmbg'];
        // Bice bolje provjeren
        $rborac = intval($_REQUEST['borac']);
        $rzavrskola = my_escape(trim($_REQUEST['zavrsena_skola']));
        $rskolaopcina = intval($_REQUEST['zavrsena_skola_opcina']);
        $rskoladomaca = intval($_REQUEST['zavrsena_skola_domaca']);
        $rskolagodina = intval($_REQUEST['zavrsena_skola_godina']);
        if ($_REQUEST['ucenik_generacije']) {
            $rgener = 1;
        } else {
            $rgener = 0;
        }
        $radresa = my_escape(trim($_REQUEST['adresa']));
        $radresamjesto = my_escape(trim($_REQUEST['adresa_mjesto']));
        $rtelefon = my_escape(trim($_REQUEST['telefon_roditelja']));
        $rkanton = intval($_REQUEST['kanton']);
        $rnacinstudiranja = intval($_REQUEST['nacin_studiranja']);
        $opi = intval($_REQUEST['studij_prvi_izbor']);
        $odi = intval($_REQUEST['studij_drugi_izbor']);
        $oti = intval($_REQUEST['studij_treci_izbor']);
        $oci = intval($_REQUEST['studij_cetvrti_izbor']);
        $ropci = floatval(str_replace(",", ".", $_REQUEST['opci_uspjeh']));
        $rkljucni = floatval(str_replace(",", ".", $_REQUEST['kljucni_predmeti']));
        $rdodatni = floatval(str_replace(",", ".", $_REQUEST['dodatni_bodovi']));
        $rprijemni = floatval(str_replace(",", ".", $_REQUEST['prijemni']));
        if ($ciklus_studija == 1) {
            $rstrucni_stepen = 5;
            // 5 = bez akademskog zvanja
        } else {
            if ($ciklus_studija == 2) {
                $rstrucni_stepen = 2;
                // 2 = bakalaureat elektrotehnike - ovo bi vjerovatno trebalo unositi
            } else {
                if ($ciklus_studija == 3) {
                    $rstrucni_stepen = 1;
                    // 2 = magistar elektrotehnike - ovo bi vjerovatno trebalo unositi
                }
            }
        }
        // Obrada datuma
        if (preg_match("/(\\d+).*?(\\d+).*?(\\d+)/", $_REQUEST['datum_rodjenja'], $matches)) {
            $dan = $matches[1];
            $mjesec = $matches[2];
            $godina = $matches[3];
            if ($godina < 100) {
                if ($godina < 50) {
                    $godina += 2000;
                } else {
                    $godina += 1900;
                }
            }
            if ($godina < 1000) {
                if ($godina < 900) {
                    $godina += 2000;
                } else {
                    $godina += 1000;
                }
            }
        }
        // Pronalazak mjesta i srednje skole i dodavanje u bazu
        $rmjrid = 0;
        if ($rmjestorod != "") {
            $q300 = myquery("select id from mjesto where naziv like '{$rmjestorod}'");
            if (mysql_num_rows($q300) < 1) {
                if ($ropcinarod == 143) {
                    $q301 = myquery("insert into mjesto set naziv='{$rmjestorod}', opcina={$ropcinarod}, drzava={$rdrzavarod}, opcina_van_bih='{$ropcinavanbihrod}'");
                } else {
                    $q301 = myquery("insert into mjesto set naziv='{$rmjestorod}', opcina={$ropcinarod}, drzava={$rdrzavarod}");
                }
                $q300 = myquery("select id from mjesto where naziv='{$rmjestorod}'");
                zamgerlog("upisano novo mjesto rodjenja {$rmjestorod}", 2);
                zamgerlog2("upisano novo mjesto rodjenja", intval(mysql_result($q300, 0, 0)), 0, 0, $rmjestorod);
            } else {
                $q300 = myquery("select id from mjesto where naziv like '{$rmjestorod}' and opcina={$ropcinarod} and drzava={$rdrzavarod}");
                if (mysql_num_rows($q300) < 1) {
                    // Napravicemo novo mjesto
                    if ($ropcinarod == 143) {
                        $q301 = myquery("insert into mjesto set naziv='{$rmjestorod}', opcina={$ropcinarod}, drzava={$rdrzavarod}, opcina_van_bih='{$ropcinavanbihrod}'");
                    } else {
                        $q301 = myquery("insert into mjesto set naziv='{$rmjestorod}', opcina={$ropcinarod}, drzava={$rdrzavarod}");
                    }
                    $q300 = myquery("select id from mjesto where naziv='{$rmjestorod}' and opcina={$ropcinarod} and drzava={$rdrzavarod}");
                    zamgerlog("promjena opcine/drzave za mjesto rodjenja {$rmjestorod}", 2);
                    zamgerlog2("promjena opcine/drzave za mjesto rodjenja", intval(mysql_result($q300, 0, 0)), 0, 0, $rmjestorod);
                }
            }
            $rmjrid = mysql_result($q300, 0, 0);
        }
        $rnacid = 0;
        if ($rnacionalnost != "") {
            $q302 = myquery("select id from nacionalnost where naziv like '{$rnacionalnost}'");
            if (mysql_num_rows($q302) < 1) {
                $q303 = myquery("insert into nacionalnost set naziv='{$rnacionalnost}'");
                $q302 = myquery("select id from nacionalnost where naziv='{$rnacionalnost}'");
                zamgerlog("upisana nova nacionalnost {$rnacionalnost}", 2);
                zamgerlog2("upisana nova nacionalnost", intval(mysql_result($q302, 0, 0)), 0, 0, $rnacionalnost);
            }
            $rnacid = mysql_result($q302, 0, 0);
        }
        $radmid = 0;
        if ($radresamjesto != "") {
            $q302 = myquery("select id from mjesto where naziv like '{$radresamjesto}'");
            if (mysql_num_rows($q302) < 1) {
                $q303 = myquery("insert into mjesto set naziv='{$radresamjesto}'");
                $q302 = myquery("select id from mjesto where naziv='{$radresamjesto}'");
                zamgerlog("upisano novo mjesto (adresa) {$radresamjesto}", 2);
                zamgerlog2("upisano novo mjesto (adresa)", intval(mysql_result($q302, 0, 0)), 0, 0, $radresamjesto);
            }
            $radmid = mysql_result($q302, 0, 0);
        }
        $rskolaid = 0;
        if ($rzavrskola != "") {
            //		$rzavrskola = str_replace("&quot;", "\\\"", $rzavrskola);
            $rzavrskola = str_replace("\\\\'", "\\'", $rzavrskola);
            $q304 = myquery("select id from srednja_skola where naziv like '{$rzavrskola}'");
            if (mysql_num_rows($q304) < 1) {
                $q305 = myquery("insert into srednja_skola set naziv='{$rzavrskola}', opcina={$rskolaopcina}, domaca={$rskoladomaca}");
                $q304 = myquery("select id from srednja_skola where naziv='{$rzavrskola}' and opcina={$rskolaopcina} and domaca={$rskoladomaca}");
                zamgerlog("upisana nova srednja skola {$rzavrskola}", 2);
                zamgerlog2("upisana nova srednja skola", intval(mysql_result($q304, 0, 0)), 0, 0, $rzavrskola);
            } else {
                $q304 = myquery("select id from srednja_skola where naziv like '{$rzavrskola}' and opcina={$rskolaopcina} and domaca={$rskoladomaca}");
                if (mysql_num_rows($q304) < 1) {
                    $q305 = myquery("insert into srednja_skola set naziv='{$rzavrskola}', opcina={$rskolaopcina}, domaca={$rskoladomaca}");
                    $q304 = myquery("select id from srednja_skola where naziv='{$rzavrskola}' and opcina={$rskolaopcina} and domaca={$rskoladomaca}");
                    zamgerlog("promjena opcine / statusa domacinstva za skolu {$rzavrskola}", 2);
                    zamgerlog2("promjena opcine / statusa domacinstva za skolu", intval(mysql_result($q304, 0, 0)), 0, 0, $rzavrskola);
                }
            }
            $rskolaid = mysql_result($q304, 0, 0);
        }
        // Dodatne provjere integriteta koje je lakše uraditi u PHPu nego u JavaScriptu
        $greska = 0;
        if (!preg_match("/\\w/", $rime)) {
            niceerror("Ime nije ispravno");
            $greska = 1;
            $greskaime = 1;
        }
        if (!preg_match("/\\w/", $rprezime)) {
            niceerror("Prezime nije ispravno");
            $greska = 1;
            $greskaprezme = 1;
        }
        if ($rspol != 'M' && $rspol != 'Z' && $rspol != '') {
            niceerror("Spol nije ispravan");
            $greska = 1;
        }
        if ($rmjrid == 0) {
            niceerror("Nije uneseno mjesto rođenja");
            $greska = 1;
            $greskamjestorod = 1;
        }
        if ($rdrzavljanstvo != 1 && $rkanton != 13) {
            // 1 = bih
            niceerror("Državljanstvo je različito od 'BiH' (" . $rdrzavljanstvo . "), a kanton nije stavljen na 'Strani državljanin'");
            $greska = 1;
            $greskadrzavljanstvo = 1;
        }
        if (testjmbg($rjmbg) != "") {
            niceerror("JMBG neispravan: " . testjmbg($rjmbg));
            $greska = 1;
            $greskajmbg = 1;
        }
        if (preg_match("/(\\d+).*?(\\d+).*?(\\d+)/", $_REQUEST['datum_rodjenja'], $matches)) {
            // Ovo je već urađeno:
            // $dan=$matches[1]; $mjesec=$matches[2]; $godina=$matches[3];
            if (!checkdate($mjesec, $dan, $godina)) {
                niceerror("Datum rođenja je kalendarski nemoguć ({$dan}. {$mjesec}. {$godina})");
                $greskadatumrod = 1;
                $greska = 1;
            }
            $jdan = intval(substr($_REQUEST['jmbg'], 0, 2));
            $jmjesec = intval(substr($_REQUEST['jmbg'], 2, 2));
            $jgodina = intval(substr($_REQUEST['jmbg'], 4, 3));
            if ($jgodina > 900) {
                $jgodina += 1000;
            } else {
                $jgodina += 2000;
            }
            if ($dan != $jdan || $mjesec != $jmjesec || $godina != $jgodina) {
                niceerror("Uneseni datum rođenja se ne poklapa s onim u JMBGu");
                $greska = 1;
                $greskadatumrod = 1;
            }
        } else {
            niceerror("Datum rođenja nije ispravan - ne sadrži dovoljan broj cifara.");
            $greska = 1;
            $greskadatumrod = 1;
        }
        // Transakcija!
        $q305 = myquery("lock tables osoba write, prijemni_prijava write, uspjeh_u_srednjoj write, log write, prosliciklus_uspjeh write");
        // Da li se broj dosjea ponavlja??
        if ($_REQUEST['vrstaunosa'] == "novi" || $rosoba == 0) {
            $q308 = myquery("select count(*) from prijemni_prijava where broj_dosjea={$rbrojdosjea} and prijemni_termin={$termin}");
        } else {
            $q308 = myquery("select count(*) from prijemni_prijava where broj_dosjea={$rbrojdosjea} and prijemni_termin={$termin} and osoba!={$rosoba}");
        }
        if (mysql_result($q308, 0, 0) > 0) {
            niceerror("Broj dosjea {$rbrojdosjea} je već unesen! Izaberite neki drugi redni broj.");
            $greska = 1;
            $greskabrojdos = 1;
        }
        // Dodajemo novog kandidata u tabele osoba, prijemni_prijava i uspjeh_u_srednjoj
        if ($_REQUEST['vrstaunosa'] == "novi" || $rosoba == 0) {
            // Nova osoba
            //$min_id=1;
            $min_id = 2500;
            // radi lakseg grupisanja brojeva
            $q310 = myquery("select id+1 from osoba where id>={$min_id} order by id desc limit 1");
            if (mysql_num_rows($q310) < 1) {
                $rosoba = $min_id;
            } else {
                $rosoba = mysql_result($q310, 0, 0);
            }
            $q320 = myquery("insert into osoba set id={$rosoba}, ime='{$rime}', prezime='{$rprezime}', imeoca='{$rimeoca}', prezimeoca='{$rprezimeoca}', imemajke='{$rimemajke}', prezimemajke='{$rprezimemajke}', spol='{$rspol}', brindexa='', datum_rodjenja='{$godina}-{$mjesec}-{$dan}', mjesto_rodjenja={$rmjrid}, drzavljanstvo={$rdrzavljanstvo}, nacionalnost={$rnacid}, boracke_kategorije={$rborac}, jmbg='{$rjmbg}', adresa='{$radresa}', adresa_mjesto={$radmid}, telefon='{$rtelefon}', kanton={$rkanton}, treba_brisati=0, strucni_stepen={$rstrucni_stepen}, naucni_stepen=6");
            // 6 = bez naucnog stepena
            // Nova prijava prijemni
            $q330 = myquery("insert into prijemni_prijava set prijemni_termin={$termin}, osoba={$rosoba}, broj_dosjea={$rbrojdosjea}, nacin_studiranja={$rnacinstudiranja}, studij_prvi={$opi}, studij_drugi={$odi}, studij_treci={$oti}, studij_cetvrti={$oci}, izasao=0, rezultat=0");
            // Novi uspjeh u srednjoj -- samo za prvi ciklus
            if ($ciklus_studija == 1) {
                $q340 = myquery("insert into uspjeh_u_srednjoj set osoba={$rosoba}, srednja_skola={$rskolaid}, godina={$rskolagodina}, opci_uspjeh=0, kljucni_predmeti=0, dodatni_bodovi=0, ucenik_generacije={$rgener}");
            } else {
                $broj_semestara = intval($_REQUEST['broj_semestara']);
                $q340 = myquery("insert into prosliciklus_uspjeh set osoba={$rosoba}, fakultet=0, akademska_godina=0, broj_semestara={$broj_semestara}, opci_uspjeh=0, dodatni_bodovi=0");
            }
            zamgerlog("novi kandidat za prijemni u{$rosoba} broj dosjea {$rbrojdosjea}", 2);
            // Nastavljamo sa unosom ocjena:
            $_REQUEST['akcija'] = "unos";
            $vrstaunosa = "editovanje";
            $osoba = $rosoba;
            // Ako dodje do greske, mi cemo ubaciti podatke u bazu ali cemo jednostavno traziti da se ponovo unesu
            if ($greska == 1) {
                $vrstaunosa = "novigreska";
            }
        } else {
            // Editovanje postojeceg kandidata
            // Updatujem osobu
            $q350 = myquery("update osoba set ime='{$rime}', prezime='{$rprezime}', imeoca='{$rimeoca}', prezimeoca='{$rprezimeoca}', imemajke='{$rimemajke}', prezimemajke='{$rprezimemajke}', spol='{$rspol}', datum_rodjenja='{$godina}-{$mjesec}-{$dan}', mjesto_rodjenja={$rmjrid}, drzavljanstvo={$rdrzavljanstvo}, nacionalnost={$rnacid}, boracke_kategorije={$rborac}, jmbg='{$rjmbg}', adresa='{$radresa}', adresa_mjesto={$radmid}, telefon='{$rtelefon}', kanton={$rkanton}, treba_brisati=0 where id={$rosoba}");
            // Updatujem prijavu prijemnog
            $q360 = myquery("update prijemni_prijava set broj_dosjea={$rbrojdosjea}, nacin_studiranja={$rnacinstudiranja}, studij_prvi={$opi}, studij_drugi={$odi}, studij_treci={$oti}, studij_cetvrti={$oci}, rezultat={$rprijemni} where osoba={$rosoba} and prijemni_termin={$termin}");
            // Updatujem uspjeh u srednjoj -- samo za prvi ciklus
            if ($ciklus_studija == 1) {
                $q370 = myquery("update uspjeh_u_srednjoj set srednja_skola={$rskolaid}, godina={$rskolagodina}, opci_uspjeh={$ropci}, kljucni_predmeti={$rkljucni}, dodatni_bodovi={$rdodatni}, ucenik_generacije={$rgener} where osoba={$rosoba}");
            } else {
                $broj_semestara = intval($_REQUEST['broj_semestara']);
                $q340 = myquery("update prosliciklus_uspjeh set broj_semestara={$broj_semestara}, opci_uspjeh={$ropci}, dodatni_bodovi={$rdodatni} where osoba={$rosoba}");
            }
            zamgerlog("izmjena kandidata za prijemni u{$rosoba} broj dosjea {$rbrojdosjea}", 2);
            $_REQUEST['akcija'] = "unos";
            // Ako je prethodni unos bio posljedica greske...
            if ($_REQUEST['vrstaunosa'] == "novigreska") {
                // ...prelazimo na unos ocjena
                $vrstaunosa = "editovanje";
                $osoba = $rosoba;
                // zaboravi osobu
                if ($greska == 1) {
                    $vrstaunosa = "novigreska";
                }
                // osim ako nije opet greska
                // Kod editovanja...
            } else {
                // ...unosimo sljedeceg kandidata
                $vrstaunosa = "novi";
                $osoba = 0;
                // zaboravi osobu
                if ($greska == 1) {
                    // u slucaju greske ponovo editujemo
                    $vrstaunosa = "editovanje";
                    $osoba = $rosoba;
                }
            }
        }
        // Kraj transakcije
        $q380 = myquery("unlock tables");
        if ($_REQUEST['vrstaunosa'] == "novi" || $rosoba == 0) {
            zamgerlog2("novi kandidat za prijemni", intval($rosoba), 0, 0, $rbrojdosjea);
        } else {
            zamgerlog2("izmjena kandidata za prijemni", intval($rosoba), 0, 0, $rbrojdosjea);
        }
    }
    // AKCIJA=UNOS NOVOG STUDENTA
    if ($_REQUEST['akcija'] == "unos") {
        // Polje vrstaunosa moze biti:
        // - novi - kreiraju se novi zapisi u tabelama
        // - novigreska - edituju se postojeci zapisi, ali korisnik nema mogucnost unosa ocjena
        // - editovanje - ima mogucnost unosa ocjena
        // - sljedeci - prelazak na unos sljedeceg kandidata
        if (!$vrstaunosa) {
            // ako je prosli put unosen novi kandidat, varijabla $osoba je definisana u akciji unospotvrda
            if (intval($_REQUEST['izmjena']) > 0) {
                $vrstaunosa = "editovanje";
                $osoba = intval($_REQUEST['izmjena']);
            } else {
                $vrstaunosa = "novi";
            }
        }
        // Traženje postojeće osobe po JMBGu
        if (intval($_REQUEST['trazijmbg']) > 0) {
            $jmbg = my_escape($_REQUEST['trazijmbg']);
            // u biti ne znamo format JMBGa
            $q1 = myquery("select id from osoba where jmbg='{$jmbg}'");
            if (mysql_num_rows($q1) < 1) {
                niceerror("Traženi JMBG nije pronađen ({$jmbg}).");
                $vrstaunosa = "novi";
                $ejmbg = $jmbg;
            } else {
                $osoba = mysql_result($q1, 0, 0);
                $vrstaunosa = "editovanje";
                // Da li je osoba vec na prijemnom?
                $q2 = myquery("select count(*) from prijemni_prijava where prijemni_termin={$termin} and osoba={$osoba}");
                if (mysql_result($q2, 0, 0) > 0) {
                    nicemessage("Osoba sa JMBGom već prijavljena na prijemni");
                } else {
                    // Broj dosjea postavljamo na prvi slobodan
                    $q3 = myquery("select broj_dosjea+1 from prijemni_prijava where prijemni_termin={$termin} order by broj_dosjea desc limit 1");
                    if (mysql_num_rows($q3) < 1) {
                        $nbrojdosjea = 1;
                    } else {
                        $nbrojdosjea = mysql_result($q3, 0, 0);
                    }
                    // Kod upisa na više cikluse, pretpostavljamo da će upisati isti studij
                    // što određujemo na osnovu institucije
                    $sp = 0;
                    if ($ciklus_studija > 1) {
                        $q4 = myquery("select s.institucija from studij as s, student_studij as ss where ss.student={$osoba} and ss.studij=s.id order by ss.akademska_godina desc, ss.semestar desc limit 1");
                        if (mysql_num_rows($q4) > 0) {
                            // Da li je ikada studirao išta ovdje?
                            $q5 = myquery("select s.id from studij as s, tipstudija as ts where s.institucija=" . mysql_result($q4, 0, 0) . " and s.tipstudija=ts.id and ts.ciklus<={$ciklus_studija}");
                            $sp = mysql_result($q5, 0, 0);
                        }
                        // Brišemo ranije podatke o uspjehu kako ne bismo stvorili konflikt sa podacima sa prošlog prijemnog (MSc -> PhD)
                        $q5a = myquery("delete from prosliciklus_ocjene where osoba={$osoba}");
                        $q5b = myquery("delete from prosliciklus_uspjeh where osoba={$osoba}");
                    }
                    $q6 = myquery("insert into prijemni_prijava set prijemni_termin={$termin}, osoba={$osoba}, broj_dosjea={$nbrojdosjea}, studij_prvi={$sp}");
                    // Treba li kreirati novi obrazac?
                    $q6a = myquery("select count(*) from prijemni_obrazac where prijemni_termin={$termin} and osoba={$osoba}");
                    if (mysql_result($q6a, 0, 0) == 0) {
                        do {
                            $sifra = chr(ord('A') + rand(0, 7)) . chr(ord('A') + rand(0, 7)) . chr(ord('A') + rand(0, 7)) . rand(1, 8) . rand(1, 8);
                            $q3015 = myquery("select count(*) from prijemni_obrazac where sifra='{$sifra}' and prijemni_termin={$termin}");
                        } while (mysql_result($q3015, 0, 0) > 0);
                        $q6b = myquery("insert into prijemni_obrazac set prijemni_termin={$termin}, osoba={$osoba}, sifra='{$sifra}', jezik='bs'");
                    }
                    nicemessage("Prijavljujem osobu na prijemni ispit");
                }
                // Da li je potrebno kreirati zapis u tabeli "uspjeh u srednjoj"? samo za prvi ciklus
                if ($ciklus_studija == 1) {
                    $q7 = myquery("select count(*) from uspjeh_u_srednjoj where osoba={$osoba}");
                    if (mysql_result($q7, 0, 0) < 1) {
                        $q8 = myquery("insert into uspjeh_u_srednjoj set osoba={$osoba}");
                        // Ostale stvari ce biti popunjene kroz formular
                    }
                } else {
                    // Za više cikluse, popunićemo tabelu podacima o prethodnom ciklusu iz Zamgera
                    $q9 = myquery("select ko.ocjena, p.ects, pk.semestar from konacna_ocjena as ko, ponudakursa as pk, predmet as p, student_predmet as sp, studij as s, tipstudija as ts where ko.student={$osoba} and ko.predmet=pk.predmet and ko.akademska_godina=pk.akademska_godina and pk.predmet=p.id and pk.id=sp.predmet and sp.student={$osoba} and pk.studij=s.id and s.tipstudija=ts.id and ts.ciklus=" . ($ciklus_studija - 1));
                    $bodovi = 0;
                    // Odmah izracunavamo i bodove
                    $rednibroj = 1;
                    $maxsemestar = 0;
                    $sumaects = 0;
                    $sumaocjena = 0;
                    $brojocjena = 0;
                    while ($r9 = mysql_fetch_row($q9)) {
                        $q10 = myquery("insert into prosliciklus_ocjene set osoba={$osoba}, redni_broj={$rednibroj}, ocjena={$r9['0']}, ects={$r9['1']}");
                        $rednibroj++;
                        $bodovi += $r9[0] * $r9[1];
                        $sumaects += $r9[1];
                        if ($r9[2] > $maxsemestar) {
                            $maxsemestar = $r9[2];
                        }
                        $sumaocjena += $r9[0];
                        $brojocjena++;
                    }
                    // bodovi = suma od (ocjena*ects) / suma ects / brojsemestara
                    //$bodovi = $bodovi / $sumaects / $maxsemestar;
                    // Po novom konkursu od 2010. godine za rangiranje se uzima samo prosjek
                    // Po konkursu iz 2012. godine prosjek se množi sa 10 (max. 100 bodova) da bi se sabrao sa 40 bodova sa prijemnog ispita
                    if ($brojocjena > 0) {
                        $bodovi = round($sumaocjena / $brojocjena * 100) / 10;
                    } else {
                        $bodovi = 0;
                    }
                    $q11 = myquery("insert into prosliciklus_uspjeh set osoba={$osoba}, opci_uspjeh={$bodovi}, broj_semestara={$maxsemestar}");
                }
            }
        }
        // Preuzimanje podataka iz baze u slučaju editovanja
        // Neke default vrijednosti
        $enacinstudiranja = 1;
        // Redovni studij
        $eopci = $ekljucni = $edodatni = $eprijemni = 0;
        // Bodove postavljamo na nulu
        $edrzavarodjenja = $edrzavljanstvo = 1;
        // BiH
        $eskoladomaca = 1;
        // domaća škola je default
        $eskolazavrsena = 0;
        // godina završetka škole će biti prošla
        if ($osoba > 0) {
            $q = myquery("select o.ime, o.prezime, o.imeoca, o.prezimeoca, o.imemajke, o.prezimemajke, o.spol, UNIX_TIMESTAMP(o.datum_rodjenja), o.mjesto_rodjenja, o.drzavljanstvo, o.nacionalnost, o.jmbg, o.boracke_kategorije, o.adresa, o.adresa_mjesto, o.telefon, o.kanton, pp.nacin_studiranja, pp.studij_prvi, pp.studij_drugi, pp.studij_treci, pp.studij_cetvrti, pp.rezultat, pp.broj_dosjea, pp.izasao from osoba as o, prijemni_prijava as pp where o.id={$osoba} and o.id=pp.osoba and pp.prijemni_termin={$termin}");
            $eime = mysql_result($q, 0, 0);
            $eprezime = mysql_result($q, 0, 1);
            $eimeoca = mysql_result($q, 0, 2);
            $eprezimeoca = mysql_result($q, 0, 3);
            $eimemajke = mysql_result($q, 0, 4);
            $eprezimemajke = mysql_result($q, 0, 5);
            $espol = mysql_result($q, 0, 6);
            $edatum = date("d. m. Y.", mysql_result($q, 0, 7));
            $emjesto = mysql_result($q, 0, 8);
            $edrzavljanstvo = mysql_result($q, 0, 9);
            $enacionalnost = mysql_result($q, 0, 10);
            $ejmbg = mysql_result($q, 0, 11);
            $eborac = mysql_result($q, 0, 12);
            $eadresa = mysql_result($q, 0, 13);
            $eadresamjesto = mysql_result($q, 0, 14);
            $etelefon = mysql_result($q, 0, 15);
            $ekanton = mysql_result($q, 0, 16);
            $enacinstudiranja = mysql_result($q, 0, 17);
            $eopi = mysql_result($q, 0, 18);
            $eodi = mysql_result($q, 0, 19);
            $eoti = mysql_result($q, 0, 20);
            $eoci = mysql_result($q, 0, 21);
            $eprijemni = mysql_result($q, 0, 22);
            $ebrojdosjea = mysql_result($q, 0, 23);
            $eizasao = mysql_result($q, 0, 24);
            if ($ciklus_studija == 1) {
                // Uzimamo podatke za srednju skolu - samo ako se upisuje na prvi ciklus
                $q300 = myquery("select srednja_skola, godina, opci_uspjeh, kljucni_predmeti, dodatni_bodovi, ucenik_generacije from uspjeh_u_srednjoj where osoba={$osoba}");
                $eskola = mysql_result($q300, 0, 0);
                $eskolazavr = mysql_result($q300, 0, 1);
                $eopci = mysql_result($q300, 0, 2);
                $ekljucni = mysql_result($q300, 0, 3);
                $edodatni = mysql_result($q300, 0, 4);
                $egener = mysql_result($q300, 0, 5);
            } else {
                // podaci za prosli ciklus
                $q310 = myquery("select fakultet, akademska_godina, opci_uspjeh, dodatni_bodovi, broj_semestara from prosliciklus_uspjeh where osoba={$osoba}");
                $efakultet = mysql_result($q310, 0, 0);
                $eskolazavr = mysql_result($q300, 0, 1);
                $eopci = mysql_result($q310, 0, 2);
                $edodatni = mysql_result($q310, 0, 3);
                $ebrojsem = mysql_result($q310, 0, 4);
            }
        } else {
            if ($vrstaunosa == "novigreska") {
                $ebrojdosjea = $rbrojdosjea;
            } else {
                // Nova osoba
                // Odredjujemo broj dosjea
                $q220 = myquery("select broj_dosjea+1 from prijemni_prijava where prijemni_termin={$termin} order by broj_dosjea desc limit 1");
                if (mysql_num_rows($q220) < 1) {
                    $ebrojdosjea = 1;
                } else {
                    $ebrojdosjea = mysql_result($q220, 0, 0);
                }
            }
        }
        // Spisak dostupnih studija ovisno o ciklusu studija
        $q230 = myquery("select s.id, s.kratkinaziv from studij as s, tipstudija as ts where s.moguc_upis=1 and s.tipstudija=ts.id and ts.ciklus={$ciklus_studija} order by s.kratkinaziv");
        $studiji = array();
        $sstudimena = "";
        $sstudbrojevi = "";
        while ($r230 = mysql_fetch_row($q230)) {
            $studiji[$r230[0]] = $r230[1];
            if ($sstudimena != "") {
                $sstudimena .= ",";
            }
            $sstudimena .= "'" . $r230[1] . "'";
            if ($sstudbrojevi != "") {
                $sstudbrojevi .= ",";
            }
            $sstudbrojevi .= "'" . $r230[0] . "'";
        }
        // Spisak gradova za mjesto rodjenja i adresu
        $q240 = myquery("select id, naziv, opcina, drzava, opcina_van_bih from mjesto order by naziv");
        $gradovir = "<option></option>";
        $gradovia = "<option></option>";
        $eopcinarodjenja = $edrzavarodjenja = 0;
        while ($r240 = mysql_fetch_row($q240)) {
            $gradovir .= "<option";
            $gradovia .= "<option";
            if ($r240[0] == $emjesto) {
                $gradovir .= " SELECTED";
                $mjestorvalue = $r240[1];
                $eopcinarodjenja = $r240[2];
                $edrzavarodjenja = $r240[3];
                if ($edrzavarodjenja == 1) {
                    $eopcinavanbih = "";
                } else {
                    $eopcinavanbih = $r240[4];
                }
            }
            if ($r240[0] == $eadresamjesto) {
                $gradovia .= " SELECTED";
                $adresarvalue = $r240[1];
            }
            $gradovir .= " onClick=\"javascript:selectujOpcinuRodjenja('{$r240['2']}', '{$r240['3']}');\">{$r240['1']}</option>\n";
            $gradovia .= ">{$r240['1']}</option>\n";
        }
        // Spisak srednjih skola
        $q250 = myquery("select id, naziv, opcina, domaca from srednja_skola order by naziv");
        $srednjer = "<option></option>";
        $eskolaopcina = $eskoladomaca = 0;
        while ($r250 = mysql_fetch_row($q250)) {
            $srednjer .= "<option";
            if ($r250[0] == $eskola) {
                $srednjer .= " SELECTED";
                $skolarvalue = $r250[1];
                $eskolaopcina = $r250[2];
                $eskoladomaca = $r250[3];
            }
            $srednjer .= " onClick=\"javascript:selectujOpcinuSkola('{$r250['2']}', '{$r250['3']}');\">{$r250['1']}</option>\n";
        }
        // Spisak opština
        $q255 = myquery("select id, naziv from opcina order by naziv");
        $opciner = "<option></option>";
        $opcinerodjr = "<option></option>";
        while ($r255 = mysql_fetch_row($q255)) {
            $opciner .= "<option value=\"{$r255['0']}\" ";
            if ($r255[0] == $eskolaopcina) {
                $opciner .= " SELECTED";
            }
            $opciner .= ">{$r255['1']}</option>\n";
            $opcinerodjr .= "<option value=\"{$r255['0']}\" ";
            if ($r255[0] == $eopcinarodjenja) {
                $opcinerodjr .= " SELECTED";
            }
            $opcinerodjr .= ">{$r255['1']}</option>\n";
        }
        // Spisak nacionalnosti
        $q256 = myquery("select id, naziv from nacionalnost order by naziv");
        $nacionalnostr = "<option></option>";
        while ($r256 = mysql_fetch_row($q256)) {
            $nacionalnostr .= "<option";
            if ($r256[0] == $enacionalnost) {
                $nacionalnostr .= " SELECTED";
                $nacionalnostrvalue = $r256[1];
            }
            $nacionalnostr .= ">{$r256['1']}</option>\n";
        }
        // Spisak država
        $q257 = myquery("select id, naziv from drzava order by naziv");
        $drzaverodjr = "<option></option>";
        $drzavljanstvor = "<option></option>";
        while ($r257 = mysql_fetch_row($q257)) {
            $drzaverodjr .= "<option value=\"{$r257['0']}\" ";
            if ($r257[0] == $edrzavarodjenja) {
                $drzaverodjr .= " SELECTED";
            }
            $drzaverodjr .= ">{$r257['1']}</option>\n";
            $drzavljanstvor .= "<option value=\"{$r257['0']}\" ";
            if ($r257[0] == $edrzavljanstvo) {
                $drzavljanstvor .= " SELECTED";
            }
            $drzavljanstvor .= ">{$r257['1']}</option>\n";
        }
        // Spisak ak. godina
        $q258 = myquery("select id, naziv, aktuelna from akademska_godina order by naziv");
        $skolazavr = "<option></option>";
        while ($r258 = mysql_fetch_row($q258)) {
            $skolazavr .= "<option value=\"{$r258['0']}\" ";
            if ($r258[0] == $eskolazavrsena) {
                $skolazavr .= " SELECTED";
            }
            if ($r258[2] == 1 && $eskolazavrsena == 0) {
                $skolazavr .= " SELECTED";
            }
            $skolazavr .= ">{$r258['1']}</option>\n";
        }
        // Spisak kantona
        $q259 = myquery("select id, naziv from kanton order by naziv");
        $kantonr = "<option></option>";
        while ($r259 = mysql_fetch_row($q259)) {
            $kantonr .= "<option value=\"{$r259['0']}\" ";
            if ($r259[0] == $ekanton) {
                $kantonr .= " SELECTED";
            }
            $kantonr .= ">{$r259['1']}</option>\n";
        }
        // Spisak načina studiranja
        $q259a = myquery("select id, naziv from nacin_studiranja where moguc_upis=1 order by id");
        $nacinstudiranjar = "";
        // Nema blank opcije
        while ($r259a = mysql_fetch_row($q259a)) {
            $nacinstudiranjar .= "<option value=\"{$r259a['0']}\" ";
            if ($r259a[0] == $enacinstudiranja) {
                $nacinstudiranjar .= " SELECTED";
            }
            $nacinstudiranjar .= ">{$r259a['1']}</option>\n";
        }
        // Tabela za unos podataka - design
        ?>
<h3>Unos kandidata</h3>
<br />

<SCRIPT language="JavaScript">

// Funkcija update_izobre() kod izbora studija kao "prvi izbor" izbacuje taj studij iz liste za drugi, treci itd. 
// Slicno radi i za drugi i treci izbor.

function update_izbore() {
	var studijiimena = new Array(<?php 
        echo $sstudimena;
        ?>
);
	var studijibrojevi = new Array(<?php 
        echo $sstudbrojevi;
        ?>
);
	var prvi = document.getElementById('studij_prvi_izbor');
	odzuti(prvi);
	var drugi = document.getElementById('studij_drugi_izbor');
	var treci = document.getElementById('studij_treci_izbor');
	var cetvrti = document.getElementById('studij_cetvrti_izbor');
	var drugval = drugi.value;
	while (drugi.length>1)
		drugi.options[1]=null;
	for (i=0; i<4; i++) {
		if (studijibrojevi[i] != prvi.value) { 
			drugi.options[drugi.length]=new Option(studijiimena[i],studijibrojevi[i]);
			if (drugval==studijibrojevi[i]) drugi.selectedIndex=drugi.length-1;
		}
	}
	var trecval = treci.value;
	while (treci.length>1)
		treci.options[1]=null;
	for (i=0; i<4; i++) {
		if (studijibrojevi[i] != prvi.value && studijibrojevi[i] != drugi.value) { 
			treci.options[treci.length]=new Option(studijiimena[i],studijibrojevi[i]);
			if (trecval==studijibrojevi[i]) treci.selectedIndex=treci.length-1;
		}
	}
	var cetval = cetvrti.value;
	while (cetvrti.length>1)
		cetvrti.options[1]=null;
	for (i=0; i<4; i++) {
		if (studijibrojevi[i] != prvi.value && studijibrojevi[i] != drugi.value && studijibrojevi[i] != treci.value) { 
			cetvrti.options[cetvrti.length]=new Option(studijiimena[i],studijibrojevi[i]);
			if (cetval==studijibrojevi[i]) cetvrti.selectedIndex=cetvrti.length-1;
		}
	}
}

// Kada korisnik ukuca nesto u obavezno polje, ono prestaje biti zuto (postaje bijelo)
function odzuti(nesto) {
	nesto.style.backgroundColor = '#FFFFFF';
}

// Predji na sljedece polje pritiskom na dugme enter
function enterhack(e,gdje) {
	if(e.keyCode==13) {
		document.getElementById(gdje).focus();
		return false;
	}
}

// Trazimo osobu sa datim JMBGom u bazi
function jmbg_trazi() {
	var jmbg = document.getElementById('jmbg').value;
	document.location.replace('index.php?sta=studentska/prijemni&akcija=unos&trazijmbg='+jmbg+'&termin=<?php 
        echo $termin;
        ?>
');
}

// Automatski izbor općine za školu
function selectujOpcinuSkola(idOpcine, domaca) {
	var selOpcine = document.getElementById('zavrsena_skola_opcina');
	for (i=0; i<selOpcine.length; i++)
		if (parseInt(selOpcine.options[i].value)==idOpcine) selOpcine.selectedIndex=i;
	if (idOpcine==0) selOpcine.selectedIndex=0;
	else odzuti(selOpcine);

	// Ovo moze ne raditi...
	if (document.glavnaforma && document.glavnaforma.zavrsena_skola_domaca) {
		var radioDomaca = document.glavnaforma.zavrsena_skola_domaca;
		for (i=0; i<radioDomaca.length; i++) {
			//alert ("forma "+i);
			if (parseInt(radioDomaca[i].value) == domaca) radioDomaca[i].checked=true;
		}
	}
}

// Automatski izbor općine za mjesto rođenja
function selectujOpcinuRodjenja(idOpcine, idDrzave) {
	var selOpcine = document.getElementById('opcina_rodjenja');
	for (i=0; i<selOpcine.length; i++)
		if (parseInt(selOpcine.options[i].value)==idOpcine) selOpcine.selectedIndex=i;
	if (idOpcine==0) selOpcine.selectedIndex=0;
	else odzuti(selOpcine);

	var selDrzave = document.getElementById('drzava_rodjenja');
	for (i=0; i<selDrzave.length; i++)
		if (parseInt(selDrzave.options[i].value)==idDrzave) selDrzave.selectedIndex=i;
	if (idDrzave==0) selDrzave.selectedIndex=0;
	else odzuti(selDrzave);
}
</SCRIPT>

<script type="text/javascript" src="js/mycombobox.js"></script>

<?php 
        // Nećemo da se ove varijable pojavljuju u genform
        unset($_REQUEST['osoba']);
        unset($_REQUEST['vrstaunosa']);
        unset($_REQUEST['broj_dosjea']);
        unset($_REQUEST['ime']);
        unset($_REQUEST['prezime']);
        unset($_REQUEST['imeoca']);
        unset($_REQUEST['prezimeoca']);
        unset($_REQUEST['imemajke']);
        unset($_REQUEST['prezimemajke']);
        unset($_REQUEST['spol']);
        unset($_REQUEST['datum_rodjenja']);
        unset($_REQUEST['mjesto_rodjenja']);
        unset($_REQUEST['opcina_rodjenja']);
        unset($_REQUEST['drzava_rodjenja']);
        unset($_REQUEST['nacionalnost']);
        unset($_REQUEST['drzavljanstvo']);
        unset($_REQUEST['jmbg']);
        unset($_REQUEST['borac']);
        unset($_REQUEST['zavrsena_skola']);
        unset($_REQUEST['zavrsena_skola_opcina']);
        unset($_REQUEST['zavrsena_skola_godina']);
        unset($_REQUEST['zavrsena_skola_domaca']);
        unset($_REQUEST['adresa']);
        unset($_REQUEST['adresa_mjesto']);
        unset($_REQUEST['telefon_roditelja']);
        unset($_REQUEST['tip_studija']);
        unset($_REQUEST['ucenik_generacije']);
        unset($_REQUEST['studij_prvi_izbor']);
        unset($_REQUEST['studij_drugi_izbor']);
        unset($_REQUEST['studij_treci_izbor']);
        unset($_REQUEST['studij_cetvrti_izbor']);
        unset($_REQUEST['prijemni']);
        unset($_REQUEST['opci_uspjeh']);
        unset($_REQUEST['kljucni_predmeti']);
        unset($_REQUEST['dodatni_bodovi']);
        unset($_REQUEST['trazijmbg']);
        // Navigacija na sljedeći i prethodni broj dosjea
        // Dostupna samo ako postoji broj
        $q260 = myquery("select osoba from prijemni_prijava where broj_dosjea<" . intval($ebrojdosjea) . " and prijemni_termin={$termin} order by broj_dosjea desc limit 1");
        if (mysql_num_rows($q260) > 0) {
            $lijevodugme = '<input type="button" value="  <<  " onclick="javascript:document.location.replace(\'index.php?sta=studentska/prijemni&akcija=unos&izmjena=' . mysql_result($q260, 0, 0) . '&termin=' . $termin . '\')"> ';
        } else {
            $lijevodugme = '<input type="button" value="  <<  " disabled> ';
        }
        $q270 = myquery("select osoba from prijemni_prijava where broj_dosjea>" . intval($ebrojdosjea) . " and prijemni_termin={$termin} order by broj_dosjea limit 1");
        if (mysql_num_rows($q270) > 0) {
            $desnodugme = '<input type="button" value="  >>  " onclick="javascript:document.location.replace(\'index.php?sta=studentska/prijemni&akcija=unos&izmjena=' . mysql_result($q270, 0, 0) . '&termin=' . $termin . '\')"> ';
        } else {
            $desnodugme = '<input type="button" value="  >>  " disabled> ';
        }
        print genform("POST", "glavnaforma");
        ?>
<input type="hidden" name="akcija" value="unospotvrda">
<input type="hidden" name="osoba" value="<?php 
        echo $osoba;
        ?>
">
<input type="hidden" name="vrstaunosa" value="<?php 
        echo $vrstaunosa;
        ?>
">

<table border="0" cellpadding="3" cellspacing="0">
	<tr>
		<td width="130" align="left">Broj dosjea:</td>
		<td><?php 
        echo $lijevodugme;
        ?>
<input maxlength="50" size="5" name="broj_dosjea" id="broj_dosjea" type="text" value="<?php 
        echo $ebrojdosjea;
        ?>
" autocomplete="off" onkeypress="enterhack(event,'ime')" class="default"
		<?php 
        if ($greskabrojdos) {
            ?>
 style="background-color:#FF0000" oninput="odzuti(this)" <?php 
        }
        ?>
><font color="#FF0000">*</font> <?php 
        echo $desnodugme;
        ?>
</td>
	</tr>
	<?php 
        if ($osoba > 0) {
            ?>
	<tr><td colspan="2">
		<a href="?sta=izvjestaj/prijemni_brzi_unos&termin=<?php 
            echo $termin;
            ?>
&osoba=<?php 
            echo $osoba;
            ?>
" target="_new">Odštampaj obrazac</a>
	</tr></tr>
	<?php 
        }
        ?>
	<tr><td colspan="2"><br>LIČNI PODACI:</td></tr>
	<tr>
		<td width="130" align="left">Ime kandidata:</td>
		<td><input maxlength="50" size="17" name="ime" id="ime" type="text" class="default" 
		<?php 
        if ($greskaime) {
            ?>
 value="<?php 
            echo $eime;
            ?>
" style="background-color:#FF0000" oninput="odzuti(this)" <?php 
        } else {
            if ($eime) {
                ?>
 value="<?php 
                echo $eime;
                ?>
"<?php 
            } else {
                ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
            }
        }
        ?>
 autocomplete="off" onkeypress="return enterhack(event,'prezime')"><font color="#FF0000">*</font></td>
	</tr>
	<tr>
		<td width="125" align="left">Prezime kandidata:</td>
		<td><input maxlength="50" size="17" name="prezime" id="prezime" type="text" class="default" 
		<?php 
        if ($greskaprezime) {
            ?>
 value="<?php 
            echo $eprezime;
            ?>
" style="background-color:#FF0000" oninput="odzuti(this)" <?php 
        } else {
            if ($eprezime) {
                ?>
 value="<?php 
                echo $eprezime;
                ?>
"<?php 
            } else {
                ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
            }
        }
        ?>
 autocomplete="off" onkeypress="return enterhack(event,'imeoca')"><font color="#FF0000">*</font></td>
	</tr>
	<tr>
		<td width="125" align="left">Ime oca:</td>
		<td><input maxlength="50" size="17" name="imeoca" id="imeoca" type="text" class="default" value="<?php 
        echo $eimeoca;
        ?>
" <?php 
        if (!$eimeoca) {
            ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
        }
        ?>
 autocomplete="off" onkeypress="return enterhack(event,'prezimeoca')"></td>
	</tr>
	<tr>
		<td width="125" align="left">Prezime oca:</td>
		<td><input maxlength="50" size="17" name="prezimeoca" id="prezimeoca" type="text" class="default" value="<?php 
        echo $eprezimeoca;
        ?>
" <?php 
        if (!$eprezimeoca) {
            ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
        }
        ?>
 autocomplete="off" onkeypress="return enterhack(event,'imemajke')"></td>
	</tr>
	<tr>
		<td width="125" align="left">Ime majke:</td>
		<td><input maxlength="50" size="17" name="imemajke" id="imemajke" type="text" class="default" value="<?php 
        echo $eimemajke;
        ?>
" <?php 
        if (!$eimemajke) {
            ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
        }
        ?>
 autocomplete="off" onkeypress="return enterhack(event,'prezimemajke')"></td>
	</tr>
	<tr>
		<td width="125" align="left">Prezime majke:</td>
		<td><input maxlength="50" size="17" name="prezimemajke" id="prezimemajke" type="text" class="default" value="<?php 
        echo $eprezimemajke;
        ?>
" <?php 
        if (!$eprezimemajke) {
            ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
        }
        ?>
 autocomplete="off" onkeypress="return enterhack(event,'datum_rodjenja')"></td>
	</tr>
	<tr>
		<td width="125" align="left">Spol:</td>
		<td><input type="radio" name="spol" id="spol" value="M" <?php 
        if ($espol == 'M') {
            print "CHECKED";
        }
        ?>
> Muški
		<input type="radio" name="spol" id="spol" value="Z" <?php 
        if ($espol == 'Z') {
            print "CHECKED";
        }
        ?>
> Ženski
		</td>
	</tr>
	<tr>
		<td width="125" align="left">Datum rođenja:</td>
		<td><input maxlength="20" size="17" name="datum_rodjenja" id="datum_rodjenja" type="text" class="default" 
		<?php 
        if ($greskadatumrod) {
            ?>
 value="<?php 
            echo $edatum;
            ?>
" style="background-color:#FF0000" oninput="odzuti(this)" <?php 
        } else {
            if ($edatum) {
                ?>
 value="<?php 
                echo $edatum;
                ?>
"<?php 
            } else {
                ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
            }
        }
        ?>
 autocomplete="off" onkeypress="return enterhack(event,'mjesto_rodjenja')"> <font color="#FF0000">*</font></td>
	</tr>
	<tr>
		<td width="125" align="left">Mjesto rođenja:</td>
		<td><input type="text" name="mjesto_rodjenja" id="mjesto_rodjenja" value="<?php 
        echo $mjestorvalue;
        ?>
" class="default" onKeyDown="return comboBoxEdit(event, 'mjesto_rodjenja'); this.style.backgroundColor = '#FFFFFF';" autocomplete="off" size="17" onInput="this.style.backgroundColor = '#FFFFFF';" onBlur="comboBoxHide('<?php 
        echo $name;
        ?>
')" <?php 
        if ($greskamjestorod) {
            ?>
 style="background-color:#FF0000" onChange="this.style.backgroundColor = '#FFFFFF'"<?php 
        } else {
            if ($emjesto == 0) {
                ?>
 style="background-color:#FFFF00" onChange="this.style.backgroundColor = '#FFFFFF'"<?php 
            } else {
                ?>
 style="background-color:#FFFFFF"<?php 
            }
        }
        ?>
><img src="images/cb_up.png" width="19" height="18" onClick="comboBoxShowHide('mjesto_rodjenja')" id="comboBoxImg_mjesto_rodjenja" valign="bottom">
		<!-- Rezultati pretrage primaoca -->
		<div id="comboBoxDiv_mjesto_rodjenja" style="position:absolute;visibility:hidden">
			<select name="comboBoxMenu_mjesto_rodjenja" id="comboBoxMenu_mjesto_rodjenja" size="10" onClick="comboBoxOptionSelected('mjesto_rodjenja')" onFocus="this.focused=true;" onBlur="this.focused=false;"><?php 
        echo $gradovir;
        ?>
</select>
		</div><font color="#FF0000">*</font></td>
	</tr>
	<tr>
		<td width="125" align="left">Općina rođenja:</td>
		<td><select name="opcina_rodjenja" id="opcina_rodjenja" class="default" onChange="this.style.backgroundColor = '#FFFFFF'; if (this.value == 143) document.getElementById('opcina_rodjenja_van_bih').disabled = false; else document.getElementById('opcina_rodjenja_van_bih').disabled = true;" <?php 
        if ($eopcinarodjenja == 0) {
            ?>
 style="background-color:#FFFF00"  <?php 
        }
        ?>
><?php 
        echo $opcinerodjr;
        ?>
</select> <font color="#FF0000">*</font></td>
	</tr>
	<tr>
		<td width="125" align="left">Općina rođenja (van BiH):</td>
		<td><input maxlength="40" size="17" name="opcina_rodjenja_van_bih" id="opcina_rodjenja_van_bih" type="text" class="default" autocomplete="off" <?php 
        if ($eopcinarodjenja != 143) {
            echo "disabled";
        }
        ?>
 value="<?php 
        echo $eopcinavanbih;
        ?>
"></td>
	</tr>
	<tr>
		<td width="125" align="left">Država rođenja:</td>
		<td><select name="drzava_rodjenja" id="drzava_rodjenja" class="default" <?php 
        if ($edrzavarodjenja == 0) {
            ?>
 style="background-color:#FFFF00" onChange="this.style.backgroundColor = '#FFFFFF';" <?php 
        }
        ?>
><?php 
        echo $drzaverodjr;
        ?>
</select> <font color="#FF0000">*</font></td>
	</tr>
	<tr>
		<td width="125" align="left">Nacionalnost:</td>
		<td><input type="text" name="nacionalnost" id="nacionalnost" value="<?php 
        echo $nacionalnostrvalue;
        ?>
" class="default" onKeyDown="return comboBoxEdit(event, 'nacionalnost'); this.style.backgroundColor = '#FFFFFF';" autocomplete="off" size="17" onInput="this.style.backgroundColor = '#FFFFFF';" <?php 
        if ($enacionalnost == 0) {
            ?>
 style="background-color:#FFFF00" onChange="this.style.backgroundColor = '#FFFFFF'"<?php 
        } else {
            ?>
 style="background-color:#FFFFFF"<?php 
        }
        ?>
><img src="images/cb_up.png" width="19" height="18" onClick="comboBoxShowHide('nacionalnost')" id="comboBoxImg_nacionalnost" valign="bottom">
		<!-- Rezultati pretrage primaoca -->
		<div id="comboBoxDiv_nacionalnost" style="position:absolute;visibility:hidden">
			<select name="comboBoxMenu_nacionalnost" id="comboBoxMenu_nacionalnost" size="10" onClick="comboBoxOptionSelected('nacionalnost')" onFocus="this.focused=true;" onBlur="this.focused=false;"><?php 
        echo $nacionalnostr;
        ?>
</select>
		</div><font color="#FF0000">*</font></td>
	</tr>
	<tr>
		<td width="125" align="left">Državljanstvo:</td>
		<!-- Nije žute boje zato što ima default vrijednost -->
		<td><select name="drzavljanstvo" id="drzavljanstvo" class="default"
		<?php 
        if ($greskadrzavljanstvo) {
            ?>
 style="background-color:#FF0000" onChange="this.style.backgroundColor = '#FFFFFF'"<?php 
        }
        ?>
><?php 
        echo $drzavljanstvor;
        ?>
</select> <font color="#FF0000">*</font></td>
	</tr>
	<tr>
		<td width="125" align="left">JMBG:</td>
		<td><input maxlength="13" size="17" name="jmbg" id="jmbg" type="text" class="default" 
		<?php 
        if ($greskajmbg) {
            ?>
 value="<?php 
            echo $ejmbg;
            ?>
" style="background-color:#FF0000" oninput="odzuti(this)" <?php 
        } else {
            if ($ejmbg) {
                ?>
 value="<?php 
                echo $ejmbg;
                ?>
"<?php 
            } else {
                ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
            }
        }
        ?>
 autocomplete="off" onkeypress="return enterhack(event,'adresa')"><font color="#FF0000">*</font>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="button" value=" Traži " onclick="javascript:jmbg_trazi();"></td>
	</tr>
	<tr>
		<td width="125" align="left">&nbsp;</td>
		<td><input type="checkbox" name="borac"  <?php 
        if ($eborac) {
            ?>
 checked="checked" <?php 
        }
        ?>
 value="1"> Dijete šehida / borca / pripadnik RVI</td>
	</tr>
	<tr><td colspan="2"><br>PODACI O ZAVRŠENOM PRETHODNOM OBRAZOVANJU:</td></tr>

<?php 
        // Srednju školu prikazujemo samo za prvi ciklus
        if ($ciklus_studija == 1) {
            ?>
	<tr>
		<td width="125" align="left">Završena škola:</td>
		<td><input type="text" name="zavrsena_skola" id="zavrsena_skola" value="<?php 
            echo $skolarvalue;
            ?>
" class="default" onKeyDown="return comboBoxEdit(event, 'zavrsena_skola'); this.style.backgroundColor = '#FFFFFF';" autocomplete="off" size="35" onInput="this.style.backgroundColor = '#FFFFFF';"
		<?php 
            if ($eskola == 0) {
                ?>
 style="background-color:#FFFF00" onChange="this.style.backgroundColor = '#FFFFFF'"<?php 
            } else {
                ?>
 style="background-color:#FFFFFF"<?php 
            }
            ?>
><img src="images/cb_up.png" width="19" height="18" onClick="comboBoxShowHide('zavrsena_skola')" id="comboBoxImg_zavrsena_skola" valign="bottom">
		<!-- Rezultati pretrage primaoca -->
		<div id="comboBoxDiv_zavrsena_skola" style="position:absolute;visibility:hidden">
			<select name="comboBoxMenu_zavrsena_skola" id="comboBoxMenu_zavrsena_skola" size="10" onClick="comboBoxOptionSelected('zavrsena_skola')" onFocus="this.focused=true;" onBlur="this.focused=false;"><?php 
            echo $srednjer;
            ?>
</select>
		</div></td>
	</tr>
	<tr>
		<td width="125" align="left">Općina škole:</td>
		<td><select name="zavrsena_skola_opcina" id="zavrsena_skola_opcina" class="default" <?php 
            if ($eskolaopcina == 0) {
                ?>
 style="background-color:#FFFF00" onChange="this.style.backgroundColor = '#FFFFFF';" <?php 
            }
            ?>
><?php 
            echo $opciner;
            ?>
</select></td>
	</tr>
	<tr>
		<td width="125" align="left">&nbsp;</td>
		<td><input type="radio" name="zavrsena_skola_domaca" id="zavrsena_skola_domaca" value="1" <?php 
            if ($eskoladomaca == 1) {
                print "CHECKED";
            }
            ?>
> Domaća škola
		<input type="radio" name="zavrsena_skola_domaca" id="zavrsena_skola_domaca" value="0" <?php 
            if ($eskoladomaca == 0) {
                print "CHECKED";
            }
            ?>
> Strana škola
		</td>
	</tr>
	<tr>
		<td width="125" align="left">U školskoj godini:</td>
		<!-- Nije žute boje zato što ima default vrijednost -->
		<td><select name="zavrsena_skola_godina" id="zavrsena_skola_godina" class="default"><?php 
            echo $skolazavr;
            ?>
</select></td>
	</tr>
	<tr>
		<td width="125" align="left">Učenik generacije?</td>
		<td><input type="checkbox" name="ucenik_generacije" <?php 
            if ($egener) {
                ?>
 checked="checked" <?php 
            }
            ?>
 value="1"></td>
	</tr>
<?php 
        }
        ?>
	<tr><td colspan="2"><br>KONTAKT PODACI:</td></tr>
	<tr>
		<td width="125" align="left">Adresa:</td>
		<td><input maxlength="50" size="17" name="adresa" id="adresa" type="text" class="default" <?php 
        if ($eadresa) {
            ?>
 value="<?php 
            echo $eadresa;
            ?>
"<?php 
        } else {
            ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
        }
        ?>
 autocomplete="off" onkeypress="return enterhack(event,'telefon_roditelja')"></td>
	</tr>
	<tr>
		<td width="125" align="left">Adresa (mjesto):</td>
		<td><input type="text" name="adresa_mjesto" id="adresa_mjesto" value="<?php 
        echo $adresarvalue;
        ?>
" class="default" onKeyDown="return comboBoxEdit(event, 'adresa_mjesto'); this.style.backgroundColor = '#FFFFFF';" autocomplete="off" size="17" onInput="this.style.backgroundColor = '#FFFFFF';" <?php 
        if ($eadresamjesto == 0) {
            ?>
 style="background-color:#FFFF00" onChange="this.style.backgroundColor = '#FFFFFF'"<?php 
        } else {
            ?>
 style="background-color:#FFFFFF"<?php 
        }
        ?>
><img src="images/cb_up.png" width="19" height="18" onClick="comboBoxShowHide('adresa_mjesto')" id="comboBoxImg_adresa_mjesto" valign="bottom">
		<!-- Rezultati pretrage primaoca -->
		<div id="comboBoxDiv_adresa_mjesto" style="position:absolute;visibility:hidden">
			<select name="comboBoxMenu_adresa_mjesto" id="comboBoxMenu_adresa_mjesto" size="10" onClick="comboBoxOptionSelected('adresa_mjesto')" onFocus="this.focused=true;" onBlur="this.focused=false;"><?php 
        echo $gradovia;
        ?>
</select>
		</div><font color="#FF0000">*</font></td>
	</tr>
	<tr>
		<td width="125" align="left">Kanton:</td>
		<td><select name="kanton" id="kanton" class="default" <?php 
        if ($ekanton == 0) {
            ?>
 style="background-color:#FFFF00" onChange="this.style.backgroundColor = '#FFFFFF';" <?php 
        }
        ?>
><?php 
        echo $kantonr;
        ?>
</select> <font color="#FF0000">*</font></td>
	</tr>
	<tr>
		<td width="125" align="left">Telefon roditelja:</td>
		<td><input maxlength="30" size="17" name="telefon_roditelja" id="telefon_roditelja" type="text" class="default"
		<?php 
        if ($etelefon) {
            ?>
 value="<?php 
            echo $etelefon;
            ?>
"<?php 
        } else {
            ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
        }
        ?>
 autocomplete="off" onkeypress="return enterhack(event,'kanton')"></td>
	</tr>
	<tr><td colspan="2"><br>IZBOR STUDIJA:</td></tr>
	<tr>
		<td width="125" align="left">Način studiranja</td>
		<td><select name="nacin_studiranja" id="kanton" class="default" style="background-color:#FFFF00" onChange="this.style.backgroundColor = '#FFFFFF';"><?php 
        echo $nacinstudiranjar;
        ?>
</select></td>
	</tr>
<?php 
        // Više izbora nudimo samo za prvi ciklus studija (svakako je to hack)
        if ($ciklus_studija == 1) {
            ?>
	<tr>
		<td width="125" align="left">Studij:</td>
		<td>
		<table width="100%" border="0" align="center">
			<tr><td>Prvi izbor</td><td>Drugi izbor</td><td>Treći izbor</td><td>Četvrti izbor</td></tr>
			<tr>
				<td><select name="studij_prvi_izbor" id="studij_prvi_izbor" onchange="update_izbore()" <?php 
            if (!$eopi) {
                ?>
 style="background-color:#FFFF00"<?php 
            }
            ?>
><option></option><?php 
            foreach ($studiji as $id => $naziv) {
                print "<option value=\"{$id}\"";
                if ($id == $eopi) {
                    print " selected";
                }
                print ">{$naziv}</option>";
            }
            ?>
</select></td>
				<td><select name="studij_drugi_izbor" id="studij_drugi_izbor" onchange="update_izbore()"><option></option><?php 
            foreach ($studiji as $id => $naziv) {
                print "<option value=\"{$id}\"";
                if ($id == $eodi) {
                    print " selected";
                }
                print ">{$naziv}</option>";
            }
            ?>
</select></td>
				<td><select name="studij_treci_izbor" id="studij_treci_izbor" onchange="update_izbore()"><option></option><?php 
            foreach ($studiji as $id => $naziv) {
                print "<option value=\"{$id}\"";
                if ($id == $eoti) {
                    print " selected";
                }
                print ">{$naziv}</option>";
            }
            ?>
</select></td>
				<td><select name="studij_cetvrti_izbor" id="studij_cetvrti_izbor" onchange="update_izbore()"><option></option><?php 
            foreach ($studiji as $id => $naziv) {
                print "<option value=\"{$id}\"";
                if ($id == $eoci) {
                    print " selected";
                }
                print ">{$naziv}</option>";
            }
            ?>
</select></td>
			</tr>
		</table>
		</td>
	</tr>
<?php 
        } else {
            // Samo jedan izbor -- TODO (mozda) omogućiti konfigurisanje da li je izbor samo jedan ili višestruki na nivou termina
            ?>
	<tr>
		<td width="125" align="left">Studij:</td>
		<td><select name="studij_prvi_izbor" id="studij_prvi_izbor" <?php 
            if (!$eopi) {
                ?>
 style="background-color:#FFFF00"<?php 
            }
            ?>
><option></option><?php 
            foreach ($studiji as $id => $naziv) {
                print "<option value=\"{$id}\"";
                if ($id == $eopi) {
                    print " selected";
                }
                print ">{$naziv}</option>";
            }
            ?>
</select>
		</td>
	</tr>
<?php 
        }
        if ($eizasao > 0) {
            ?>
	<tr>
		<td width="125" align="left">Bodovi na prijemnom:</td>
		<td><input maxlength="50" size="17" name="prijemni" id="prijemni" type="text" value="<?php 
            echo $eprijemni;
            ?>
" autocomplete="off"></td>
	</tr>
<?php 
        } else {
            ?>
	<input type="hidden" name="prijemni" value="0">
<?php 
        }
        ?>
</table>
<br />


<!-- Provjera ispravnosti svih polja na formularu prije slanja -->

<SCRIPT language="JavaScript">
function provjeri(varijablu) {
	var nesto = document.getElementById(varijablu);
	if(nesto.value=="") {
		alert("Niste unijeli "+varijablu);
		nesto.focus();
		self.scrollTo(nesto.offsetLeft,nesto.offsetTop);
		return false;
	}
	return true;
}
function provjeri_sve() {
	if (!provjeri('ime')) return false;
	if (!provjeri('prezime')) return false;
	if (!provjeri('datum_rodjenja')) return false;
	if (!provjeri('mjesto_rodjenja')) return false;
	if (!provjeri('opcina_rodjenja')) return false;
	if (!provjeri('drzava_rodjenja')) return false;
	if (!provjeri('nacionalnost')) return false;
	if (!provjeri('drzavljanstvo')) return false;
	if (!provjeri('broj_dosjea')) return false;
	if (!provjeri('jmbg')) return false;
<?php 
        if ($ciklus_studija == 1) {
            ?>
	if (!provjeri('studij_prvi_izbor')) return false;
<?php 
        }
        ?>

	// Da li je broj dosjea pozitivan broj?
	var nesto = document.getElementById('broj_dosjea');
	if (parseInt(nesto.value) < 1) {
		alert ("Broj dosjea mora biti veći od nule.");
		nesto.focus();
		self.scrollTo(nesto.offsetLeft, nesto.offsetTop);
		return false;
	}

	var nesto = document.getElementsByName('kanton');
	if (nesto[0].value=='-1') {
		alert("Niste izabrali kanton");
		nesto[0].focus();
		self.scrollTo(nesto[0].offsetLeft,nesto[0].offsetTop);
		return false;
	}

	var nesto = document.getElementById('studij_prvi_izbor');
	if (nesto.value=='') {
		alert("Niste izabrali odsjek");
		nesto.focus();
		self.scrollTo(nesto.offsetLeft,nesto.offsetTop);
		return false;
	}

	document.getElementsByName('glavnaforma')[0].submit();
	return true;
}

</script>


<?php 
        // UNOS OCJENA IZ SREDNJE SKOLE
        // Unos ocjena ce se prikazati samo prilikom editovanja, posto su ocjene u zasebnoj tabeli koja se vezuje
        // za osobu, na taj nacin se osigurava da osoba postoji prilikom editovanja.
        // Ukoliko bismo se oslonili na prvi slobodan ID u tabeli osoba, postojala bi mogucnost da dva korisnika
        // unose ocjene za istu osobu (ta bi osoba mogla biti registrovana pod novim IDom ali ne bi imala ocjene,
        // dok bi druga osoba imala pogresne ocjene)
        if ($vrstaunosa != "editovanje") {
            ?>
	</form>
	<p><font color="#FF0000">*</font> - Sva polja označena zvjezdicom su obavezna.<br/>
	<input type="hidden" name="unosocjena" value="1">
	<input type="button" value="Unos ocjena" onclick="provjeri_sve()"></p>
	
	<p>&nbsp;</p>
	<?php 
        } else {
            if ($ciklus_studija == 1) {
                // Ocjene iz srednje škole
                ?>
	<b>Ocjene iz srednje škole:</b><br/>
	
	<?php 
                // AJAH i prateće funkcije
                print ajah_box();
                ?>
	<SCRIPT language="JavaScript">
	// Funkcija koja racuna bodove za opci uspjeh i kljucne predmete
	function izracunaj_bodove() {
		// Opci uspjeh
		var sumaocjena=0, brojocjena=0;
		for (i=1; i<=20; i++) {
			for (j=1; j<=4; j++) {
				var id = <?php 
                echo $osoba;
                ?>
*1000 + j*100 + i;
				var val = document.getElementById('prijemniocjene'+id).value;
				if (val != "/" && val != "") {
					sumaocjena += parseInt(val);
					brojocjena++;
				}
			}
		}
		var prosjeku;
		if (brojocjena>0) prosjeku=Math.round((sumaocjena/brojocjena)*100)/100; 
		else prosjeku=0;
		document.getElementById('opci_uspjeh').value = prosjeku * 4;

		// Kljucni predmeti
		var sumekljucni=new Array(), brojkljucni=new Array(), prosjecikljucni=new Array();
		for (var i=1; i<=3; i++) {
			sumekljucni[i]=0; brojkljucni[i]=0;
			var pocni_od=1;
			if (i==3) pocni_od=3;
			for (var j=pocni_od; j<=4; j++) {
				var id = <?php 
                echo $osoba;
                ?>
*1000 + j*100 + i+90;
				var val = document.getElementById('prijemniocjene'+id).value;
				if (val != "/" && val != "") {
					sumekljucni[i] += parseInt(val);
					brojkljucni[i]++;
				}
			}
			if (brojkljucni[i]>0)
				prosjecikljucni[i] = sumekljucni[i]/brojkljucni[i];
			else prosjecikljucni[i]=0;
		}
		var bodovi_kljucni = (prosjecikljucni[1]+prosjecikljucni[2]+prosjecikljucni[3])/3 * 8;
		bodovi_kljucni = Math.round(bodovi_kljucni*10)/10;
		document.getElementById('kljucni_predmeti').value=bodovi_kljucni;
	}

	function dobio_focus(element) {
		element.style.borderColor='red';
	}

	function izgubio_focus(element) {
		element.style.borderColor='black';

		var vrijednost = element.value;
		var id = parseInt(element.id.substr(14));
		var osoba = Math.floor(id/1000);
		var razred = Math.floor((id-osoba*1000)/100);
		var tipocjene = id-osoba*1000-razred*100;
		var rednibroj = 0;
		if (tipocjene>=90) { tipocjene -= 90; rednibroj=0; }
		else { rednibroj=tipocjene; tipocjene=0; }

		if (vrijednost == "") {
			vrijednost="/";
		}
		if (origval[id]=="") origval[id]="/";
		if (vrijednost != "/" && vrijednost != "0" && (!parseInt(vrijednost) || parseInt(vrijednost)<0 || parseInt(vrijednost)>5)) {
			alert("Neispravna ocjena: "+vrijednost+" !\nOcjena mora biti u opsegu 0-5 ili znak / za poništavanje "+id);
			element.value = origval[id];
			if (origval[id]=="/") element.value="";
			element.focus();
			element.select();
			return false;
		}
		if (zamger_ajah_sending) {
			element.focus();
			element.select();
			return false;
		}
		if (origval[id]=="/" && vrijednost!="/")
			ajah_start("index.php?c=N&sta=common/ajah&akcija=prijemni_ocjene&osoba="+osoba+"&nova="+vrijednost+"&subakcija=dodaj&razred="+razred+"&tipocjene="+tipocjene+"&rednibroj="+rednibroj,"document.getElementById('prijemniocjene'+"+id+").focus()");
		else if (origval[id]!="/" && vrijednost=="/")
			ajah_start("index.php?c=N&sta=common/ajah&akcija=prijemni_ocjene&osoba="+osoba+"&stara="+origval[id]+"&subakcija=obrisi&razred="+razred+"&tipocjene="+tipocjene+"&rednibroj="+rednibroj,"document.getElementById('prijemniocjene'+"+id+").focus()");
		else if (origval[id]!=vrijednost)
			ajah_start("index.php?c=N&sta=common/ajah&akcija=prijemni_ocjene&osoba="+osoba+"&nova="+vrijednost+"&stara="+origval[id]+"&subakcija=izmijeni&razred="+razred+"&tipocjene="+tipocjene+"&rednibroj="+rednibroj,"document.getElementById('prijemniocjene'+"+id+").focus()");

		origval[id]=vrijednost;

		izracunaj_bodove();
	}

	function enterhack2(element,e,gdje) {
		if(e.keyCode==13) {
			element.blur();
			document.getElementById('prijemniocjene'+gdje).focus();
			document.getElementById('prijemniocjene'+gdje).select();
			return false;
		}
	}
	var origval=new Array();
	</SCRIPT>

	<table border="0" cellspacing="0" cellpadding="1">
	<tr><td valign="top">

	<table border="0" cellspacing="0" cellpadding="1">
		<tr><td>&nbsp;</td><td align="center"><b> I </b></td><td align="center"><b> II </b></td><td align="center"><b> III </b></td><td align="center"><b> IV </b></td></tr>
	<?php 
                $q = myquery("SELECT razred, ocjena, tipocjene,redni_broj FROM srednja_ocjene WHERE osoba={$osoba}");
                $razred = array();
                $kljucni = array();
                while ($r = mysql_fetch_row($q)) {
                    if ($r[2] == 0 && $r[3] == 0) {
                        $razred[$r[0]][] = $r[1];
                    } else {
                        if ($r[2] == 0) {
                            $razred[$r[0]][$r[3]] = $r[1];
                        } else {
                            $kljucni[$r[0]][$r[2]] = $r[1];
                        }
                    }
                }
                for ($i = 1; $i <= 20; $i++) {
                    ?>
		<tr><td align="right"><?php 
                    echo $i;
                    ?>
.</td>
		<?php 
                    for ($j = 1; $j <= 4; $j++) {
                        $id = $osoba * 1000 + $j * 100 + $i;
                        if ($i <= 19) {
                            $nextid = $id + 1;
                        } else {
                            if ($j < 4) {
                                $nextid = $osoba * 1000 + ($j + 1) * 100 + $i;
                            } else {
                                $nextid = $osoba * 1000 + 100 + 91;
                            }
                        }
                        if (is_array($razred[$j]) && array_key_exists($i, $razred[$j])) {
                            $vr = $razred[$j][$i];
                        } else {
                            $vr = "";
                        }
                        ?>
			<SCRIPT language="JavaScript"> origval[<?php 
                        echo $id;
                        ?>
]='<?php 
                        echo $vr;
                        ?>
'</SCRIPT>
			<td align="center"><input type="text" id="prijemniocjene<?php 
                        echo $id;
                        ?>
" size="4" value="<?php 
                        echo $vr;
                        ?>
" style="border:1px black solid" onblur="izgubio_focus(this)" onfocus="dobio_focus(this)" onkeydown="return enterhack2(this,event,<?php 
                        echo $nextid;
                        ?>
)"></td>
			<?php 
                    }
                    ?>
</tr><?php 
                }
                ?>
	</table>

	</td><td width="30">&nbsp;</td>
	<td valign="top">

	<table border="0" cellspacing="0" cellpadding="1">
		<tr><td>&nbsp;</td><td align="center"><b> I </b></td><td align="center"><b> II </b></td><td align="center"><b> III </b></td><td align="center"><b> IV </b></td></tr>
		<?php 
                for ($i = 1; $i <= 3; $i++) {
                    if ($i == 1) {
                        print "<tr><td><b>Jezik</b></td>\n";
                    } else {
                        if ($i == 2) {
                            print "<tr><td><b>Matematika</b></td>\n";
                        } else {
                            if ($i == 3) {
                                print "<tr><td><b>Fizika</b></td>\n";
                            }
                        }
                    }
                    $pocni_od = 1;
                    if ($i == 3) {
                        $pocni_od = 3;
                    }
                    for ($j = 1; $j < $pocni_od; $j++) {
                        print "<td>&nbsp;</td>\n";
                    }
                    for ($j = $pocni_od; $j <= 4; $j++) {
                        $id = $osoba * 1000 + $j * 100 + $i + 90;
                        if (is_array($kljucni[$j]) && array_key_exists($i, $kljucni[$j])) {
                            $vr = $kljucni[$j][$i];
                        } else {
                            $vr = "";
                        }
                        if ($j < 4) {
                            $nextid = $osoba * 1000 + ($j + 1) * 100 + $i + 90;
                        } else {
                            if ($i == 1) {
                                $nextid = $osoba * 1000 + 100 + $i + 90 + 1;
                            } else {
                                if ($i == 2) {
                                    $nextid = $osoba * 1000 + 3 * 100 + $i + 90 + 1;
                                } else {
                                    $nextid = 0;
                                }
                            }
                        }
                        ?>
			<SCRIPT language="JavaScript"> origval[<?php 
                        echo $id;
                        ?>
]='<?php 
                        echo $vr;
                        ?>
'</SCRIPT>
			<td align="center"><input type="text" id="prijemniocjene<?php 
                        echo $id;
                        ?>
" size="4" value="<?php 
                        echo $vr;
                        ?>
" style="border:1px black solid" onblur="izgubio_focus(this)" onfocus="dobio_focus(this)" onkeydown="enterhack2(this,event,<?php 
                        echo $nextid;
                        ?>
)"></td>
			<?php 
                    }
                }
                ?>
	</table>

	</td></tr></table>
	<?php 
                ?>

<br /><br />
<!-- Tablica bodova -->

<fieldset style="width:200px" style="background-color:#0099FF">
<legend>Bodovi</legend>
<table align="center" width="600" border="0">
	<tr>
		<td align="left">Opći uspjeh: 
		<input maxlength="10" size="5" name="opci_uspjeh" id="opci_uspjeh" type="text" value="<?php 
                echo $eopci;
                ?>
"><font color="#FF0000">*</font></td>
		<td align="left">Ključni predmeti:
		<input maxlength="10" size="5" name="kljucni_predmeti" id="kljucni_predmeti" type="text" value="<?php 
                echo $ekljucni;
                ?>
"><font color="#FF0000">*</font></td>
		<td align="left">Dodatni bodovi:
		<input maxlength="10" size="5" name="dodatni_bodovi" type="text" value="<?php 
                echo $edodatni;
                ?>
"></td>
	</tr>
</table>
</fieldset>
</form>


<!-- Provjera zajedno sa bodovima -->

<SCRIPT language="JavaScript">
function provjeri_sve_bodovi() {
	var nesto = document.getElementById('opci_uspjeh');
	if (parseInt(nesto.value)==0) {
		alert("Opći uspjeh je nula!");
		nesto.focus();
		return false;
	}
	var nesto = document.getElementById('kljucni_predmeti');
	if (parseInt(nesto.value)==0) {
		alert("Bodovi za ključne predmete su nula!");
		nesto.focus();
		return false;
	}
	return provjeri_sve();
}

</script>


<p><font color="#FF0000">*</font> - Sva polja označena zvjezdicom su obavezna.<br/>
<input type="button" value="Snimi" onclick="provjeri_sve_bodovi()"></p>

<p>&nbsp;</p>


<?php 
            } else {
                // Unos ocjena sa prethodnog ciklusa studija
                ?>
	<b>Ocjene iz prethodnog ciklusa studija:</b><br/><br/>
	 
<table border="0" cellpadding="3" cellspacing="0">
	<tr>
		<td width="250" align="left">Broj semestara na prethodnom ciklusu:</td>
		<td><input maxlength="50" size="5" name="broj_semestara" id="broj_semestara" type="text" class="default" <?php 
                if ($ebrojsem) {
                    ?>
 value="<?php 
                    echo $ebrojsem;
                    ?>
"<?php 
                } else {
                    ?>
 style="background-color:#FFFF00" oninput="odzuti(this)" <?php 
                }
                ?>
 autocomplete="off"><font color="#FF0000">*</font></td>
	</tr>
	<?php 
                // AJAH i prateće funkcije
                print ajah_box();
                ?>
	<SCRIPT language="JavaScript">
	// Funkcija koja racuna bodove za prethodni ciklus studija
	function izracunaj_bodove() {

		// Po konkursu iz 2010. godine, za rangiranje se koristi samo prosjek
		var suma=0, broj=0;
		for (i=1; i<=50; i++) {
			var idoc=2*i-1;
			var idec=2*i;
			var ocjena = document.getElementById('prijemniocjene'+idoc).value;
			var ects = document.getElementById('prijemniocjene'+idec).value;
			if (ocjena != "/" && ocjena != "" && ects != "/" && ects != "") {
				suma += parseInt(ocjena);
				broj++;
			}
		}
		if (broj>0) {
			var rezultat = suma / broj;
			rezultat =  Math.round(rezultat*100) / 10; // Konkurs 2012.
			document.getElementById('opci_uspjeh').value = rezultat;
		} else {
			document.getElementById('opci_uspjeh').value = "0";
		}
	}

	function dobio_focus(element) {
		element.style.borderColor='red';
	}

	function izgubio_focus(element) {
		element.style.borderColor='black';

		var vrijednost = element.value;
		var id = parseInt(element.id.substr(14));
		var rednibroj = Math.ceil(id/2);
		var osoba = <?php 
                echo $osoba;
                ?>
;
		if (vrijednost == "") {
			vrijednost="/";
		}

		if (vrijednost==origval[id]) return true; // ne radi nista ako nije promijenjeno

		// Blokiraj ako je slanje u toku
		if (zamger_ajah_sending) {
			element.focus();
			element.select();
			return false;
		}

		if (id%2==1) { // Ocjena

			// Provjera ispravnosti
			if (vrijednost != "/" && (!parseInt(vrijednost) || parseInt(vrijednost)<6 || parseInt(vrijednost)>10)) {
				alert("Neispravna ocjena: "+vrijednost+" !\nOcjena mora biti u opsegu 6-10 ili znak / za poništavanje "+id);
				element.value = origval[id];
				if (origval[id]=="/") element.value="";
				element.focus();
				element.select();
				return false;
			}
			ajah_start("index.php?c=N&sta=common/ajah&akcija=prosli_ciklus_ocjena&osoba="+osoba+"&nova="+vrijednost+"&rednibroj="+rednibroj,"document.getElementById('prijemniocjene'+"+id+").focus()");

		} else { // ECTS
			if (vrijednost != "/" && (!parseFloat(vrijednost) || parseFloat(vrijednost)<=0 || parseFloat(vrijednost)>20)) {
				alert("Neispravan ECTS: "+vrijednost+" !\nECTS mora biti u opsegu 0-20 ili znak / za poništavanje "+id);
				element.value = origval[id];
				if (origval[id]=="/") element.value="";
				element.focus();
				element.select();
				return false;
			}
			ajah_start("index.php?c=N&sta=common/ajah&akcija=prosli_ciklus_ects&osoba="+osoba+"&nova="+vrijednost+"&rednibroj="+rednibroj,"document.getElementById('prijemniocjene'+"+id+").focus()");
		}

		origval[id]=vrijednost;

		izracunaj_bodove();
	}

	function enterhack2(element,e,gdje) {
		if(e.keyCode==13) {
			element.blur();
			document.getElementById('prijemniocjene'+gdje).focus();
			document.getElementById('prijemniocjene'+gdje).select();
			return false;
		}
	}
	var origval=new Array();
	</SCRIPT>

	<table border="0" cellspacing="0" cellpadding="1">
	<tr><td valign="top">

	<table border="0" cellspacing="0" cellpadding="1">
		<tr><td>Predmet&nbsp;</td><td align="center"><b>Ocjena</b></td><td align="center"><b>ECTS</b></td></td></tr>
	<?php 
                $q = myquery("SELECT ocjena, ects, redni_broj FROM prosliciklus_ocjene WHERE osoba={$osoba}");
                $ocjene = $ects = array();
                while ($r = mysql_fetch_row($q)) {
                    if ($r[2] == 0) {
                        $ocjene[] = $r[0];
                        $ects[] = $r[1];
                    } else {
                        $ocjene[$r[2]] = $r[0];
                        $ects[$r[2]] = $r[1];
                    }
                }
                for ($i = 1; $i <= 25; $i++) {
                    ?>
		<tr><td align="right"><?php 
                    echo $i;
                    ?>
.</td>
		<SCRIPT language="JavaScript"> origval[<?php 
                    echo $i * 2 - 1;
                    ?>
]='<?php 
                    echo $ocjene[$i];
                    ?>
'</SCRIPT>
		<td align="center"><input type="text" id="prijemniocjene<?php 
                    echo $i * 2 - 1;
                    ?>
" size="4" value="<?php 
                    echo $ocjene[$i];
                    ?>
" style="border:1px black solid" onblur="izgubio_focus(this)" onfocus="dobio_focus(this)" onkeydown="return enterhack2(this,event,<?php 
                    echo $i * 2;
                    ?>
)"></td>
		<SCRIPT language="JavaScript"> origval[<?php 
                    echo $i * 2;
                    ?>
]='<?php 
                    echo $ects[$i];
                    ?>
'</SCRIPT>
		<td align="center"><input type="text" id="prijemniocjene<?php 
                    echo $i * 2;
                    ?>
" size="4" value="<?php 
                    echo $ects[$i];
                    ?>
" style="border:1px black solid" onblur="izgubio_focus(this)" onfocus="dobio_focus(this)" onkeydown="return enterhack2(this,event,<?php 
                    echo $i * 2 + 1;
                    ?>
)"></td>
		</tr><?php 
                }
                ?>
	</table>

	</td><td width="30">&nbsp;</td>
	<td valign="top">

	<table border="0" cellspacing="0" cellpadding="1">
		<tr><td>Predmet&nbsp;</td><td align="center"><b>Ocjena</b></td><td align="center"><b>ECTS</b></td></td></tr>
	<?php 
                for ($i = 26; $i <= 50; $i++) {
                    ?>
		<tr><td align="right"><?php 
                    echo $i;
                    ?>
.</td>
		<td align="center"><input type="text" id="prijemniocjene<?php 
                    echo $i * 2 - 1;
                    ?>
" size="4" value="<?php 
                    echo $ocjene[$i];
                    ?>
" style="border:1px black solid" onblur="izgubio_focus(this)" onfocus="dobio_focus(this)" onkeydown="return enterhack2(this,event,<?php 
                    echo $i * 2;
                    ?>
)"></td>
		<td align="center"><input type="text" id="prijemniocjene<?php 
                    echo $i * 2;
                    ?>
" size="4" value="<?php 
                    echo $ects[$i];
                    ?>
" style="border:1px black solid" onblur="izgubio_focus(this)" onfocus="dobio_focus(this)" onkeydown="return enterhack2(this,event,<?php 
                    echo $i * 2 + 1;
                    ?>
)"></td>
		</tr><?php 
                }
                ?>
	</table>

	</td></tr></table>
	<?php 
                ?>

<br /><br />
<!-- Tablica bodova -->

<fieldset style="width:200px" style="background-color:#0099FF">
<legend>Bodovi</legend>
<table align="center" width="600" border="0">
	<tr>
		<td align="left">Prethodni ciklus: 
		<input maxlength="20" size="10" name="opci_uspjeh" id="opci_uspjeh" type="text" value="<?php 
                echo $eopci;
                ?>
"><font color="#FF0000">*</font></td>
		<td align="left">Dodatni bodovi:
		<input maxlength="20" size="10" name="dodatni_bodovi" type="text" value="<?php 
                echo $edodatni;
                ?>
"></td>
	</tr>
</table>
</fieldset>
</form>


<!-- Provjera zajedno sa bodovima -->

<SCRIPT language="JavaScript">
function provjeri_sve_bodovi() {
	var nesto = document.getElementById('opci_uspjeh');
	if (parseInt(nesto.value)==0) {
		alert("Opći uspjeh je nula!");
		nesto.focus();
		return false;
	}
	var nesto = document.getElementById('broj_semestara');
	if (parseInt(nesto.value)==0) {
		alert("Broj semestara je nula!");
		nesto.focus();
		return false;
	}
	return provjeri_sve();
}

</script>


<p><font color="#FF0000">*</font> - Sva polja označena zvjezdicom su obavezna.<br/>
<input type="button" value="Snimi" onclick="provjeri_sve_bodovi()"></p>

<p>&nbsp;</p>


<?php 
            }
        }
        // if ($vrstaunosa) ... else if ... else {
    }
    // ne znam od cega je ovo?
    ?>
</td></tr></table></center>
<?php 
}
Esempio n. 3
0
function public_predmeti($modul)
{
    // $modul - gdje vodi link, ostaviti prazno ako ne zelite link,
    // ako modul trazi dodatne parametre - navedite ih npr.
    // "saradnik/grupa&id=0"
    $link = "<a href=\"?sta={$modul}&predmet=--PK--\" target=\"_blank\">";
    $linka = "</a>";
    if ($modul == "") {
        $link = $linka = "";
    }
    // Javascript za ajah
    ?>
	<script language="JavaScript">
	function ucitavaj(semestar, studij, ag) {
		var rp=document.getElementById('sem-'+semestar+'-'+studij+'-'+ag);
		if (rp.innerHTML != "prazan") return; // Vec je ucitan
		rp.innerHTML = "<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Molimo sačekajte...";
		ajah_start("?sta=common/ajah&akcija=spisak_predmeta&ag="+ag+"&studij="+studij+"&semestar="+semestar, "", "napuni_rezultate("+semestar+","+studij+","+ag+")");
	}
	function napuni_rezultate(semestar,studij,ag) {
		var rp=document.getElementById('sem-'+semestar+'-'+studij+'-'+ag);
		var tekst = frames['zamger_ajah'].document.body.innerHTML;
		rp.innerHTML="";
		var oldpozicija=0, pozicija=0;
		do {
			// Uzimam jedan red
			var pozicija = tekst.indexOf('|',oldpozicija);
			var tmptekst = tekst.substr(oldpozicija,pozicija-oldpozicija);
			if (tmptekst.length<2) { oldpozicija=pozicija+1; continue; }
			if (tmptekst == "OK") break;
			rp.innerHTML += "<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
			oldpozicija=pozicija+1;

			// Razdvajam id predmeta od naziva predmeta
			var pidpos = tmptekst.indexOf(' ');
			var predmetid = tmptekst.substr(0,pidpos);
			var predmetnaziv = tmptekst.substr(pidpos+1);
			var linkp = '<?php 
    echo $link;
    ?>
';
			linkp=linkp.replace("--PK--", predmetid+"&ag="+ag);
			rp.innerHTML += linkp+predmetnaziv+"</a>";
		} while (pozicija>=0);
	}
	</script>

	<?php 
    // Skripta daj_stablo se sada nalazi u js/stablo.js, a ukljucena je u index.php
    $q1 = myquery("select ag.id,ag.naziv from akademska_godina as ag where (select count(*) from ponudakursa as pk where pk.akademska_godina=ag.id)>0 order by ag.id");
    while ($r1 = mysql_fetch_row($q1)) {
        print "<br/>" . dajplus("ag-{$r1['0']}", "{$r1['1']} akademska godina");
        $q2 = myquery("select s.id, s.naziv from studij as s where (select count(*) from ponudakursa as pk where pk.akademska_godina={$r1['0']} and pk.studij=s.id)>0 order by s.id");
        while ($r2 = mysql_fetch_row($q2)) {
            print "<br/>&nbsp;&nbsp;&nbsp;&nbsp;";
            print dajplus("studij-{$r2['0']}-{$r1['0']}", $r2[1]);
            $q3 = myquery("select semestar from ponudakursa where studij={$r2['0']} and akademska_godina={$r1['0']} group by semestar order by semestar");
            while ($r3 = mysql_fetch_row($q3)) {
                print "<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
                print "<img src=\"images/plus.png\" width=\"13\" height=\"13\" id=\"img-sem-{$r3['0']}-{$r2['0']}-{$r1['0']}\" onclick=\"daj_stablo('sem-{$r3['0']}-{$r2['0']}-{$r1['0']}'); ucitavaj('{$r3['0']}', '{$r2['0']}', '{$r1['0']}');\"> {$r3['0']}. semestar <div id=\"sem-{$r3['0']}-{$r2['0']}-{$r1['0']}\" style=\"display:none\">prazan</div>";
            }
            print "</div>\n";
        }
        print "</div>\n";
    }
    print ajah_box();
}
Esempio n. 4
0
function common_inbox()
{
    global $userid, $user_student, $user_nastavnik;
    // LEGENDA tabele poruke
    // Tip:
    //    1 - obavjestenja
    //    2 - lične poruke
    // Opseg:
    //    0 - svi korisnici Zamgera
    //    1 - svi studenti
    //    2 - svi nastavnici
    //    3 - svi studenti na studiju (primalac - id studija)
    //    4 - svi studenti na godini (primalac - id akademske godine)
    //    5 - svi studenti na predmetu (primalac - id predmeta)
    //    6 - svi studenti na labgrupi (primalac - id labgrupe)
    //    7 - korisnik (primalac - user id)
    //    8 - svi studenti na godini studija (primalac - idstudija*10+godina_studija)
    // Podaci potrebni kasnije
    // Zadnja akademska godina
    $q20 = myquery("select id,naziv from akademska_godina where aktuelna=1");
    $ag = mysql_result($q20, 0, 0);
    // Studij koji student trenutno sluša
    $studij = 0;
    if ($user_student) {
        $q30 = myquery("select ss.studij,ss.semestar,ts.ciklus from student_studij as ss, studij as s, tipstudija as ts where ss.student={$userid} and ss.akademska_godina={$ag} and ss.studij=s.id and s.tipstudija=ts.id order by ss.semestar desc limit 1");
        if (mysql_num_rows($q30) > 0) {
            $studij = mysql_result($q30, 0, 0);
            $semestar = mysql_result($q30, 0, 1);
            $ciklus = mysql_result($q30, 0, 2);
            $godina_studija = ($semestar + 1) / 2;
        }
    }
    // Pravimo neki okvir za sajt
    ?>
<center>
<table width="80%" border="0"><tr><td>

<h1>Lične poruke</h1>

<?php 
    //////////////////////
    // Slanje poruke
    //////////////////////
    if ($_POST['akcija'] == 'send' && check_csrf_token()) {
        // Ko je primalac
        $primalac = my_escape($_REQUEST['primalac']);
        $primalac = preg_replace("/\\(.*?\\)/", "", $primalac);
        $q300 = myquery("select id from auth where login='******'");
        if (mysql_num_rows($q300) < 1) {
            niceerror("Nepoznat primalac");
            return;
            // FIXME
        }
        $prim_id = mysql_result($q300, 0, 0);
        // Samo slanje licnih poruka je dozvoljeno...
        $q310 = myquery("insert into poruka set tip=2, opseg=7, primalac={$prim_id}, posiljalac={$userid}, vrijeme=NOW(), ref=" . intval($_REQUEST['ref']) . ", naslov='" . my_escape($_REQUEST['naslov']) . "', tekst='" . my_escape($_REQUEST['tekst']) . "'");
        nicemessage("Poruka uspješno poslana");
        zamgerlog("poslana poruka za u{$prim_id}", 2);
        zamgerlog2("poslana poruka", intval($prim_id));
    }
    if ($_REQUEST['akcija'] == 'compose' || $_REQUEST['akcija'] == 'odgovor') {
        if ($_REQUEST['akcija'] == 'odgovor') {
            $poruka = intval($_REQUEST['poruka']);
            $q200 = myquery("select posiljalac, naslov, tekst, primalac from poruka where id={$poruka}");
            if (mysql_num_rows($q200) < 1) {
                niceerror("Poruka ne postoji");
                zamgerlog("pokusaj odgovora na nepostojecu poruku {$poruka}", 3);
                zamgerlog2("pokusaj odgovora na nepostojecu poruku", $poruka);
                return;
            }
            // Ko je poslao originalnu poruku (tj. kome odgovaramo)
            $prim_id = mysql_result($q200, 0, 0);
            if ($prim_id == $userid) {
                // U slučaju odgovora na poslanu poruku, ponovo šaljemo poruku istoj osobi
                $prim_id = mysql_result($q200, 0, 3);
            }
            $q210 = myquery("select a.login,o.ime,o.prezime from auth as a, osoba as o where a.id=o.id and o.id={$prim_id}");
            if (mysql_num_rows($q210) < 1) {
                niceerror("Nepoznat pošiljalac");
                zamgerlog("poruka {$poruka} ima nepoznatog posiljaoca {$prim_id} (prilikom odgovora na poruku)", 3);
                zamgerlog2("poruka ima nepoznatog posiljaoca (prilikom odgovora na poruku)", $poruka, $prim_id);
                return;
            } else {
                $primalac = mysql_result($q210, 0, 0) . " (" . mysql_result($q210, 0, 1) . " " . mysql_result($q210, 0, 2) . ")";
            }
            // Prepravka naslova i teksta
            $naslov = mysql_result($q200, 0, 1);
            if (substr($naslov, 0, 3) != "Re:") {
                $naslov = "Re: " . $naslov;
            }
            $tekst = mysql_result($q200, 0, 2);
            for ($i = 80; $i < strlen($tekst); $i += 81) {
                $k = $i - 80;
                while ($k < $i && $k !== false) {
                    $oldk = $k;
                    $k = strpos($tekst, " ", $k + 1);
                }
                if ($oldk == $i - 80) {
                    $tekst = substr($tekst, 0, $i) . "\n" . substr($tekst, $i);
                } else {
                    $tekst = substr($tekst, 0, $oldk) . "\n" . substr($tekst, $oldk + 1);
                }
            }
            $tekst = "> " . str_replace("\n", "\n> ", $tekst);
            $tekst .= "\n\n";
        } else {
            // Omogucujemo da se naslov, tekst i primalac zadaju preko URLa
            if ($_REQUEST['naslov']) {
                $naslov = my_escape($_REQUEST['naslov']);
            } else {
                $naslov = "";
            }
            if ($_REQUEST['tekst']) {
                $tekst = my_escape($_REQUEST['tekst']);
            } else {
                $tekst = "";
            }
            if ($_REQUEST['primalac']) {
                $primalac = my_escape($_REQUEST['primalac']);
            } else {
                $primalac = "";
            }
        }
        ?>
	<a href="?sta=common/inbox">Nazad na inbox</a><br/>
	<h3>Slanje poruke</h3>
	<?php 
        echo genform("POST");
        ?>
	<?php 
        if ($_REQUEST['akcija'] == 'odgovor') {
            ?>
		<input type="hidden" name="ref" value="<?php 
            echo $poruka;
            ?>
"><?php 
        }
        ?>
	<input type="hidden" name="akcija" value="send">
	<script language="javascript">
	var tm=0;
	function startaj_timer(e) {
		sakrij_pretragu();
		if(e.keyCode!=13 && e.keyCode!=9) tm = setTimeout('pretraga_primalaca()',1000);
	}
	function pretraga_primalaca() {
		var ib=document.getElementById('primalac');
		var pg=document.getElementById('pretgraga');
		if (ib.value.length<3) return;
		//alert("Trazim: "+ib.value);

		// Nadji poziciju objekta
		var curleft = curtop = 0;
		var obj=ib;
		if (obj.offsetParent) {
			do {
				curleft += obj.offsetLeft;
				curtop += obj.offsetTop;
			} while (obj = obj.offsetParent);
		}

		pg.style.visibility = 'visible';
		pg.style.left=curleft;
		pg.style.top=curtop+ib.offsetHeight;

		ajah_start("index.php?c=N&sta=common/ajah&akcija=pretraga&ime="+ib.value, "", "napuni_rezultate()");
	}
	function napuni_rezultate() {
		var rp=document.getElementById('rezultati_pretrage');
		var tekst = frames['zamger_ajah'].document.body.innerHTML;
		var oldpozicija=0;
		rp.innerHTML = "";
		do {
			var pozicija = tekst.indexOf('\n',oldpozicija);
			var tmptekst = tekst.substr(oldpozicija,pozicija-oldpozicija);
			if (tmptekst.length<2) { oldpozicija=pozicija+1; continue; }
			if (tmptekst == "OK") break;
			if (tmptekst == "Nema rezultata") {
				rp.innerHTML = rp.innerHTML + "<font color=\"#AAAAAA\">(Nema rezultata)</font><br/>";
			} else {
				rp.innerHTML = rp.innerHTML+"<a href=\"javascript:postavi('"+tmptekst+"')\">"+tmptekst+"</a><br/>";
			}
			oldpozicija=pozicija+1;
		} while (pozicija>=0);
	}
	function sakrij_pretragu() {
		var pg=document.getElementById('pretgraga');
		pg.style.visibility = 'hidden';
		if (tm!=0)
			clearTimeout(tm);
	}
	function postavi(prim) {
		var ib=document.getElementById('primalac');
		ib.value=prim;
		sakrij_pretragu();
	}
	function blur_dogadjaj(e) {
		setTimeout('sakrij_pretragu()',1000);
	}
	</script>
	<table border="0">
		<tr><td><b>Primalac:</b></td><td><input type="text" name="primalac" id="primalac" size="40" value="<?php 
        echo $primalac;
        ?>
" autocomplete="off" onkeypress="startaj_timer(event);" onblur="blur_dogadjaj(event);"></td></tr>
		<tr><td colspan="2"><input type="radio" name="metoda" value="1" DISABLED> Pošalji e-mail    <input type="radio" name="metoda" value="2" CHECKED> Pošalji Zamger poruku<br/>&nbsp;<br/></td></tr>
		<tr><td><b>Naslov:</b></td><td><input type="text" name="naslov" size="40" value="<?php 
        echo $naslov;
        ?>
"></td></tr>
	</table>

	<!-- Rezultati pretrage primaoca -->
	<div id="pretgraga" style="position:absolute;visibility:hidden">
		<table border="0" bgcolor="#FFFFEE"  style="border:1px;border-color:silver;border-style:solid;">
			<tr><td>
				<div id="rezultati_pretrage"></div>
			</td></tr>
		</table>
	</div>

	<br/>
	Tekst poruke:<br/>
	<textarea name="tekst" rows="10" cols="81"><?php 
        echo $tekst;
        ?>
</textarea>
	<br/>&nbsp;<br/>
	<input type="submit" value=" Pošalji "> <input type="reset" value=" Poništi ">
	</form>
	<?php 
        print ajah_box();
        return;
    }
    ?>
<p><a href="?sta=common/inbox&akcija=compose">Pošalji novu poruku</a> * <?php 
    if ($_REQUEST['mode'] == "outbox") {
        ?>
<a href="?sta=common/inbox">Vaše sanduče</a><?php 
    } else {
        ?>
<a href="?sta=common/inbox&mode=outbox">Vaše poslane poruke</a><?php 
    }
    ?>
</p>
<?php 
    //////////////////////
    // Čitanje poruke
    //////////////////////
    $mjeseci = array("", "januar", "februar", "mart", "april", "maj", "juni", "juli", "avgust", "septembar", "oktobar", "novembar", "decembar");
    $dani = array("Nedjelja", "Ponedjeljak", "Utorak", "Srijeda", "Četvrtak", "Petak", "Subota");
    $poruka = intval($_REQUEST['poruka']);
    if ($poruka > 0) {
        // Dobavljamo podatke o poruci
        $q10 = myquery("select opseg, primalac, posiljalac, UNIX_TIMESTAMP(vrijeme), naslov, tekst, tip from poruka where id={$poruka}");
        if (mysql_num_rows($q10) < 1) {
            niceerror("Poruka ne postoji");
            zamgerlog("pristup nepostojecoj poruci {$poruka}", 3);
            zamgerlog2("pristup nepostojecoj poruci", $poruka);
            return;
        }
        // Posiljalac
        $opseg = mysql_result($q10, 0, 0);
        $prim_id = mysql_result($q10, 0, 1);
        $pos_id = mysql_result($q10, 0, 2);
        if ($opseg == 1 && !$user_student || $opseg == 2 && !$user_nastavnik || $opseg == 3 && $prim_id != $studij && $prim_id != -$ciklus || $opseg == 4 && $prim_id != $ag || $opseg == 7 && $prim_id != $userid && $_REQUEST['mode'] !== "outbox" || $opseg == 7 && $_REQUEST['mode'] === "outbox" && $pos_id != $userid || $opseg == 8 && $prim_id != $studij * 10 + $godina_studija && $prim_id != -$ciklus * 10 - $godina_studija) {
            niceerror("Nemate pravo pristupa ovoj poruci!");
            zamgerlog("pokusao pristupiti poruci {$poruka}", 3);
            zamgerlog2("nema pravo pristupa poruci", $poruka);
            return;
        }
        if ($opseg == 5) {
            // da li student ikada slusao predmet? ako jeste moze citati poruke za taj predmet... (FIXME?)
            $q110 = myquery("select count(*) from student_predmet as sp, ponudakursa as pk where sp.student={$userid} and sp.predmet=pk.id and pk.predmet={$prim_id}");
            if (mysql_result($q110, 0, 0) < 1) {
                niceerror("Nemate pravo pristupa ovoj poruci!");
                zamgerlog("pokusao pristupiti poruci {$poruka}", 3);
                zamgerlog2("nema pravo pristupa poruci", $poruka);
                return;
            }
        }
        if ($opseg == 6) {
            // da li je student u labgrupi?
            $q115 = myquery("select count(*) from student_labgrupa where student={$userid} and labgrupa={$prim_id}");
            if (mysql_result($q115, 0, 0) < 1) {
                niceerror("Nemate pravo pristupa ovoj poruci!");
                zamgerlog("pokusao pristupiti poruci {$poruka}", 3);
                zamgerlog2("nema pravo pristupa poruci", $poruka);
                return;
            }
        }
        $q20 = myquery("select ime,prezime from osoba where id={$pos_id}");
        if (mysql_num_rows($q20) < 1) {
            $posiljalac = "Nepoznato!?";
            zamgerlog("poruka {$poruka} ima nepoznatog posiljaoca {$pos_id}", 3);
            zamgerlog2("poruka ima nepoznatog posiljaoca", $poruka, $pos_id);
        } else {
            $posiljalac = mysql_result($q20, 0, 0) . " " . mysql_result($q20, 0, 1);
        }
        // Primalac
        if ($opseg == 0) {
            $primalac = "Svi korisnici Zamgera";
        } else {
            if ($opseg == 1) {
                $primalac = "Svi studenti";
            } else {
                if ($opseg == 2) {
                    $primalac = "Svi nastavnici i saradnici";
                } else {
                    if ($opseg == 3) {
                        $q30 = myquery("select naziv from studij where id={$prim_id}");
                        if (mysql_num_rows($q30) < 1) {
                            $primalac = "Nepoznato!?";
                            zamgerlog("poruka {$poruka} ima nepoznatog primaoca {$prim_id} (opseg: studij)", 3);
                            zamgerlog2("poruka ima nepoznatog primaoca (opseg: studij)", $poruka, $prim_id);
                        } else {
                            $primalac = "Svi studenti na: " . mysql_result($q30, 0, 0);
                        }
                    } else {
                        if ($opseg == 4) {
                            $q40 = myquery("select naziv from akademska_godina where id={$prim_id}");
                            if (mysql_num_rows($q40) < 1) {
                                $primalac = "Nepoznato!?";
                                zamgerlog("poruka {$poruka} ima nepoznatog primaoca {$prim_id} (opseg: akademska godina)", 3);
                                zamgerlog2("poruka ima nepoznatog primaoca (opseg: akademska godina)", $poruka, $prim_id);
                            } else {
                                $primalac = "Svi studenti na akademskoj godini: " . mysql_result($q40, 0, 0);
                            }
                        } else {
                            if ($opseg == 5) {
                                $q50 = myquery("select naziv from predmet where id={$prim_id}");
                                if (mysql_num_rows($q50) < 1) {
                                    $primalac = "Nepoznato!?";
                                    zamgerlog("poruka {$poruka} ima nepoznatog primaoca {$prim_id} (opseg: predmet)", 3);
                                    zamgerlog2("poruka ima nepoznatog primaoca (opseg: predmet)", $poruka, $prim_id);
                                } else {
                                    $primalac = "Svi studenti na predmetu: " . mysql_result($q50, 0, 0);
                                }
                            } else {
                                if ($opseg == 6) {
                                    $q55 = myquery("select p.naziv,l.naziv from predmet as p, labgrupa as l where l.id={$prim_id} and l.predmet=p.id");
                                    if (mysql_num_rows($q55) < 1) {
                                        $primalac = "Nepoznato!?";
                                        zamgerlog("poruka {$poruka} ima nepoznatog primaoca {$prim_id} (opseg: labgrupa)", 3);
                                        zamgerlog2("poruka ima nepoznatog primaoca (opseg: labgrupa)", $poruka, $prim_id);
                                    } else {
                                        $primalac = "Svi studenti u grupi " . mysql_result($q55, 0, 1) . " (" . mysql_result($q55, 0, 0) . ")";
                                    }
                                } else {
                                    if ($opseg == 7) {
                                        $q60 = myquery("select ime,prezime from osoba where id={$prim_id}");
                                        if (mysql_num_rows($q60) < 1) {
                                            $primalac = "Nepoznato!?";
                                            zamgerlog("poruka {$poruka} ima nepoznatog primaoca {$prim_id} (opseg: korisnik)", 3);
                                            zamgerlog2("poruka ima nepoznatog primaoca (opseg: korisnik)", $poruka, $prim_id);
                                        } else {
                                            $primalac = mysql_result($q60, 0, 0) . " " . mysql_result($q60, 0, 1);
                                        }
                                    } else {
                                        if ($opseg == 8) {
                                            $studij = intval($prim_id / 10);
                                            if ($studij == -1) {
                                                $godina = -($prim_id + 10);
                                                $primalac = "Svi studenti na: Prvom ciklusu studija, {$godina}. godina";
                                            } else {
                                                if ($studij == -2) {
                                                    $godina = -($prim_id + 20);
                                                    $primalac = "Svi studenti na: Drugom ciklusu studija, {$godina}. godina";
                                                } else {
                                                    $godina = $prim_id % 10;
                                                    $q30 = myquery("select naziv from studij where id={$studij}");
                                                    if (mysql_num_rows($q30) < 1) {
                                                        $primalac = "Nepoznato!?";
                                                        zamgerlog("poruka {$poruka} ima nepoznatog primaoca {$prim_id} (opseg: godina studija)", 3);
                                                        zamgerlog2("poruka ima nepoznatog primaoca (opseg: godina studija)", $poruka, $prim_id);
                                                    } else {
                                                        $primalac = "Svi studenti na: " . mysql_result($q30, 0, 0) . ", {$godina}. godina";
                                                    }
                                                }
                                            }
                                        } else {
                                            $primalac = "Nepoznato!?";
                                            zamgerlog("poruka {$poruka} ima nepoznat opseg {$opseg}", 3);
                                            zamgerlog2("poruka ima nepoznat opseg", $poruka, $opseg);
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        // Fini datum
        $vr = mysql_result($q10, 0, 3);
        if (date("d.m.Y", $vr) == date("d.m.Y")) {
            $vrijeme = "<i>danas</i> - ";
        } else {
            if (date("d.m.Y", $vr + 3600 * 24) == date("d.m.Y")) {
                $vrijeme = "<i>juče</i> - ";
            }
        }
        $vrijeme .= $dani[date("w", $vr)] . date(", j. ", $vr) . $mjeseci[date("n", $vr)] . date(" Y. H:i", $vr);
        // Naslov
        $tip = mysql_result($q10, 0, 6);
        if ($tip == 1) {
            $naslov = "O B A V J E Š T E N J E";
            $tekst = mysql_result($q10, 0, 4) . "\n\n";
        } else {
            $naslov = mysql_result($q10, 0, 4);
            if (!preg_match("/\\S/", $naslov)) {
                $naslov = "[Bez naslova]";
            }
            $tekst = "";
        }
        ?>
<h3>Prikaz poruke</h3>
	<table cellspacing="0" cellpadding="0" border="0"  style="border:1px;border-color:silver;border-style:solid;"><tr><td bgcolor="#f2f2f2">
		<table border="0">
			<tr><td><b>Vrijeme slanja:</b></td><td><?php 
        echo $vrijeme;
        ?>
</td></tr>
			<tr><td><b>Pošiljalac:</b></td><td><?php 
        echo $posiljalac;
        ?>
</td></tr>
			<tr><td><b>Primalac:</b></td><td><?php 
        echo $primalac;
        ?>
</td></tr>
			<tr><td><b>Naslov:</b></td><td><?php 
        echo $naslov;
        ?>
 (<a href="?sta=common/inbox&akcija=odgovor&poruka=<?php 
        echo $poruka;
        ?>
">odgovori</a>)</td></tr>
		</table>
	</td></tr><tr><td>
		<br/>
		<table border="0" cellpadding="5"><tr><td>
		<?php 
        $tekst .= mysql_result($q10, 0, 5);
        // Dodajemo na eventualni naslov obavještenja
        $i = 0;
        while (strpos($tekst, "http://", $i) !== false || strpos($tekst, "https://", $i) !== false) {
            $j = strpos($tekst, "http://", $i);
            if ($j == false) {
                $j = strpos($tekst, "https://", $i);
            }
            $k = strpos($tekst, " ", $j);
            $k2 = strpos($tekst, "\n", $j);
            if ($k2 < $k && $k2 != 0) {
                $k = $k2;
            }
            if ($k == 0) {
                $k = $k2;
            }
            if ($k == 0) {
                $k = strlen($tekst);
            }
            do {
                $k--;
                $a = substr($tekst, $k, 1);
            } while ($a == "." || $a == "," || $a == ")" || $a == "!" || $a == "?");
            $k++;
            if ($k - $j < 9) {
                $i = $j + 1;
                continue;
            }
            $url = substr($tekst, $j, $k - $j);
            $tekst = substr($tekst, 0, $j) . "<a href=\"{$url}\" target=\"_blank\">{$url}</a>" . substr($tekst, $k);
            $i = $j + strlen($url) + 28;
        }
        $tekst = str_replace("\n", "<br/>\n", $tekst);
        print $tekst;
        ?>
		</td><tr></table>
	</td></tr></table>
	<br/><br/>
	<a href="?sta=common/inbox&akcija=odgovor&poruka=<?php 
        echo $poruka;
        ?>
">Odgovorite na poruku</a>
	<br/><hr><br/><?php 
    }
    //////////////////////
    // OUTBOX
    //////////////////////
    if ($_REQUEST['mode'] == "outbox") {
        print "<h3>Poslane poruke:</h3>\n";
        ?>
	<table border="0" width="100%" style="border:1px;border-color:silver;border-style:solid;">
		<thead>
		<tr bgcolor="#cccccc"><td width="15%"><b>Datum</b></td><td width="15%"><b>Primalac</b></td><td width="70%"><b>Naslov</b></td></tr>
		</thead>
		<tbody>
	<?php 
        $vrijeme_poruke = array();
        $q100 = myquery("select id, UNIX_TIMESTAMP(vrijeme), opseg, primalac, naslov, posiljalac from poruka where tip=2 and posiljalac={$userid} order by vrijeme desc");
        while ($r100 = mysql_fetch_row($q100)) {
            $id = $r100[0];
            $opseg = $r100[2];
            $primalac = $r100[3];
            $vrijeme_poruke[$id] = $r100[1];
            $naslov = $r100[4];
            if (strlen($naslov) > 60) {
                $naslov = substr($naslov, 0, 55) . "...";
            }
            if (!preg_match("/\\S/", $naslov)) {
                $naslov = "[Bez naslova]";
            }
            // Primalac
            $q120 = myquery("select ime,prezime from osoba where id={$primalac}");
            if (mysql_num_rows($q120) < 1) {
                $primalac = "Nepoznato! Prijavite grešku";
            } else {
                $primalac = mysql_result($q120, 0, 0) . " " . mysql_result($q120, 0, 1);
            }
            // Fino vrijeme
            $vr = $vrijeme_poruke[$id];
            $vrijeme = "";
            if (date("d.m.Y", $vr) == date("d.m.Y")) {
                $vrijeme = "<i>danas</i>, ";
            } else {
                if (date("d.m.Y", $vr + 3600 * 24) == date("d.m.Y")) {
                    $vrijeme = "<i>juče</i>, ";
                } else {
                    $vrijeme .= date("j. ", $vr) . $mjeseci[date("n", $vr)] . ", ";
                }
            }
            $vrijeme .= date("H:i", $vr);
            if ($_REQUEST['poruka'] == $id) {
                $bgcolor = "#EEEECC";
            } else {
                $bgcolor = "#FFFFFF";
            }
            $code_poruke[$id] = "<tr bgcolor=\"{$bgcolor}\" onmouseover=\"this.bgColor='#EEEEEE'\" onmouseout=\"this.bgColor='{$bgcolor}'\"><td>{$vrijeme}</td><td>{$primalac}</td><td><a href=\"?sta=common/inbox&poruka={$id}&mode=outbox\">{$naslov}</a></td></tr>\n";
        }
        // Sortiramo po vremenu
        arsort($vrijeme_poruke);
        $count = 0;
        foreach ($vrijeme_poruke as $id => $vrijeme) {
            print $code_poruke[$id];
            $count++;
            // if ($count==20) break; // prikazujemo 20 poruka  -- TODO: stranice
        }
        if ($count == 0) {
            print "<li>Nemate nijednu poruku.</li>\n";
        }
        print "</tbody></table>";
        ?>
	</td></tr></table></center>
	<?php 
        //////////////////////
        // INBOX
        //////////////////////
    } else {
        $velstranice = 20;
        // Broj poruka po stranici
        $count = 0;
        $ispis = "";
        $stranica = intval($_REQUEST['stranica']);
        if ($stranica == 0) {
            $stranica = 1;
        }
        print "<h3>Poruke u vašem sandučetu:</h3>\n";
        ?>
	<table border="0" width="100%" style="border:1px;border-color:silver;border-style:solid;">
		<thead>
		<tr bgcolor="#cccccc"><td width="15%"><b>Datum</b></td><td width="15%"><b>Autor</b></td><td width="70%"><b>Naslov</b></td></tr>
		</thead>
		<tbody>
	<?php 
        $vrijeme_poruke = array();
        $q100 = myquery("select id, UNIX_TIMESTAMP(vrijeme), opseg, primalac, naslov, posiljalac from poruka where tip=2 order by vrijeme desc");
        while ($r100 = mysql_fetch_row($q100)) {
            $id = $r100[0];
            $opseg = $r100[2];
            $primalac = $r100[3];
            if ($opseg == 2 || $opseg == 3 && $primalac != $studij || $opseg == 4 && $primalac != $ag || $opseg == 7 && $primalac != $userid) {
                continue;
            }
            if ($opseg == 5) {
                // da li je student ikada slusao predmet? (FIXME?)
                $q110 = myquery("select count(*) from student_predmet as sp, ponudakursa as pk where sp.student={$userid} and sp.predmet=pk.id and pk.predmet={$primalac}");
                if (mysql_result($q110, 0, 0) < 1) {
                    continue;
                }
            }
            if ($opseg == 6) {
                // da li je student u labgrupi?
                $q115 = myquery("select count(*) from student_labgrupa where student={$userid} and labgrupa={$primalac}");
                if (mysql_result($q115, 0, 0) < 1) {
                    continue;
                }
            }
            $vrijeme_poruke[$id] = $r100[1];
            $naslov = $r100[4];
            if (strlen($naslov) > 60) {
                $naslov = substr($naslov, 0, 55) . "...";
            }
            if (!preg_match("/\\S/", $naslov)) {
                $naslov = "[Bez naslova]";
            }
            // Posiljalac
            $q120 = myquery("select ime,prezime from osoba where id={$r100['5']}");
            if (mysql_num_rows($q120) < 1) {
                $posiljalac = "Nepoznato! Prijavite grešku";
            } else {
                $posiljalac = mysql_result($q120, 0, 0) . " " . mysql_result($q120, 0, 1);
            }
            // Fino vrijeme
            $vr = $vrijeme_poruke[$id];
            $vrijeme = "";
            if (date("d.m.Y", $vr) == date("d.m.Y")) {
                $vrijeme = "<i>danas</i>, ";
            } else {
                if (date("d.m.Y", $vr + 3600 * 24) == date("d.m.Y")) {
                    $vrijeme = "<i>juče</i>, ";
                } else {
                    $vrijeme .= date("j. ", $vr) . $mjeseci[date("n", $vr)] . ", ";
                }
            }
            $vrijeme .= date("H:i", $vr);
            if ($_REQUEST['poruka'] == $id) {
                $bgcolor = "#EEEECC";
            } else {
                $bgcolor = "#FFFFFF";
            }
            //$count++;
            $count++;
            if ($count > ($stranica - 1) * $velstranice && $count <= $stranica * $velstranice) {
                $ispis .= "<tr bgcolor=\"{$bgcolor}\" onmouseover=\"this.bgColor='#EEEEEE'\" onmouseout=\"this.bgColor='{$bgcolor}'\"><td>{$vrijeme}</td><td>{$posiljalac}</td><td><a href=\"?sta=common/inbox&poruka={$id}&stranica={$stranica}\">{$naslov}</a></td></tr>\n";
            }
        }
        if ($count == 0) {
            print "<li>Nemate nijednu poruku.</li>\n";
        }
        if ($count > $velstranice) {
            $broj_stranica = ($count - 1) / $velstranice + 1;
            print "<p>Stranica: ";
            for ($i = 1; $i <= $broj_stranica; $i++) {
                if ($stranica == $i) {
                    print "{$i} ";
                } else {
                    print "<a href=\"?sta=common/inbox&stranica={$i}\">{$i}</a> ";
                }
            }
            print "</p>\n";
        }
        print $ispis;
        print "</tbody></table>";
        ?>
	</td></tr></table></center>
	<?php 
    }
}
Esempio n. 5
0
function saradnik_student()
{
    global $userid, $user_siteadmin, $conf_ldap_domain;
    require "lib/manip.php";
    // radi ispisa studenta sa predmeta
    print '<p><a href="index.php?sta=saradnik/intro">Spisak predmeta i grupa</a></p>' . "\n";
    // Ulazni parametri
    $student = intval($_REQUEST['student']);
    $predmet = intval($_REQUEST['predmet']);
    $ag = intval($_REQUEST['ag']);
    // Provjera ulaznih podataka i podaci za naslov
    // Student
    $q40 = myquery("select ime, prezime, brindexa, slika from osoba where id={$student}");
    if (mysql_num_rows($q40) < 1) {
        biguglyerror("Nepoznat student");
        zamgerlog("nepoznat student {$student}", 3);
        zamgerlog2("nepoznat student", $student);
        return;
    }
    $ime = mysql_result($q40, 0, 0);
    $prezime = mysql_result($q40, 0, 1);
    $brindexa = mysql_result($q40, 0, 2);
    $slika = mysql_result($q40, 0, 3);
    $mailprint = "";
    $q45 = myquery("SELECT adresa FROM email WHERE osoba={$student} ORDER BY sistemska DESC, id");
    while ($r45 = mysql_fetch_row($q45)) {
        if ($mailprint) {
            $mailprint .= ", ";
        }
        $mailprint .= "<a href=\"mailto:{$r45['0']}\">{$r45['0']}</a>";
    }
    // Predmet
    $q5 = myquery("select naziv from predmet where id={$predmet}");
    if (mysql_num_rows($q5) < 1) {
        biguglyerror("Nepoznat predmet");
        zamgerlog("nepoznat predmet {$predmet}", 3);
        return;
    }
    $nazivpredmeta = mysql_result($q5, 0, 0);
    $q15 = myquery("SELECT tippredmeta FROM akademska_godina_predmet WHERE akademska_godina={$ag} AND predmet={$predmet}");
    $tippredmeta = mysql_result($q15, 0, 0);
    if ($tippredmeta == 1000) {
        $q4 = myquery("SELECT id FROM zavrsni WHERE student={$student} AND predmet={$predmet} AND akademska_godina={$ag}");
        if (mysql_num_rows($q4) > 0) {
            $zavrsni = mysql_result($q4, 0, 0);
            ?>
		<script language="JavaScript">
		location.href='?sta=nastavnik/zavrsni&akcija=zavrsni_stranica&zavrsni=<?php 
            echo $zavrsni;
            ?>
&predmet=<?php 
            echo $predmet;
            ?>
&ag=<?php 
            echo $ag;
            ?>
';
		</script>
		<?php 
            return;
        }
    }
    // Akademska godina
    $q6 = myquery("select naziv from akademska_godina where id={$ag}");
    if (mysql_num_rows($q6) < 1) {
        biguglyerror("Nepoznata akademska godina");
        zamgerlog("nepoznata ag {$ag}", 3);
        zamgerlog2("nepoznata ag", $ag);
        return;
    }
    $nazivag = mysql_result($q6, 0, 0);
    // Da li student sluša predmet
    $q7 = myquery("select pk.id, pk.semestar from student_predmet as sp, ponudakursa as pk, studij as s where sp.student={$student} and sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag} and pk.studij=s.id");
    if (mysql_num_rows($q7) < 1) {
        biguglyerror("Student nije upisan na ovaj predmet");
        zamgerlog("student u{$student} ne slusa predmet pp{$predmet} ag{$ag}", 3);
        zamgerlog2("id studenta i predmeta ne odgovaraju", $student, $predmet, $ag);
        return;
    }
    $ponudakursa = mysql_result($q7, 0, 0);
    $semestar = mysql_result($q7, 0, 1);
    // Koji studij student sluša, koji put
    $q8 = myquery("select s.naziv, ss.semestar, ns.naziv, ss.ponovac from student_studij as ss, studij as s, nacin_studiranja as ns where ss.student={$student} and ss.akademska_godina={$ag} and ss.semestar mod 2 = " . $semestar % 2 . " and ss.studij=s.id and ss.nacin_studiranja=ns.id");
    if (mysql_num_rows($q8) < 1) {
        $q8 = myquery("select s.naziv, ss.semestar, ns.naziv, ss.ponovac from student_studij as ss, studij as s, nacin_studiranja as ns where ss.student={$student} and ss.akademska_godina={$ag} and ss.semestar mod 2 = 1 and ss.studij=s.id and ss.nacin_studiranja=ns.id");
    }
    if (mysql_num_rows($q8) < 1) {
        $nazivstudija = "Nije upisan na studij!";
        $kolpren = $ponovac = $nacin_studiranja = "";
    } else {
        $nazivstudija = mysql_result($q8, 0, 0);
        if (mysql_result($q8, 0, 1) < $semestar) {
            $kolpren = ", kolizija";
        } else {
            if (mysql_result($q8, 0, 1) > $semestar) {
                $kolpren = ", prenio predmet";
            } else {
                $kolpren = "";
            }
        }
        $semestar = mysql_result($q8, 0, 1);
        $nacin_studiranja = mysql_result($q8, 0, 2);
        if (mysql_result($q8, 0, 3) == 1) {
            $ponovac = ", ponovac";
        } else {
            $ponovac = "";
        }
    }
    $q9 = myquery("select ag.id, ag.naziv from student_predmet as sp, ponudakursa as pk, akademska_godina as ag where sp.student={$student} and sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina<{$ag} and pk.akademska_godina=ag.id order by ag.id");
    if (mysql_num_rows($q9) > 0) {
        $kojiput = "(" . (mysql_num_rows($q9) + 1) . ". put sluša predmet)";
        $dosjei = "&nbsp;&nbsp;&nbsp;&nbsp;Pogledajte dosje za: ";
        $zarez = 0;
        while ($r9 = mysql_fetch_row($q9)) {
            if ($zarez == 0) {
                $zarez = 1;
            } else {
                $dosjei .= ", ";
            }
            $dosjei .= "<a href=\"?sta=saradnik/student&student={$student}&predmet={$predmet}&ag={$r9['0']}\">{$r9['1']}</a>";
        }
        $dosjei .= "<br />\n";
    } else {
        $kojiput = "";
        $dosjei = "";
    }
    // U kojoj je grupi student
    $q20 = myquery("select l.id, l.naziv from student_labgrupa as sl, labgrupa as l where sl.student={$student} and sl.labgrupa=l.id and l.predmet={$predmet} and l.akademska_godina={$ag} order by l.virtualna");
    if (mysql_num_rows($q20) > 0) {
        $labgrupa = mysql_result($q20, 0, 0);
        $lgnaziv = mysql_result($q20, 0, 1);
    } else {
        $labgrupa = 0;
        // Nema labgrupa ili nije ni u jednoj
    }
    // Provjera prava pristupa
    if (!$user_siteadmin) {
        $q10 = myquery("select nivo_pristupa from nastavnik_predmet where nastavnik={$userid} and predmet={$predmet} and akademska_godina={$ag}");
        if (mysql_num_rows($q10) < 1) {
            biguglyerror("Nemate pravo pristupa ovom studentu");
            zamgerlog("nastavnik nije na predmetu (pp{$predmet} ag{$ag})", 3);
            zamgerlog2("nije saradnik na predmetu", $predmet, $ag);
            return;
        }
        $privilegija = mysql_result($q10, 0, 0);
        // Provjera ogranicenja
        $q30 = myquery("select o.labgrupa from ogranicenje as o, labgrupa as l, student_labgrupa as sl where o.nastavnik={$userid} and o.labgrupa=l.id and l.predmet={$predmet} and l.akademska_godina={$ag}");
        if (mysql_num_rows($q30) > 0) {
            $nasao = 0;
            while ($r30 = mysql_fetch_row($q30)) {
                if ($r30[0] == $labgrupa) {
                    $nasao = 1;
                    break;
                }
            }
            if ($nasao == 0) {
                biguglyerror("Student je u grupi za koju vam je ograničen pristup");
                zamgerlog("ogranicenje na labgrupu g{$labgrupa}", 3);
                zamgerlog2("ima ogranicenje na labgrupu", intval($labgrupa));
                return;
            }
        }
    }
    // ----  AKCIJE
    // Akcija: ispis studenta sa predmeta
    if ($_GET['akcija'] == "ispis" && $user_siteadmin) {
        ispis_studenta_sa_predmeta($student, $predmet, $ag);
        zamgerlog("student ispisan sa predmeta (student u{$student} predmet pp{$predmet})", 4);
        // nivo 4: audit
        zamgerlog2("student ispisan sa predmeta", $student, $predmet, $ag);
        nicemessage("Student ispisan sa predmeta.");
        return;
    }
    if ($_POST['akcija'] == "promjena_grupe" && check_csrf_token()) {
        $novagrupa = intval($_POST['grupa']);
        $staragrupa = 0;
        // Da li je student u nekoj grupi i u kojoj?
        //   (Ne smijemo se osloniti na vrijednost varijable $labgrupa jer
        //   to može biti virtualna grupa iz koje ga ne smijemo ispisati)
        $q53 = myquery("select l.id, l.naziv from student_labgrupa as sl, labgrupa as l where sl.student={$student} and sl.labgrupa=l.id and l.predmet={$predmet} and l.akademska_godina={$ag} and l.virtualna=0");
        if (mysql_num_rows($q53) > 0) {
            $staragrupa = mysql_result($q53, 0, 0);
            $naziv_stare_grupe = mysql_result($q53, 0, 1);
            if ($novagrupa == $staragrupa) {
                nicemessage("Student se već nalazi u grupi {$naziv_stare_grupe}!");
                print '<a href="?sta=saradnik/student&student=' . $student . '&predmet=' . $predmet . '&ag=' . $ag . '">Nazad</a>' . "\n";
                return;
            }
            ispis_studenta_sa_labgrupe($student, $staragrupa);
            nicemessage("Student ispisan iz grupe {$naziv_stare_grupe}. Podaci o prisustvu su izgubljeni.");
        }
        if ($novagrupa > 0) {
            $q55 = myquery("insert into student_labgrupa set student={$student}, labgrupa={$novagrupa}");
            $q57 = myquery("select naziv from labgrupa where id={$novagrupa}");
            nicemessage("Student upisan u grupu " . mysql_result($q57, 0, 0) . ". Kreirani su default podaci o prisustvu.");
        }
        // Potrebno je updatovati komponentu za prisustvo jer su podaci sada promijenjeni
        $q4 = myquery("select k.id from tippredmeta_komponenta as tpk,komponenta as k, akademska_godina_predmet as agp where agp.predmet={$predmet} and agp.tippredmeta=tpk.tippredmeta and agp.akademska_godina={$ag} and tpk.komponenta=k.id and k.tipkomponente=3");
        while ($r4 = mysql_fetch_row($q4)) {
            update_komponente($student, $ponudakursa, $r4[0]);
        }
        // Pametni logging
        if ($staragrupa > 0 && $novagrupa > 0) {
            zamgerlog("student u{$student} prebacen iz grupe g{$staragrupa} u g{$novagrupa}", 2);
            // 2 = edit
            zamgerlog2("promijenjena grupa studenta", $student, $novagrupa, 0, $staragrupa);
        } else {
            if ($staragrupa > 0) {
                zamgerlog("student u{$student} ispisan iz grupe g{$staragrupa}", 2);
                zamgerlog2("student ispisan sa grupe", $student, intval($staragrupa));
            } else {
                zamgerlog("student u{$student} upisan u grupu g{$novagrupa}", 2);
                zamgerlog2("student upisan u grupu", $student, $novagrupa);
            }
        }
        // Linkovi za dalje
        print "<p>Gdje želite sada ići?:<br />\n";
        if ($staragrupa > 0) {
            print '- <a href="?sta=saradnik/grupa&id=' . $staragrupa . '">Spisak studenata u grupi ' . mysql_result($q53, 0, 1) . '</a><br />' . "\n";
        } else {
            print '- <a href="?sta=saradnik/grupa&predmet=' . $predmet . '&ag=' . $ag . '">Spisak svih studenata na predmetu</a><br />' . "\n";
        }
        // Ovo je jedini slučaj kad $staragrupa može biti nula
        if ($novagrupa > 0) {
            print '- <a href="?sta=saradnik/grupa&id=' . $novagrupa . '">Spisak studenata u grupi ' . mysql_result($q57, 0, 0) . '</a><br />' . "\n";
        }
        print '- <a href="?sta=saradnik/student&student=' . $student . '&predmet=' . $predmet . '&ag=' . $ag . '">Nazad na detalje studenta ' . $ime . ' ' . $prezime . '</a>' . "\n";
        return;
    }
    if ($_GET['akcija'] == "ponisti_kviz") {
        $kviz = intval($_REQUEST['kviz']);
        $q2000 = myquery("DELETE FROM kviz_student WHERE student={$student} AND kviz={$kviz}");
    }
    // --- ISPIS
    if ($slika != "") {
        print "<img src=\"?sta=common/slika&osoba={$student}\" align=\"left\" style=\"margin: 10px\">\n";
    }
    // Određujemo username radi slanja poruke
    $poruka_link = "";
    $q59 = myquery("select login from auth where id={$student}");
    if (mysql_num_rows($q59) > 0) {
        $poruka_link = "<br><a href=\"?sta=common/inbox&akcija=compose&primalac=" . mysql_result($q59, 0, 0) . "\">Pošaljite Zamger poruku</a>";
    }
    // Naslov
    ?>
<h1><?php 
    echo $ime;
    ?>
 <?php 
    echo $prezime;
    ?>
 (<?php 
    echo $brindexa;
    ?>
)</h1>
<p>Upisan na (<?php 
    echo $nazivag;
    ?>
): <b><?php 
    echo $nazivstudija;
    ?>
, <?php 
    echo $semestar;
    ?>
. semestar <?php 
    echo $ponovac;
    ?>
 <?php 
    echo $kolpren;
    ?>
 <?php 
    echo $kojiput;
    ?>
</b>
<br />
<?php 
    echo $dosjei;
    ?>
<b>Email: <?php 
    echo $mailprint;
    echo $poruka_link;
    ?>
</b></p>
<h3>Predmet: <?php 
    echo $nazivpredmeta;
    ?>
 <br />
<?php 
    if ($labgrupa > 0) {
        print "Grupa: <a href=\"?sta=saradnik/grupa&id={$labgrupa}\">{$lgnaziv}</a>";
    } else {
        print "(nije ni u jednoj grupi)";
    }
    ?>
</h3>
<?php 
    // Promjena grupe
    $q60 = myquery("select id,naziv from labgrupa where predmet={$predmet} and akademska_godina={$ag} and virtualna=0 order by naziv");
    if (mysql_num_rows($q60) > 0) {
        ?>
	<?php 
        echo genform("POST");
        ?>
	<input type="hidden" name="akcija" value="promjena_grupe">
	<p>Promijenite grupu: 
	<select name="grupa" class="default"><option value="0"<?php 
        echo $nijedna;
        ?>
>-- Nije ni u jednoj grupi --</option>
	<?php 
        while ($r60 = mysql_fetch_row($q60)) {
            if ($r60[0] == $labgrupa) {
                $value = "SELECTED";
            } else {
                $value = "";
            }
            ?>
		<option value="<?php 
            echo $r60[0];
            ?>
" <?php 
            echo $value;
            ?>
><?php 
            echo $r60[1];
            ?>
</option>
		<?php 
        }
        ?>
	</select>
	<input type="submit" value=" Promijeni grupu " class="default">
	</form>
	<?php 
    }
    // PROGRESS BAR
    // Kod kopiran iz student/predmet - trebalo bi izdvojiti u lib
    $q30 = myquery("select kb.bodovi, k.maxbodova, k.tipkomponente, k.id from komponentebodovi as kb, komponenta as k where kb.student={$student} and kb.predmet={$ponudakursa} and kb.komponenta=k.id");
    $bodova = $mogucih = 0;
    while ($r30 = mysql_fetch_row($q30)) {
        $bodova += $r30[0];
        if ($r30[2] == 4) {
            // Tip komponente: zadaće
            $q35 = myquery("select sum(bodova) from zadaca where predmet={$predmet} and akademska_godina={$ag} and komponenta={$r30['3']}");
            $do_sada_zadace = round(mysql_result($q35, 0, 0), 2);
            // Zbir bodova za zadaće ne može preći ono koliko nosi komponenta
            if ($do_sada_zadace > $r30[1]) {
                $mogucih += $r30[1];
            } else {
                $mogucih += $do_sada_zadace;
            }
        } else {
            $mogucih += $r30[1];
        }
    }
    if ($bodova > $mogucih) {
        $bodova = $mogucih;
    }
    //ne bi se trebalo desiti
    // boja označava napredak studenta
    if ($mogucih == 0) {
        $procent = 0;
    } else {
        $procent = intval($bodova / $mogucih * 100);
    }
    if ($procent >= 75) {
        $color = "#00FF00";
    } else {
        if ($procent >= 50) {
            $color = "#FFFF00";
        } else {
            $color = "#FF0000";
        }
    }
    $tabela1 = $procent * 2;
    $tabela2 = 200 - $tabela1;
    $ispis1 = "<img src=\"images/fnord.gif\" width=\"{$tabela1}\" height=\"10\">";
    $ispis2 = "<img src=\"images/fnord.gif\" width=\"{$tabela2}\" height=\"1\"><br/> {$bodova} bodova";
    if ($tabela1 > $tabela2) {
        $ispis1 = "<img src=\"images/fnord.gif\" width=\"{$tabela1}\" height=\"1\"><br/> {$bodova} bodova";
        $ispis2 = "<img src=\"images/fnord.gif\" width=\"{$tabela2}\" height=\"10\">";
    }
    ?>


<!-- progress bar -->

<table border="0"><tr><td align="left">
<p>
<table style="border:1px;border-style:solid" width="206" cellpadding="0" cellspacing="2"><tr>
<td width="<?php 
    echo $tabela1;
    ?>
" bgcolor="<?php 
    echo $color;
    ?>
"><?php 
    echo $ispis1;
    ?>
</td>
<td width="<?php 
    echo $tabela2;
    ?>
" bgcolor="#FFFFFF"><?php 
    echo $ispis2;
    ?>
</td></tr></table>

<table width="208" border="0" cellspacing="0" cellpadding="0"><tr>
<td width="68">0</td>
<td align="center" width="68">50</td>
<td align="right" width="69">100</td></tr></table>
što je <?php 
    echo $procent;
    ?>
% od trenutno mogućih <?php 
    echo round($mogucih, 2);
    ?>
 bodova.</p>
</td></tr></table>


<!-- end progress bar -->
<?php 
    // Nekoliko korisnih operacija za site admina
    if ($user_siteadmin) {
        ?>
	<p><a href="index.php?sta=saradnik/student&student=<?php 
        echo $student;
        ?>
&predmet=<?php 
        echo $predmet;
        ?>
&ag=<?php 
        echo $ag;
        ?>
&akcija=ispis">Ispiši studenta sa predmeta</a> * <a href="index.php?sta=studentska/osobe&akcija=edit&osoba=<?php 
        echo $student;
        ?>
">Detaljnije o studentu</a> * <a href="index.php?su=<?php 
        echo $student;
        ?>
">Prijavi se kao student</a></p>
	<?php 
    }
    // PRISUSTVO:
    print ajah_box();
    ?>
<script language="JavaScript">
// Funkcija koja se poziva klikom na polje u tabeli
function prisustvo(student,cas) {
	if (zamger_ajah_sending) {
		alert("Slanje u toku. Sačekajte malo.");
		return false;
	}
	var prisutan = invert(student,cas);
	ajah_start("index.php?c=N&sta=common/ajah&akcija=prisustvo&student="+student+"&cas="+cas+"&prisutan="+prisutan, "invert("+student+","+cas+")");
	// U slucaju da ajah ne uspije, ponovo se poziva funkcija invert
}
// Switchuje DA i NE
function invert(student,cas) {
	var val = document.getElementById("danetekst-"+student+"-"+cas).innerHTML;
	if (val == "DA") {
		document.getElementById("dane-"+student+"-"+cas).style.background = "#FFCCCC";
		document.getElementById("danetekst-"+student+"-"+cas).innerHTML = "NE";
		return 1;
	} else {
		document.getElementById("dane-"+student+"-"+cas).style.background="#CCFFCC";
		document.getElementById("danetekst-"+student+"-"+cas).innerHTML = "DA";
		return 2;
	}
}
function openzadaca(student,zadaca,zadatak) {
	var url='index.php?sta=saradnik/zadaca&student='+student+'&zadaca='+zadaca+'&zadatak='+zadatak;
	window.open(url,'blah','width=600,height=600,scrollbars=yes');
}
function toggleVisibilityObj(ime){
	var me = document.getElementById(ime);
	if (me.style.display=="none"){
		me.style.display="inline";
	}
	else {
		me.style.display="none";
	}
	return false; // da ne bi radio link
}
</script>
	<?php 
    // Ispis tablice prisustva za jednu od grupa u kojima je student
    function prisustvo_ispis($idgrupe, $imegrupe, $komponenta, $student)
    {
        if (!preg_match("/\\w/", $imegrupe)) {
            $imegrupe = "[Bez naziva]";
        }
        $odsustva = 0;
        $q70 = myquery("select id,UNIX_TIMESTAMP(datum), vrijeme from cas where labgrupa={$idgrupe} and komponenta={$komponenta}");
        if (mysql_num_rows($q70) < 1) {
            return;
        }
        // Ne ispisuj grupe u kojima nema registrovanih časova
        $datumi = $vremena = $statusi = "";
        while ($r70 = mysql_fetch_row($q70)) {
            $datumi .= "<td>" . date("d.m", $r70[1]) . "</td>\n";
            list($sati, $minute, $sekunde) = explode(":", $r70[2]);
            $vremena .= "<td>{$sati}<sup>{$minute}</sup></td>\n";
            $q80 = myquery("select prisutan from prisustvo where student={$student} and cas={$r70['0']}");
            if (mysql_num_rows($q80) < 1) {
                $statusi .= "<td bgcolor=\"#FFFFCC\" align=\"center\" id=\"dane-" . $student . "-" . $r70[0] . "\" onclick=\"javascript:prisustvo(" . $student . "," . $r70[0] . ")\"><div id=\"danetekst-" . $student . "-" . $r70[0] . "\"> / </div></td>\n";
            } else {
                if (mysql_result($q80, 0, 0) == 1) {
                    $statusi .= "<td bgcolor=\"#CCFFCC\" align=\"center\" id=\"dane-" . $student . "-" . $r70[0] . "\" onclick=\"javascript:prisustvo(" . $student . "," . $r70[0] . ")\"><div id=\"danetekst-" . $student . "-" . $r70[0] . "\">DA</div></td>\n";
                } else {
                    $statusi .= "<td bgcolor=\"#FFCCCC\" align=\"center\" id=\"dane-" . $student . "-" . $r70[0] . "\" onclick=\"javascript:prisustvo(" . $student . "," . $r70[0] . ")\"><div id=\"danetekst-" . $student . "-" . $r70[0] . "\">NE</div></td>\n";
                    $odsustva++;
                }
            }
        }
        ?>

	<b>Prisustvo (<?php 
        echo $imegrupe;
        ?>
):</b><br/>
	<table cellspacing="0" cellpadding="2" border="0" id="prisustvo">
	<tr>
		<th>Datum</th>
	<?php 
        echo $datumi;
        ?>
	</tr>
	<tr>
		<th>Vrijeme</th>
	<?php 
        echo $vremena;
        ?>
	</tr>
	<tr>
		<th>Prisutan</th>
	<?php 
        echo $statusi;
        ?>
	</tr>
	</table>
	</p>
	
	<?php 
        return $odsustva;
    }
    $q40 = myquery("select k.id,k.maxbodova,k.prolaz,k.opcija from komponenta as k, tippredmeta_komponenta as tpk, akademska_godina_predmet as agp\nwhere agp.predmet={$predmet} and agp.tippredmeta=tpk.tippredmeta and agp.akademska_godina={$ag} and tpk.komponenta=k.id and k.tipkomponente=3");
    // 3 = prisustvo
    while ($r40 = mysql_fetch_row($q40)) {
        $id_komponente = $r40[0];
        $max_bodova = $r40[1];
        $min_bodova = $r40[2];
        $max_izostanaka = $r40[3];
        $odsustva = $casova = 0;
        $q60 = myquery("select l.id,l.naziv from labgrupa as l, student_labgrupa as sl where l.predmet={$predmet} and l.akademska_godina={$ag} and l.id=sl.labgrupa and sl.student={$student}");
        while ($r60 = mysql_fetch_row($q60)) {
            $odsustva += prisustvo_ispis($r60[0], $r60[1], $id_komponente, $student);
            $q71 = myquery("select count(*) from cas where labgrupa={$r60['0']} and komponenta={$id_komponente}");
            $casova += mysql_result($q71, 0, 0);
        }
        if ($max_izostanaka == -1) {
            if ($casova == 0) {
                $bodovi = 10;
            } else {
                $bodovi = $min_bodova + round(($max_bodova - $min_bodova) * (($casova - $odsustva) / $casova), 2);
            }
        } else {
            if ($max_izostanaka == -2) {
                // Paraproporcionalni sistem TP
                if ($odsustva <= 2) {
                    $bodovi = $max_bodova;
                } else {
                    if ($odsustva <= 2 + ($max_bodova - $min_bodova) / 2) {
                        $bodovi = $max_bodova - ($odsustva - 2) * 2;
                    } else {
                        $bodovi = $min_bodova;
                    }
                }
            } else {
                if ($odsustva <= $max_izostanaka) {
                    $bodovi = $max_bodova;
                } else {
                    $bodovi = $min_bodova;
                }
            }
        }
        ?>
<p>Ukupno na prisustvo: <b><?php 
        echo $bodovi;
        ?>
</b> bodova.</p>
	<?php 
    }
    // KVIZOVI
    $q200 = myquery("SELECT id, naziv, prolaz_bodova FROM kviz WHERE predmet={$predmet} AND akademska_godina={$ag}");
    if (mysql_num_rows($q200) > 0) {
        ?>

	<b>Kvizovi:</b><br/>
	<table cellspacing="0" cellpadding="2" border="0" id="kvizovi">
	<thead>
	<tr>
		<th>Naziv kviza</th>
		<th>Rezultat</th>
		<th>Akcije</th>
	</tr>
	</thead>
	<?php 
        while ($r200 = mysql_fetch_row($q200)) {
            $q210 = myquery("SELECT dovrsen, bodova FROM kviz_student WHERE student={$student} AND kviz={$r200['0']}");
            $tekst = "";
            if (mysql_num_rows($q210) > 0) {
                $bodova = mysql_result($q210, 0, 1);
                if (mysql_result($q210, 0, 0) == 0) {
                    $tekst = "<img src=\"images/16x16/zad_cekaj.png\" width=\"8\" height=\"8\"> Nije završio/la";
                } else {
                    if ($bodova < $r200[2]) {
                        $tekst = "<img src=\"images/16x16/brisanje.png\" width=\"8\" height=\"8\"> {$bodova} bodova";
                    } else {
                        $tekst = "<img src=\"images/16x16/zad_ok.png\" width=\"8\" height=\"8\"> {$bodova} bodova";
                    }
                }
            }
            ?>
		<tr>
			<td><?php 
            echo $r200[1];
            ?>
</td>
			<td><?php 
            echo $tekst;
            ?>
</td>
			<td><?php 
            if ($tekst !== "") {
                ?>
<a href="?sta=saradnik/student&student=<?php 
                echo $student;
                ?>
&predmet=<?php 
                echo $predmet;
                ?>
&ag=<?php 
                echo $ag;
                ?>
&akcija=ponisti_kviz&kviz=<?php 
                echo $r200[0];
                ?>
">Poništi kviz</a><?php 
            }
            ?>
</td>
		</tr>
		<?php 
        }
        ?>
	</table>
	</p>
	<?php 
    }
    //  ZADAĆE
    // Statusne ikone:
    $stat_icon = array("zad_bug", "zad_preg", "zad_copy", "zad_bug", "zad_preg", "zad_ok");
    $stat_tekst = array("Bug u programu", "Pregled u toku", "Zadaća prepisana", "Bug u programu", "Pregled u toku", "Zadaća OK");
    ?>


<!-- zadace -->

<b>Zadaće:</b><br/>
<table cellspacing="0" cellpadding="2" border="0" id="zadace">
	<thead>
		<tr>
	<td>&nbsp;</td>
<?php 
    // Zaglavlje tabele - potreban nam je max. broj zadataka u zadaci
    $q20 = myquery("select zadataka from zadaca where predmet={$predmet} and akademska_godina={$ag} order by zadataka desc limit 1");
    if (mysql_num_rows($q20) > 0) {
        $broj_zadataka = mysql_result($q20, 0, 0);
        for ($i = 1; $i <= $broj_zadataka; $i++) {
            ?>
<td>Zadatak <?php 
            echo $i;
            ?>
.</td><?php 
        }
    }
    ?>
		<td><b>Ukupno bodova</b></td>
		</tr>
	</thead>
<tbody>
<?php 
    // Tijelo tabele
    // LEGENDA STATUS POLJA:
    // 0 - nepoznat status
    // 1 - nova zadaća
    // 2 - prepisana
    // 3 - ne može se kompajlirati
    // 4 - prošla test, predstoji kontrola
    // 5 - pregledana
    /* Ovo se sve moglo kroz SQL rijesiti, ali necu iz razloga:
    1. PHP je citljiviji
    2. MySQL <4.1 ne podrzava subqueries */
    $bodova_sve_zadace = 0;
    $q21 = myquery("select id,naziv,bodova,zadataka from zadaca where predmet={$predmet} and akademska_godina={$ag} order by komponenta,id");
    while ($r21 = mysql_fetch_row($q21)) {
        $zadaca = $r21[0];
        $mogucih += $r21[2];
        $zzadataka = $r21[3];
        ?>
<tr>
	<th><?php 
        echo $r21[1];
        ?>
</th>
	<?php 
        $bodova_zadaca = 0;
        for ($zadatak = 1; $zadatak <= $broj_zadataka; $zadatak++) {
            // Ako tekuća zadaća nema toliko zadataka, ispisujemo blank polje
            if ($zadatak > $zzadataka) {
                ?>
<td>&nbsp;</td><?php 
                continue;
            }
            // Uzmi samo rjesenje sa zadnjim IDom
            $q22 = myquery("select status,bodova,komentar from zadatak where student={$student} and zadaca={$zadaca} and redni_broj={$zadatak} order by id desc limit 1");
            if (mysql_num_rows($q22) < 1) {
                ?>
<td>&nbsp;</td><?php 
            } else {
                $status = mysql_result($q22, 0, 0);
                $bodova_zadatak = mysql_result($q22, 0, 1);
                $bodova_zadaca += $bodova_zadatak;
                if (strlen(mysql_result($q22, 0, 2)) > 2) {
                    $imakomentar = "<img src=\"images/16x16/komentar.png\"  width=\"15\" height=\"14\" border=\"0\" title=\"Ima komentar\" alt=\"Ima komentar\" align=\"center\">";
                } else {
                    $imakomentar = "";
                }
                ?>
<td><a href="javascript:openzadaca('<?php 
                echo $student;
                ?>
', '<?php 
                echo $zadaca;
                ?>
', '<?php 
                echo $zadatak;
                ?>
')"><img src="images/16x16/<?php 
                echo $stat_icon[$status];
                ?>
.png" width="16" height="16" border="0" align="center" title="<?php 
                echo $stat_tekst[$status];
                ?>
" alt="<?php 
                echo $stat_tekst[$status];
                ?>
"> <?php 
                echo $bodova_zadatak;
                ?>
 <?php 
                echo $imakomentar;
                ?>
</a></td>
	<?php 
            }
        }
        ?>
	<td><?php 
        echo $bodova_zadaca;
        ?>
</td>
	</tr>
	<?php 
        $bodova_sve_zadace += $bodova_zadaca;
    }
    // Ukupno bodova za studenta
    $bodova += $bodova_sve_zadace;
    ?>
	<tr><td colspan="<?php 
    echo $broj_zadataka + 1;
    ?>
" align="right">UKUPNO: </td>
	<td><?php 
    echo $bodova_sve_zadace;
    ?>
</td></tr>
</tbody>
</table>

<p>Za historiju izmjena kliknite na željeni zadatak. <a href="#" onclick="javascript:window.open('legenda-zadace.html','blah6','width=320,height=130'); return false;">Legenda simbola</a></p>
<br/>

<!-- end zadace -->

<?php 
    // Importujemo kod za coolbox
    cool_box('ajah_start("index.php?c=N&sta=common/ajah&akcija=izmjena_ispita&idpolja="+zamger_coolbox_origcaller.id+"&vrijednost="+coolboxedit.value, "undo_coolbox()", "zamger_coolbox_origcaller=false");');
    ?>
<script language="JavaScript">
function undo_coolbox() {
	var greska = document.getElementById("zamger_ajah-info").innerText || document.getElementById("zamger_ajah-info").textContent;
	if (!greska.match(/\S/)) greska = "Došlo je do greške. Molimo kontaktirajte administratora.";
	alert(greska);
	zamger_coolbox_origcaller.innerHTML = zamger_coolbox_origvalue;
	zamger_coolbox_origcaller=false;
}
</script>
<?php 
    // FIKSNE KOMPONENTE
    $q25 = myquery("select k.id, k.gui_naziv from komponenta as k, tippredmeta_komponenta as tpk, akademska_godina_predmet as agp where agp.predmet={$predmet} and agp.tippredmeta=tpk.tippredmeta and agp.akademska_godina={$ag} and tpk.komponenta=k.id and k.tipkomponente=5");
    // 5 = fiksna komponenta
    if (mysql_num_rows($q25) > 0) {
        ?>

<!-- fiksne komponente -->

<table cellspacing="0" cellpadding="2" border="0" id="zadace">
	<thead>
	<tr>
		<td><b>Komponenta ocjene</b></td>
		<td><b>Bodovi</b></td>
		<td><b>Dnevnik izmjena</b></td>
	</tr>
	</thead>
	<tbody>
<?php 
    }
    while ($r25 = mysql_fetch_row($q25)) {
        $komponenta = $r25[0];
        $q27 = myquery("select bodovi from komponentebodovi where student={$student} and predmet={$ponudakursa} and komponenta={$komponenta}");
        if (mysql_num_rows($q27) < 1) {
            $ocjenaedit = "/";
        } else {
            $ocjenaedit = mysql_result($q27, 0, 0);
        }
        ?>
	<tr>
		<td><?php 
        echo $r25[1];
        ?>
</td>
		<td id="fiksna-<?php 
        echo $student;
        ?>
-<?php 
        echo $predmet;
        ?>
-<?php 
        echo $komponenta;
        ?>
-<?php 
        echo $ag;
        ?>
" ondblclick="coolboxopen(this)"><?php 
        echo $ocjenaedit;
        ?>
</td>
		<td><?php 
        if ($privilegija == "nastavnik" || $privilegija == "super_asistent" || $user_siteadmin) {
            ?>
<div id="fiksnalog<?php 
            echo $komponenta;
            ?>
"></div><?php 
        } else {
            print "/";
        }
        ?>
</td>
	</tr>
	<?php 
    }
    if (mysql_num_rows($q25) > 0) {
        ?>
	</tbody>
</table>
<p>&nbsp;</p>
<?php 
    }
    //  ISPITI
    ?>

<!-- ispiti -->

<b>Ispiti:</b><br/>

<?php 
    $q30 = myquery("select i.id, UNIX_TIMESTAMP(i.datum), k.gui_naziv, k.id, k.prolaz from ispit as i, komponenta as k where i.predmet={$predmet} and i.akademska_godina={$ag} and i.komponenta=k.id order by i.datum,i.komponenta");
    if (mysql_num_rows($q30) == 0) {
        print "<p>Nije bilo parcijalnih ispita.</p>";
    } else {
        ?>
<table cellspacing="0" cellpadding="2" border="0" id="zadace">
	<thead>
	<tr>
		<td><b>Tip ispita</b></td>
		<td><b>Datum ispita</b></td>
		<td><b>Položio/la?</b></td>
		<td><b>Bodovi</b></td>
		<td><b>Dnevnik izmjena</b></td>
	</tr>
	</thead>
	<tbody>
<?php 
    }
    while ($r30 = mysql_fetch_row($q30)) {
        $ispit = $r30[0];
        $q40 = myquery("select ocjena from ispitocjene where ispit={$ispit} and student={$student}");
        if (mysql_num_rows($q40) < 1) {
            $ocjenaedit = "/";
            $ispitocjena = "Nije izašao/la";
        } else {
            $ocjenaedit = mysql_result($q40, 0, 0);
            $ispitocjena = "<b>" . mysql_result($q40, 0, 0) . " bodova</b>";
        }
        /*	?>
        	<p><?=$r30[2]?> (<?=date("d. m. Y",$r30[1])?>): <?=$ispitocjena?>
        	<?*/
        ?>
	<tr>
		<td><?php 
        echo $r30[2];
        ?>
</td>
		<td><?php 
        echo date("d. m. Y", $r30[1]);
        ?>
</td>
		<td><?php 
        if ($ocjenaedit == "/") {
            print "&nbsp;";
        } else {
            if ($ocjenaedit >= $r30[4]) {
                print "<img src=\"images/16x16/zad_ok.png\" width=\"16\" height=\"16\">";
            } else {
                print "<img src=\"images/16x16/brisanje.png\" width=\"16\" height=\"16\">";
            }
        }
        // najljepše slike
        ?>
</td>
		<td id="ispit-<?php 
        echo $student;
        ?>
-<?php 
        echo $ispit;
        ?>
" ondblclick="coolboxopen(this)"><?php 
        echo $ocjenaedit;
        ?>
</td>
		<td><?php 
        if ($privilegija == "nastavnik" || $privilegija == "super_asistent" || $user_siteadmin) {
            ?>
<div id="ispitlog<?php 
            echo $ispit;
            ?>
"></div><?php 
        } else {
            print "/";
        }
        ?>
</td>
	</tr>
	<?php 
        /*	if ($predmet_admin || $user_siteadmin) {
        		?> <span id="ispitlink<?=$ispit?>">(<a href="#" onclick="return toggleVisibilityObj('ispitlog<?=$ispit?>');">dnevnik izmjena</a>)</span> (<a href="#" onclick="return toggleVisibilityObj('ispitunos<?=$ispit?>');">upišite rezultat</a>)</p>
        		<p><div id="ispitlog<?=$ispit?>" style="display:none"></div></p>
        		<p><div id="ispitunos<?=$ispit?>" style="display:none">
        		<table border="0" cellspacing="0" cellpadding="2" height="16"><tr height="16">
        			<td width="37">&nbsp;</td>
        			<td align="left">Unesite bodove ili znak "kosa crta" (/):</td>
        			<td width="5">&nbsp;<br/>&nbsp;</td>
        			<td id="ispit-<?=$student?>-<?=$ispit?>" ondblclick="coolboxopen(this)" width="32" height="32" style="font-size:11px; border:1px solid black"><?=$ocjenaedit?></td>
        		</tr></table>
        		</div></p>
        		<?
        	} else {
        		print "</p>\n";
        	}*/
    }
    if (mysql_num_rows($q30) > 0) {
        ?>
</tbody></table>
<p>Dvokliknite na bodove da promijenite podatak ili upišete novi. Za brisanje rezultata, pobrišite postojeći podatak i pritisnite Enter.</p>
<?php 
    }
    // KONAČNA OCJENA
    $vrijeme_konacne_ocjene = 0;
    $q50 = myquery("select ocjena, UNIX_TIMESTAMP(datum), UNIX_TIMESTAMP(datum_u_indeksu) from konacna_ocjena where student={$student} and predmet={$predmet} and akademska_godina={$ag}");
    if (mysql_num_rows($q50) > 0) {
        $konacnaocjena = mysql_result($q50, 0, 0);
        $vrijeme_konacne_ocjene = mysql_result($q50, 0, 1);
        $datum_u_indeksu = mysql_result($q50, 0, 2);
    } else {
        $konacnaocjena = "/";
    }
    ?>
<p>&nbsp;</p>
<table cellspacing="0" cellpadding="2" border="0" id="zadace">
<tr>
	<td>&nbsp;</td>
	<td>Ocjena:</td>
	<td>Datum u indeksu:</td>
	<td>Dnevnik izmjena:</td>
</tr>
<tr>
	<td><b>Konačna ocjena:</b></td>
<?php 
    if ($privilegija == "nastavnik" || $user_siteadmin) {
        ?>
	<td id="ko-<?php 
        echo $student;
        ?>
-<?php 
        echo $predmet;
        ?>
-<?php 
        echo $ag;
        ?>
" ondblclick="coolboxopen(this)"><?php 
        echo $konacnaocjena;
        ?>
</td>
	<td id="kodatum-<?php 
        echo $student;
        ?>
-<?php 
        echo $predmet;
        ?>
-<?php 
        echo $ag;
        ?>
" ondblclick="coolboxopen(this)"><?php 
        echo date("d. m. Y", $datum_u_indeksu);
        ?>
</td>
	<td><div id="kolog"></div></td>
	<?php 
    } else {
        ?>
	<td><?php 
        echo $konacnaocjena;
        ?>
</td>
	<?php 
    }
    print "</tr></table>\n";
    // **************************************
    // POPUNA LOGOVA
    // **************************************
    // Ne radimo ništa ako korisnik nema privilegije
    if ($privilegija != "nastavnik" && $privilegija != "super_asistent" && !$user_siteadmin) {
        return;
    }
    ?>


<SCRIPT language="JavaScript">
<?php 
    // Spisak ponuda kursa, za slucaj da nema rezultata
    $q90 = myquery("select id from ponudakursa where predmet={$predmet} and akademska_godina={$ag}");
    $pkovi = array();
    while ($r90 = mysql_fetch_row($q90)) {
        array_push($pkovi, $r90[0]);
    }
    // Log za ispite
    $q100 = myquery("select i.id, UNIX_TIMESTAMP(i.vrijemeobjave) from ispit as i, komponenta as k where i.predmet={$predmet} and i.akademska_godina={$ag} and i.komponenta=k.id order by i.datum,i.komponenta");
    while ($r100 = mysql_fetch_row($q100)) {
        $vrijeme_ispita = $r100[1];
        // Utvrdjujemo ocjenu da bismo lakse mogli rekonstruisati izmjene kroz log
        $q105 = myquery("select ocjena from ispitocjene where ispit={$r100['0']} and student={$student}");
        if (mysql_num_rows($q105) < 1) {
            $ispitocjena = "/";
        } else {
            $ispitocjena = mysql_result($q105, 0, 0);
        }
        // Spisak izmjena ocjene
        $q110 = myquery("select dogadjaj, UNIX_TIMESTAMP(vrijeme), userid from log where \n\tdogadjaj like 'AJAH ispit - upisan novi rezultat % (ispit i{$r100['0']}, student u{$student})' or \n\tdogadjaj like 'AJAH ispit - izbrisan rezultat % (ispit i{$r100['0']}, student u{$student})' or \n\tdogadjaj like 'AJAH ispit - izmjena rezultata % (ispit i{$r100['0']}, student u{$student})' order by id desc");
        while ($r110 = mysql_fetch_row($q110)) {
            $datum = date("d.m.Y. H:i:s", $r110[1]);
            $q120 = myquery("select ime,prezime from osoba where id=" . $r110[2]);
            if (mysql_num_rows($q120) > 0) {
                $korisnik = mysql_result($q120, 0, 0) . " " . mysql_result($q120, 0, 1);
            } else {
                $korisnik = "/nepoznat korisnik {$r110['2']}/";
            }
            if (strstr($r110[0], "upisan novi rezultat")) {
                $rezultat = floatval(substr($r110[0], 34));
                if ($rezultat != $ispitocjena) {
                    $rezultat .= " ?";
                }
                $ispitocjena = "/";
                ?>
			document.getElementById('ispitlog<?php 
                echo $r100[0];
                ?>
').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> upisan rezultat <b><?php 
                echo $rezultat;
                ?>
</b> (<?php 
                echo $korisnik;
                ?>
, <?php 
                echo $datum;
                ?>
)<br />' + document.getElementById('ispitlog<?php 
                echo $r100[0];
                ?>
').innerHTML;
			<?php 
            } else {
                if (strstr($r110[0], "izbrisan rezultat")) {
                    $rezultat = floatval(substr($r110[0], 31));
                    if ($ispitocjena != "/") {
                        $rezultat .= " ?";
                    } else {
                        $ispitocjena = $rezultat;
                    }
                    ?>
			document.getElementById('ispitlog<?php 
                    echo $r100[0];
                    ?>
').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> izbrisan rezultat (<?php 
                    echo $korisnik;
                    ?>
, <?php 
                    echo $datum;
                    ?>
)<br />' + document.getElementById('ispitlog<?php 
                    echo $r100[0];
                    ?>
').innerHTML;
			<?php 
                } else {
                    if (preg_match("/izmjena rezultata ([\\d\\.]+) u ([\\d\\.]+)/", $r110[0], $matches)) {
                        $starirezultat = floatval($matches[1]);
                        $rezultat = floatval($matches[2]);
                        if ($ispitocjena != $rezultat) {
                            $rezultat .= " ?";
                        }
                        $ispitocjena = $starirezultat;
                        ?>
			document.getElementById('ispitlog<?php 
                        echo $r100[0];
                        ?>
').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> promijenjen rezultat u <b><?php 
                        echo $rezultat;
                        ?>
</b> (<?php 
                        echo $korisnik;
                        ?>
, <?php 
                        echo $datum;
                        ?>
)<br />' + document.getElementById('ispitlog<?php 
                        echo $r100[0];
                        ?>
').innerHTML;
			<?php 
                    }
                }
            }
        }
        // Necemo traziti masovne unose ako student nije ni izlazio na ispit
        if ($ispitocjena == "/") {
            continue;
        }
        // Masovni unosi
        $q110 = myquery("select UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj='masovni rezultati ispita za predmet pp{$predmet}' AND UNIX_TIMESTAMP(vrijeme)>{$r100['1']}-10 ORDER BY vrijeme");
        // uzimamo razliku 10 sekundi, jer moze doci do malog kasnjenja prilikom unosa u log
        if (mysql_num_rows($q110) > 0) {
            $datum = date("d.m.Y. H:i:s", mysql_result($q110, 0, 0));
            $q120 = myquery("select ime,prezime from osoba where id=" . mysql_result($q110, 0, 1));
            if (mysql_num_rows($q120) > 0) {
                $korisnik = mysql_result($q120, 0, 0) . " " . mysql_result($q120, 0, 1);
            } else {
                $korisnik = "/nepoznat korisnik " . mysql_result($q110, 0, 1) . "/";
            }
            ?>
		document.getElementById('ispitlog<?php 
            echo $r100[0];
            ?>
').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> masovni rezultati ispita - <b><?php 
            echo $ispitocjena;
            ?>
</b> (<?php 
            echo $korisnik;
            ?>
, <?php 
            echo $datum;
            ?>
)<br />' + document.getElementById('ispitlog<?php 
            echo $r100[0];
            ?>
').innerHTML;
		<?php 
            // Nema pod oznakom predmeta, pokusacemo ponudu kursa
        } else {
            foreach ($pkovi as $ponudakursa) {
                $q110 = myquery("select UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj='masovni rezultati ispita za predmet p{$ponudakursa}' AND UNIX_TIMESTAMP(vrijeme)>{$r100['1']}-10");
                if (mysql_num_rows($q110) > 0) {
                    $datum = date("d.m.Y. H:i:s", mysql_result($q110, 0, 0));
                    $q120 = myquery("select ime,prezime from osoba where id=" . mysql_result($q110, 0, 1));
                    if (mysql_num_rows($q120) > 0) {
                        $korisnik = mysql_result($q120, 0, 0) . " " . mysql_result($q120, 0, 1);
                    } else {
                        $korisnik = "/nepoznat korisnik " . mysql_result($q110, 0, 1) . "/";
                    }
                    ?>
			document.getElementById('ispitlog<?php 
                    echo $r100[0];
                    ?>
').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> masovni rezultati ispita - <b><?php 
                    echo $ispitocjena;
                    ?>
</b> (<?php 
                    echo $korisnik;
                    ?>
, <?php 
                    echo $datum;
                    ?>
)<br />' + document.getElementById('ispitlog<?php 
                    echo $r100[0];
                    ?>
').innerHTML;
			<?php 
                    break;
                }
            }
        }
    }
    // Log za konacnu ocjenu
    $bilo = 0;
    $upit = "\ndogadjaj like 'AJAH ko - dodana ocjena % (predmet pp{$predmet}, student u{$student})' or \ndogadjaj like 'AJAH ko - obrisana ocjena % (predmet pp{$predmet}, student u{$student})' or \ndogadjaj like 'AJAH ko - izmjena ocjene % (predmet pp{$predmet}, student u{$student})' or \ndogadjaj like 'dopisana ocjena % prilikom upisa na studij (predmet pp{$predmet}, student u{$student})' or \ndogadjaj like 'masovno dodana ocjena % (predmet pp{$predmet}, student u{$student})'";
    $q150 = myquery("select dogadjaj, UNIX_TIMESTAMP(vrijeme), userid from log where {$upit} order by id desc");
    while ($r150 = mysql_fetch_row($q150)) {
        $bilo = 1;
        $datum = date("d.m.Y. H:i:s", $r150[1]);
        $q160 = myquery("select ime,prezime from osoba where id={$r150['2']}");
        if (mysql_num_rows($q160) > 0) {
            $korisnik = mysql_result($q160, 0, 0) . " " . mysql_result($q160, 0, 1);
        } else {
            $korisnik = "/nepoznat korisnik {$r150['2']}/";
        }
        if (strstr($r150[0], " - dodana ocjena")) {
            $rezultat = intval(substr($r150[0], 24));
            if ($rezultat != $konacnaocjena) {
                $rezultat .= " ?";
            }
            $konacnaocjena = "/";
            ?>
		document.getElementById('kolog').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> dodana ocjena <b><?php 
            echo $rezultat;
            ?>
</b> (<?php 
            echo $korisnik;
            ?>
, <?php 
            echo $datum;
            ?>
)<br />' + document.getElementById('kolog').innerHTML;
		<?php 
        } else {
            if (strstr($r150[0], "obrisana ocjena")) {
                $rezultat = intval(substr($r150[0], 26));
                if ($konacnaocjena != "/") {
                    $rezultat .= " ?";
                } else {
                    $konacnaocjena = $rezultat;
                }
                ?>
		document.getElementById('kolog').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> obrisana ocjena (<?php 
                echo $korisnik;
                ?>
, <?php 
                echo $datum;
                ?>
)<br />' + document.getElementById('kolog').innerHTML;
		<?php 
            } else {
                if (preg_match("/izmjena ocjene (\\d+) u (\\d+)/", $r150[0], $matches)) {
                    $starirezultat = intval($matches[1]);
                    $rezultat = intval($matches[2]);
                    if ($konacnaocjena != $rezultat) {
                        $rezultat .= " ?";
                    }
                    $konacnaocjena = $starirezultat;
                    ?>
		document.getElementById('kolog').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> promijenjena ocjena u <b><?php 
                    echo $rezultat;
                    ?>
</b> (<?php 
                    echo $korisnik;
                    ?>
, <?php 
                    echo $datum;
                    ?>
)<br />' + document.getElementById('kolog').innerHTML;
		<?php 
                } else {
                    if (strstr($r150[0], "dopisana ocjena")) {
                        $rezultat = intval(substr($r150[0], 16));
                        if ($konacnaocjena != $rezultat) {
                            $rezultat .= " ?";
                        }
                        $konacnaocjena = "/";
                        ?>
		document.getElementById('kolog').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> studentska služba dopisala ocjenu <b><?php 
                        echo $rezultat;
                        ?>
</b> prilikom upisa u sljedeći semestar (<?php 
                        echo $korisnik;
                        ?>
, <?php 
                        echo $datum;
                        ?>
)<br />' + document.getElementById('kolog').innerHTML;
		<?php 
                    } else {
                        if (strstr($r150[0], "masovno dodana ocjena")) {
                            $rezultat = intval(substr($r150[0], 22));
                            if ($konacnaocjena != $rezultat) {
                                $rezultat .= " ?";
                            }
                            $konacnaocjena = "/";
                            ?>
		document.getElementById('kolog').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> masovno upisana ocjena <b><?php 
                            echo $rezultat;
                            ?>
</b> (<?php 
                            echo $korisnik;
                            ?>
, <?php 
                            echo $datum;
                            ?>
)<br />' + document.getElementById('kolog').innerHTML;
		<?php 
                        }
                    }
                }
            }
        }
    }
    /*if (mysql_num_rows($q150)<1) foreach ($pkovi as $ponudakursa) {
    	$q150 = myquery("select dogadjaj, UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj like 'AJAH ko - dodana ocjena % (predmet p$ponudakursa, student u$student)' or dogadjaj like 'AJAH ko - obrisana ocjena % (predmet p$ponudakursa, student u$student)' or dogadjaj like 'AJAH ko - izmjena ocjene % (predmet p$ponudakursa, student u$student)' order by id desc");
    
    	while ($r150 = mysql_fetch_row($q150)) {
    		$bilo=1;
    		$datum = date("d.m.Y. H:i:s", $r150[1]);
    		$q160 = myquery("select ime,prezime from osoba where id=$r150[2]");
    		if (mysql_num_rows($q160)>0) {
    			$korisnik = mysql_result($q160,0,0)." ".mysql_result($q160,0,1);
    		} else {
    			$korisnik = "/nepoznat korisnik $r150[2]/";
    		}
    	
    		if (strstr($r150[0], "dodana ocjena")) {
    			$rezultat = intval(substr($r150[0], 24));
    			if ($rezultat != $konacnaocjena) $rezultat .= " ?";
    			$konacnaocjena = "/";
    			$vrijeme_konacne_ocjene=$r150[1];
    			?>
    			document.getElementById('kolog').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> dodana ocjena <b><?=$rezultat?></b> (<?=$korisnik?>, <?=$datum?>)<br />' + document.getElementById('kolog').innerHTML;
    			<?
    		} else if (strstr($r150[0], "obrisana ocjena")) {
    			$rezultat = intval(substr($r150[0], 26));
    			if ($konacnaocjena != "/") $rezultat .= " ?"; else $konacnaocjena=$rezultat;
    			$vrijeme_konacne_ocjene=0;
    			?>
    			document.getElementById('kolog').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> obrisana ocjena (<?=$korisnik?>, <?=$datum?>)<br />' + document.getElementById('kolog').innerHTML;
    			<?
    		} else if (preg_match("/izmjena ocjene (\d+) u (\d+)/", $r150[0], $matches)) {
    			$starirezultat = intval($matches[1]);
    			$rezultat = intval($matches[2]);
    			if ($konacnaocjena != $rezultat) $rezultat .= " ?";
    			$konacnaocjena = $starirezultat;
    			$vrijeme_konacne_ocjene=$r150[1];
    			?>
    			document.getElementById('kolog').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> promijenjena ocjena u <b><?=$rezultat?></b> (<?=$korisnik?>, <?=$datum?>)<br />' + document.getElementById('kolog').innerHTML;
    			<?
    		}
    //print "$r150[0] $r150[1] $r150[2]\n";
    	}
    }*/
    if (mysql_num_rows($q150) == 0 && $vrijeme_konacne_ocjene > 0) {
        $bilo = 1;
        $q170 = myquery("select UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj='masovno upisane ocjene na predmet pp{$predmet}' AND ABS(UNIX_TIMESTAMP(vrijeme)-{$vrijeme_konacne_ocjene})<10");
        // uzimamo apsolutnu razliku 10 sekundi, jer moze doci do malog kasnjenja prilikom unosa u log
        if (mysql_num_rows($q170) > 0) {
            $datum = date("d.m.Y. H:i:s", mysql_result($q170, 0, 0));
            $q180 = myquery("select ime,prezime from osoba where id=" . mysql_result($q170, 0, 1));
            if (mysql_num_rows($q180) > 0) {
                $korisnik = mysql_result($q180, 0, 0) . " " . mysql_result($q180, 0, 1);
            } else {
                $korisnik = "/nepoznat korisnik " . mysql_result($q170, 0, 1) . "/";
            }
            ?>
		document.getElementById('kolog').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> masovno unesene ocjene - <b><?php 
            echo $konacnaocjena;
            ?>
</b> (<?php 
            echo $korisnik;
            ?>
, <?php 
            echo $datum;
            ?>
)<br />' + document.getElementById('kolog').innerHTML;
		<?php 
            // Nema pod oznakom predmeta, pokusacemo ponudu kursa
        } else {
            foreach ($pkovi as $ponudakursa) {
                $q170 = myquery("select UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj='masovno upisane ocjene na predmet p{$ponudakursa}' AND ABS(UNIX_TIMESTAMP(vrijeme)-" . mysql_result($q50, 0, 1) . ")<10");
                // uzimamo apsolutnu razliku 10 sekundi, jer moze doci do malog kasnjenja prilikom unosa u log
                if (mysql_num_rows($q170) > 0) {
                    $datum = date("d.m.Y. H:i:s", mysql_result($q170, 0, 0));
                    $q180 = myquery("select ime,prezime from osoba where id=" . mysql_result($q170, 0, 1));
                    if (mysql_num_rows($q180) > 0) {
                        $korisnik = mysql_result($q180, 0, 0) . " " . mysql_result($q180, 0, 1);
                    } else {
                        $korisnik = "/nepoznat korisnik " . mysql_result($q170, 0, 1) . "/";
                    }
                    ?>
			document.getElementById('kolog').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> masovno unesene ocjene - <b><?php 
                    echo $konacnaocjena;
                    ?>
</b> (<?php 
                    echo $korisnik;
                    ?>
, <?php 
                    echo $datum;
                    ?>
)<br />' + document.getElementById('kolog').innerHTML;
			<?php 
                }
            }
        }
    }
    // Ako nema nista u logu, sakrivamo ga
    if ($bilo == 0) {
        ?>
	toggleVisibilityObj('kolink');
	<?php 
    }
    // Log za fiksne komponente
    // Radimo samo ako ima fiksnih komponenti
    $q200 = myquery("select k.id from komponenta as k, tippredmeta_komponenta as tpk, akademska_godina_predmet as agp where agp.predmet={$predmet} and agp.tippredmeta=tpk.tippredmeta and agp.akademska_godina={$ag} and tpk.komponenta=k.id and k.tipkomponente=5");
    // 5 = fiksna komponenta
    while ($r200 = mysql_fetch_row($q200)) {
        $komponenta = $r200[0];
        // Utvrdjujemo ocjenu da bismo lakse mogli rekonstruisati izmjene kroz log
        $q205 = myquery("select bodovi from komponentebodovi where student={$student} and predmet={$ponudakursa} and komponenta={$komponenta}");
        if (mysql_num_rows($q205) < 1) {
            $ispitocjena = "/";
        } else {
            $ispitocjena = mysql_result($q205, 0, 0);
        }
        // Izmjene fiksne komponente putem AJAHa
        $q210 = myquery("select dogadjaj, UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj like 'AJAH fiksna - upisani bodovi % za fiksnu komponentu {$komponenta} (predmet pp{$predmet}, student u{$student})' order by id desc");
        while ($r210 = mysql_fetch_row($q210)) {
            $datum = date("d.m.Y. H:i:s", $r210[1]);
            $q220 = myquery("select ime,prezime from osoba where id=" . $r210[2]);
            if (mysql_num_rows($q220) > 0) {
                $korisnik = mysql_result($q220, 0, 0) . " " . mysql_result($q220, 0, 1);
            } else {
                $korisnik = "/nepoznat korisnik {$r210['2']}/";
            }
            $rezultat = floatval(substr($r210[0], 29));
            ?>
		document.getElementById('fiksnalog<?php 
            echo $komponenta;
            ?>
').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> upisan rezultat <b><?php 
            echo $rezultat;
            ?>
</b> (<?php 
            echo $korisnik;
            ?>
, <?php 
            echo $datum;
            ?>
)<br />' + document.getElementById('fiksnalog<?php 
            echo $komponenta;
            ?>
').innerHTML;
		<?php 
        }
        // Masovni unosi - jednog dana kad bude
        /*	$q110 = myquery("select UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj='masovni rezultati ispita za predmet pp$predmet' AND ABS(UNIX_TIMESTAMP(vrijeme)-$r100[1])<10"); // uzimamo apsolutnu razliku 10 sekundi, jer moze doci do malog kasnjenja prilikom unosa u log
        	if (mysql_num_rows($q110)>0) {
        		$datum = date("d.m.Y. H:i:s", mysql_result($q110,0,0));
        		$q120 = myquery("select ime,prezime from osoba where id=".mysql_result($q110,0,1));
        		if (mysql_num_rows($q120)>0) {
        			$korisnik = mysql_result($q120,0,0)." ".mysql_result($q120,0,1);
        		} else {
        			$korisnik = "/nepoznat korisnik/";
        		}
        		?>
        		document.getElementById('ispitlog<?=$r100[0]?>').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> masovni rezultati ispita - <b><?=$ispitocjena?></b> (<?=$korisnik?>, <?=$datum?>)<br />' + document.getElementById('ispitlog<?=$r100[0]?>').innerHTML;
        		<?
        
        	// Nema pod oznakom predmeta, pokusacemo ponudu kursa
        	} else foreach ($pkovi as $ponudakursa) {
        		$q110 = myquery("select UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj='masovni rezultati ispita za predmet p$ponudakursa' AND ABS(UNIX_TIMESTAMP(vrijeme)-$r100[1])<10");
        		if (mysql_num_rows($q110)>0) {
        			$datum = date("d.m.Y. H:i:s", mysql_result($q110,0,0));
        			$q120 = myquery("select ime,prezime from osoba where id=".mysql_result($q110,0,1));
        			if (mysql_num_rows($q120)>0) {
        				$korisnik = mysql_result($q120,0,0)." ".mysql_result($q120,0,1);
        			} else {
        				$korisnik = "/nepoznat korisnik/";
        			}
        			?>
        			document.getElementById('ispitlog<?=$r100[0]?>').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> masovni rezultati ispita - <b><?=$ispitocjena?></b> (<?=$korisnik?>, <?=$datum?>)<br />' + document.getElementById('ispitlog<?=$r100[0]?>').innerHTML;
        			<?
        		}
        	}*/
    }
    /*$q100 = myquery("select i.id, UNIX_TIMESTAMP(i.vrijemeobjave) from ispit as i, komponenta as k where i.predmet=$predmet and i.akademska_godina=$ag and i.komponenta=k.id order by i.datum,i.komponenta");
    
    while ($r100 = mysql_fetch_row($q100)) {
    	// Utvrdjujemo ocjenu da bismo lakse mogli rekonstruisati izmjene kroz log
    	$q105 = myquery("select ocjena from ispitocjene where ispit=$r100[0] and student=$student");
    	if (mysql_num_rows($q105)<1)
    		$ispitocjena="/";
    	else
    		$ispitocjena=mysql_result($q105,0,0);
    
    	// Spisak izmjena ocjene
    	$q110 = myquery("select dogadjaj, UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj like 'AJAH ispit - upisan novi rezultat % (ispit i$r100[0], student u$student)' or dogadjaj like 'AJAH ispit - izbrisan rezultat % (ispit i$r100[0], student u$student)' or dogadjaj like 'AJAH ispit - izmjena rezultata % (ispit i$r100[0], student u$student)' order by id desc");
    	while ($r110 = mysql_fetch_row($q110)) {
    		$datum = date("d.m.Y. H:i:s", $r110[1]);
    		$q120 = myquery("select ime,prezime from osoba where id=".$r110[2]);
    		if (mysql_num_rows($q120)>0) {
    			$korisnik = mysql_result($q120,0,0)." ".mysql_result($q120,0,1);
    		} else {
    			$korisnik = "/nepoznat korisnik $r110[2]/";
    		}
    
    		if (strstr($r110[0], "upisan novi rezultat")) {
    			$rezultat = floatval(substr($r110[0], 34));
    			if ($rezultat != $ispitocjena) $rezultat .= " ?";
    			$ispitocjena = "/";
    			?>
    			document.getElementById('ispitlog<?=$r100[0]?>').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> upisan rezultat <b><?=$rezultat?></b> (<?=$korisnik?>, <?=$datum?>)<br />' + document.getElementById('ispitlog<?=$r100[0]?>').innerHTML;
    			<?
    		} else if (strstr($r110[0], "izbrisan rezultat")) {
    			$rezultat = floatval(substr($r110[0], 31));
    			if ($ispitocjena != "/") $rezultat .= " ?"; else $ispitocjena=$rezultat;
    			?>
    			document.getElementById('ispitlog<?=$r100[0]?>').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> izbrisan rezultat (<?=$korisnik?>, <?=$datum?>)<br />' + document.getElementById('ispitlog<?=$r100[0]?>').innerHTML;
    			<?
    		} else if (preg_match("/izmjena rezultata ([\d\.]+) u ([\d\.]+)/", $r110[0], $matches)) {
    			$starirezultat = floatval($matches[1]);
    			$rezultat = floatval($matches[2]);
    			if ($ispitocjena != $rezultat) $rezultat .= " ?";
    			$ispitocjena = $starirezultat;
    			?>
    			document.getElementById('ispitlog<?=$r100[0]?>').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> promijenjen rezultat u <b><?=$rezultat?></b> (<?=$korisnik?>, <?=$datum?>)<br />' + document.getElementById('ispitlog<?=$r100[0]?>').innerHTML;
    			<?
    		}
    	}
    
    	// Sakrivamo link na log ako nema ništa u njemu
    	if ($ispitocjena == "/" && mysql_num_rows($q110)<1) {
    /*		?>
    		toggleVisibilityObj('ispitlink<?=$r100[0]?>');
    		<?*/
    /*	}
    
    	// Necemo traziti masovne unose ako student nije ni izlazio na ispit
    	if ($ispitocjena == "/") continue; 
    
    
    	// Masovni unosi
    
    	$q110 = myquery("select UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj='masovni rezultati ispita za predmet pp$predmet' AND ABS(UNIX_TIMESTAMP(vrijeme)-$r100[1])<10"); // uzimamo apsolutnu razliku 10 sekundi, jer moze doci do malog kasnjenja prilikom unosa u log
    	if (mysql_num_rows($q110)>0) {
    		$datum = date("d.m.Y. H:i:s", mysql_result($q110,0,0));
    		$q120 = myquery("select ime,prezime from osoba where id=".mysql_result($q110,0,1));
    		if (mysql_num_rows($q120)>0) {
    			$korisnik = mysql_result($q120,0,0)." ".mysql_result($q120,0,1);
    		} else {
    			$korisnik = "/nepoznat korisnik ".mysql_result($q110,0,1)."/";
    		}
    		?>
    		document.getElementById('ispitlog<?=$r100[0]?>').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> masovni rezultati ispita - <b><?=$ispitocjena?></b> (<?=$korisnik?>, <?=$datum?>)<br />' + document.getElementById('ispitlog<?=$r100[0]?>').innerHTML;
    		<?
    
    	// Nema pod oznakom predmeta, pokusacemo ponudu kursa
    	} else foreach ($pkovi as $ponudakursa) {
    		$q110 = myquery("select UNIX_TIMESTAMP(vrijeme), userid from log where dogadjaj='masovni rezultati ispita za predmet p$ponudakursa' AND ABS(UNIX_TIMESTAMP(vrijeme)-$r100[1])<10");
    		if (mysql_num_rows($q110)>0) {
    			$datum = date("d.m.Y. H:i:s", mysql_result($q110,0,0));
    			$q120 = myquery("select ime,prezime from osoba where id=".mysql_result($q110,0,1));
    			if (mysql_num_rows($q120)>0) {
    				$korisnik = mysql_result($q120,0,0)." ".mysql_result($q120,0,1);
    			} else {
    				$korisnik = "/nepoznat korisnik ".mysql_result($q110,0,1)."/";
    			}
    			?>
    			document.getElementById('ispitlog<?=$r100[0]?>').innerHTML = '<img src="images/16x16/log_edit.png" width="16" height="16" align="center"> masovni rezultati ispita - <b><?=$ispitocjena?></b> (<?=$korisnik?>, <?=$datum?>)<br />' + document.getElementById('ispitlog<?=$r100[0]?>').innerHTML;
    			<?
    		}
    	}
    	
    }*/
    ?>
</SCRIPT>
<?php 
}
Esempio n. 6
0
function saradnik_grupa()
{
    global $userid, $user_siteadmin;
    require "lib/manip.php";
    print '<p><a href="index.php?sta=saradnik/intro">Spisak predmeta i grupa</a></p>' . "\n";
    // ------- ULAZNI PARAMETRI
    $labgrupa = intval($_REQUEST['id']);
    $kreiranje = intval($_GET['kreiranje']);
    if ($labgrupa > 0) {
        // Određujemo predmet i ag za labgrupu
        $q30 = myquery("select naziv, predmet, akademska_godina, virtualna from labgrupa where id={$labgrupa}");
        if (mysql_num_rows($q30) < 1) {
            biguglyerror("Nemate pravo ulaska u ovu grupu!");
            zamgerlog("nepostojeca labgrupa {$labgrupa}", 3);
            // 3 = greska
            zamgerlog2("nepostojeca labgrupa", $labgrupa);
            return;
        }
        $naziv = mysql_result($q30, 0, 0);
        $predmet = mysql_result($q30, 0, 1);
        $ag = mysql_result($q30, 0, 2);
        $virtualna = mysql_result($q30, 0, 3);
    } else {
        // Ako nije definisana grupa, probacemo preko predmeta i ag uci u virtuelnu grupu
        $predmet = intval($_REQUEST['predmet']);
        $ag = intval($_REQUEST['ag']);
        $q35 = myquery("select id, naziv from labgrupa where predmet={$predmet} and akademska_godina={$ag} and virtualna=1");
        if (mysql_num_rows($q35) < 1) {
            biguglyerror("Nemate pravo ulaska u ovu grupu!");
            zamgerlog("nepostojeca virtualna labgrupa za predmet pp{$predmet} ag{$ag}", 3);
            // 3 = greska
            zamgerlog2("nepostojeca virtualna labgrupa", $predmet, $ag);
            return;
        }
        $labgrupa = mysql_result($q35, 0, 0);
        $naziv = mysql_result($q35, 0, 1);
        $virtualna = 1;
    }
    // Da li korisnik ima pravo ući u grupu?
    if (!$user_siteadmin) {
        $q40 = myquery("select nivo_pristupa from nastavnik_predmet where nastavnik={$userid} and predmet={$predmet} and akademska_godina={$ag}");
        if (mysql_num_rows($q40) < 1) {
            biguglyerror("Nemate pravo ulaska u ovu grupu!");
            zamgerlog("nastavnik nije na predmetu (labgrupa g{$labgrupa})", 3);
            zamgerlog2("nije saradnik na predmetu", $predmet, $ag);
            return;
        }
        $privilegija = mysql_result($q40, 0, 0);
        $q50 = myquery("select o.labgrupa from ogranicenje as o, labgrupa as l where o.nastavnik={$userid} and o.labgrupa=l.id and l.predmet={$predmet} and l.akademska_godina={$ag}");
        if (mysql_num_rows($q50) > 0) {
            $nasao = 0;
            while ($r50 = mysql_fetch_row($q50)) {
                if ($r50[0] == $labgrupa) {
                    $nasao = 1;
                    break;
                }
            }
            if ($nasao == 0) {
                biguglyerror("Nemate pravo ulaska u ovu grupu!");
                zamgerlog("ogranicenje na labgrupu g{$labgrupa}", 3);
                // 3 - greska
                zamgerlog2("ima ogranicenje na labgrupu", $labgrupa);
                return;
            }
        }
    }
    // Spisak komponenti koje su zastupljene na predmetu
    $tipovi_komponenti = array();
    $q52 = myquery("select k.id, k.tipkomponente from akademska_godina_predmet as agp, tippredmeta_komponenta as tpk, komponenta as k where agp.akademska_godina={$ag} and agp.predmet={$predmet} and agp.tippredmeta=tpk.tippredmeta and tpk.komponenta=k.id");
    while ($r52 = mysql_fetch_row($q52)) {
        $tipovi_komponenti[$r52[0]] = $r52[1];
    }
    // ------- AKCIJE
    // Dodavanje casa
    if ($_POST['akcija'] == 'dodajcas' && check_csrf_token()) {
        // KOMPONENTA
        // Ovaj kod radi samo sa jednom komponentom prisustva. U budućnosti to bi moglo biti popravljeno, ali realno nema prevelike potrebe
        $datum = intval($_POST['godina']) . "-" . intval($_POST['mjesec']) . "-" . intval($_POST['dan']);
        $vrijeme = $_POST['vrijeme'];
        if (!preg_match("/^\\d?\\d\\:\\d\\d\$/", $vrijeme)) {
            niceerror("Vrijeme nije u ispravnom formatu!");
            print "<p>Vrijeme mora biti oblika HH:MM, a vi ste unijeli '{$vrijeme}'.</p>";
            print "<p><a href=\"?sta=saradnik/grupa&id={$labgrupa}\">Nazad</a></p>";
            return;
        }
        $predavanje = intval($_POST['predavanje']);
        // Ako se klikne na refresh, datum moze biti 0-0-0...
        if ($datum != "0-0-0") {
            // Tražimo komponentu prisustva i uzimamo prvu
            // FIXME: praktično je nemoguće registrovati čas za drugu komponentu
            $komponenta = 0;
            foreach ($tipovi_komponenti as $k_id => $tip) {
                if ($tip == 3) {
                    // 3 = prisustvo
                    $komponenta = $k_id;
                    break;
                }
            }
            if ($komponenta == 0) {
                niceerror("Nije definisana komponenta za prisustvo na ovom predmetu.");
                zamgerlog("nije definisana komponenta za prisustvo na pp{$predmet}", 3);
                zamgerlog2("nije definisana komponenta za prisustvo", $predmet, $ag);
                return;
            }
            $kviz = intval($_REQUEST['kviz']);
            $q60 = myquery("insert into cas set datum='{$datum}', vrijeme='{$vrijeme}', labgrupa={$labgrupa}, nastavnik={$userid}, komponenta={$komponenta}, kviz={$kviz}");
            $cas_id = mysql_insert_id();
            // Max bodova za komponentu
            $q75 = myquery("select maxbodova, opcija from komponenta where id={$komponenta}");
            $maxbodova = mysql_result($q75, 0, 0);
            $opcija = mysql_result($q75, 0, 1);
            // dodajemo u bazu default podatke za prisustvo i ocjene
            $q80 = myquery("select student from student_labgrupa where labgrupa={$labgrupa}");
            while ($r80 = mysql_fetch_row($q80)) {
                $stud_id = $r80[0];
                $prisustvo = intval($_POST['prisustvo']);
                // Potrebna nam je ponudakursa za update_komponente
                $q53 = myquery("select sp.predmet from student_predmet as sp, ponudakursa as pk where sp.student={$stud_id} and sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag}");
                $ponudakursa = mysql_result($q53, 0, 0);
                $q90 = mysql_query("insert into prisustvo set student={$stud_id}, cas={$cas_id}, prisutan={$prisustvo}");
                // Update radimo samo ako se registruje odsustvo ili ako je opcija=-1 (proporcionalni bodovi)
                if ($prisustvo == 0 || $opcija == -1) {
                    update_komponente($stud_id, $ponudakursa, $komponenta);
                } else {
                    // Ako nema uopšte bodova za komponentu, ubacićemo broj bodova
                    $q95 = myquery("select count(*) from komponentebodovi where student={$stud_id} and predmet={$ponudakursa} and komponenta={$komponenta}");
                    if (mysql_result($q95, 0, 0) == 0) {
                        $q97 = myquery("insert into komponentebodovi set student={$stud_id}, predmet={$ponudakursa}, komponenta={$komponenta}, bodovi={$maxbodova}");
                    }
                }
            }
            // Ako je odabrano "sa kvizom" kreiramo kviz
            if ($kviz > 0) {
                $q98 = myquery("select trajanje_kviza from kviz where id={$kviz}");
                $trajanje = mysql_result($q98, 0, 0) * 2;
                $q99 = myquery("update kviz set vrijeme_pocetak=NOW(), vrijeme_kraj=NOW() + INTERVAL {$trajanje} SECOND, labgrupa={$labgrupa} where id={$kviz}");
            }
            zamgerlog("registrovan cas c{$cas_id}", 2);
            // nivo 2: edit
            zamgerlog2("registrovan cas", $cas_id);
        }
    }
    // Brisanje casa
    if ($_POST['akcija'] == 'brisi_cas' && check_csrf_token()) {
        $cas_id = intval($_POST['_lv_casid']);
        // Updatujemo komponentu svima koji su bili prisutni
        $q103 = myquery("select komponenta from cas where id={$cas_id}");
        if (mysql_num_rows($q103) > 0) {
            $komponenta = mysql_result($q103, 0, 0);
            $q105 = myquery("select sp.student, sp.predmet from prisustvo as pr, student_predmet as sp, ponudakursa as pk where pr.cas={$cas_id} and pr.student=sp.student and sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag}");
            $studenti = $ponudekursa = array();
            while ($r105 = mysql_fetch_row($q105)) {
                array_push($studenti, $r105[0]);
                $ponudekursa[$r105[0]] = $r105[1];
            }
            $q100 = myquery("delete from prisustvo where cas={$cas_id}");
            $q110 = myquery("delete from cas where id={$cas_id}");
            foreach ($studenti as $student) {
                update_komponente($student, $ponudekursa[$student], $komponenta);
            }
            zamgerlog("obrisan cas {$cas_id}", 2);
            zamgerlog2("obrisan cas", $cas_id);
        }
    }
    // ------- ZAGLAVLJE STRANICE (naslov i sl.)
    $q130 = myquery("select naziv from predmet where id={$predmet}");
    $pime = mysql_result($q130, 0, 0);
    // Ne bi se smjelo desiti da je nepostojeci predmet, posto se to odredjuje iz labgrupe
    ?>
<br />
<center><h1><?php 
    echo $pime;
    ?>
 - <?php 
    echo $naziv;
    ?>
</h1></center>
<?php 
    // Ima li ikoga u grupi?
    $q140 = myquery("select count(student) from student_labgrupa where labgrupa={$labgrupa}");
    if (mysql_result($q140, 0, 0) < 1) {
        print "<p>Nijedan student nije u grupi</p>\n";
        return;
    }
    // JavaScript za prikaz popup prozora (trenutno se koristi samo za komentare)
    //  * FF ne podržava direktan poziv window.open() iz eventa
    ?>
<script language="JavaScript">
function firefoxopen(p1,p2,p3) { 
	window.open(p1,p2,p3);
}
</script>

<?php 
    // Cool editing box
    if ($privilegija == "nastavnik" || $privilegija == "super_asistent" || $user_siteadmin) {
        cool_box('ajah_start("index.php?c=N&sta=common/ajah&akcija=izmjena_ispita&idpolja="+zamger_coolbox_origcaller.id+"&vrijednost="+coolboxedit.value, "undo_coolbox()", "zamger_coolbox_origcaller=false");');
        ?>
	<script language="JavaScript">
	function undo_coolbox() {
		var greska = document.getElementById("zamger_ajah-info").innerText || document.getElementById("zamger_ajah-info").textContent;
		if (!greska.match(/\S/)) greska = "Došlo je do greške. Molimo kontaktirajte administratora.";
		alert(greska);
		zamger_coolbox_origcaller.innerHTML = zamger_coolbox_origvalue;
		zamger_coolbox_origcaller=false;
	}
	</script>
	<?php 
    }
    // ------- SPISAK NEPREGLEDANIH ZADAĆA
    if (in_array(4, $tipovi_komponenti)) {
        // 4 = zadaće
        // JavaScript za prikaz popup prozora sa zadaćom
        //  * Kod IE naslov prozora ('zadaca') ne smije sadržavati razmak i
        // ne smije biti prazan, a inače je nebitan
        ?>
	<script language="JavaScript">
	function openzadaca(e, student,zadaca,zadatak) {
		var evt = e || window.event;
		var url='index.php?sta=saradnik/zadaca&student='+student+'&zadaca='+zadaca+'&zadatak='+zadatak;
		if (evt.shiftKey)
			window.open(url,'_blank','width=600,height=600,scrollbars=yes');
		else
			window.open(url,'zadaca','width=600,height=600,scrollbars=yes');
	}
	</script>
	
	<?php 
        $q150 = myquery("SELECT zk.zadaca, zk.redni_broj, zk.student, a.ime, a.prezime, zk.status, z.naziv\n\tFROM zadatak as zk, osoba as a, student_labgrupa as sl, zadaca as z\n\tWHERE zk.student=a.id AND zk.student=sl.student \n\tAND sl.labgrupa={$labgrupa} AND zk.zadaca=z.id AND z.predmet={$predmet} AND z.akademska_godina={$ag}\n\tORDER BY zk.zadaca, zk.redni_broj, a.prezime, a.ime, zk.id DESC");
        $mzadaca = 0;
        $mzadatak = 0;
        $mstudent = 0;
        $print = "";
        while ($r150 = mysql_fetch_row($q150)) {
            if ($r150[0] == $mzadaca && $r150[1] == $mzadatak && $r150[2] == $mstudent) {
                continue;
            }
            $mzadaca = $r150[0];
            $mzadatak = $r150[1];
            $mstudent = $r150[2];
            if ($r150[5] != 4) {
                continue;
            }
            $print .= '<li><a href="#" onclick="javascript:openzadaca(event, \'' . $r150[2] . '\',\'' . $r150[0] . '\',\'' . $r150[1] . '\')">' . $r150[3] . " " . $r150[4] . " - " . $r150[6] . ", zadatak " . $r150[1] . "</a></li>";
        }
        if ($print != "") {
            print "<h2>Nove zadaće za pregled:</h2>\n<ul>{$print}</ul>";
        }
    }
    // ------- FORMA ZA NOVI ČAS
    if (in_array(3, $tipovi_komponenti)) {
        // 3 = prisustvo
        $dan = date("d");
        $mjesec = date("m");
        $godina = date("Y");
        $vrijeme = date("H:i");
        // Ujedno ćemo definisati i neke JavaScripte za prisustvo
        ?>
	<table border="0" width="100%"><tr><td valign="top" width="50%">&nbsp;</td>
	<td valign="top" width="50%">
		Registrujte novi čas:<br/>
		<?php 
        echo genform("POST");
        ?>
		<input type="hidden" name="akcija" value="dodajcas">
	
		Datum:
		<select name="dan" class="default"><?php 
        for ($i = 1; $i <= 31; $i++) {
            print "<option value=\"{$i}\"";
            if ($i == $dan) {
                print " selected";
            }
            print ">{$i}</option>";
        }
        ?>
</select>&nbsp;&nbsp;
		<select name="mjesec" class="default"><?php 
        for ($i = 1; $i <= 12; $i++) {
            print "<option value=\"{$i}\"";
            if ($i == $mjesec) {
                print " selected";
            }
            print ">{$i}</option>";
        }
        ?>
</select>&nbsp;&nbsp;
		<select name="godina" class="default"><?php 
        for ($i = 2005; $i <= 2020; $i++) {
            print "<option value=\"{$i}\"";
            if ($i == $godina) {
                print " selected";
            }
            print ">{$i}</option>";
        }
        ?>
</select><br/>
		Vrijeme: <input type="text" size="10" name="vrijeme" value="<?php 
        echo $vrijeme;
        ?>
"  class="default">
		<input type="submit" value="Registruj"  class="default"><br/><br/>
	
		<input type="radio" name="prisustvo" value="1" CHECKED>Svi prisutni
		&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
		<input type="radio" name="prisustvo" value="0">Svi odsutni
		<?php 
        // Kreiraj čas sa kvizom
        $q160 = myquery("select smp.aktivan from studentski_modul_predmet as smp, studentski_modul as sm where smp.predmet={$predmet} and smp.akademska_godina={$ag} and smp.studentski_modul=sm.id and sm.modul='student/kviz'");
        if (mysql_num_rows($q160) > 0 && mysql_result($q160, 0, 0) == 1) {
            ?>
			<br>
			Sa kvizom: <select name="kviz"><option value="0">/</option>
			<?php 
            $q170 = myquery("select id,naziv from kviz where predmet={$predmet} and akademska_godina={$ag} and aktivan=1");
            while ($r170 = mysql_fetch_row($q170)) {
                print "<option value=\"{$r170['0']}\">{$r170['1']}</option>\n";
            }
            ?>
			</select>
			<?php 
        }
        ?>
	
	</form>
	</td></tr></table>
	
	<script language="JavaScript">
	var oldState = 0;
	var oldEvent;

	// Funkcija koja se poziva klikom na polje u tabeli
	function prisustvo(e,student,cas) {
		if (zamger_ajah_sending) {
			alert("Slanje u toku. Sačekajte malo.");
			return false;
		}
		var prisutan = invert(e,student,cas);
		ajah_start("index.php?c=N&sta=common/ajah&akcija=prisustvo&student="+student+"&cas="+cas+"&prisutan="+prisutan, "undo_prisustvo("+student+","+cas+","+prisutan+")");
	}

	// Funkcija koja se poziva u slučaju greške sa prisustvom
	function undo_prisustvo(student,cas,prisutan) {
		var greska = document.getElementById("zamger_ajah-info").innerText || document.getElementById("zamger_ajah-info").textContent;
		if (!greska.match(/\S/)) greska = "Došlo je do greške. Molimo kontaktirajte administratora.";
		alert(greska);
		invert(oldEvent, student, cas);
	}

	// Switchuje DA i NE
	function invert(e,student,cas) {
		var val = document.getElementById("danetekst-"+student+"-"+cas).innerHTML;
		var evt = e || window.event;
		oldEvent = e;

		// Shift služi za pristup neutralnom stanju /
		if (evt.shiftKey) {
			if (oldState == 0) {
				if (val == "DA") oldState = 1; else oldState = 2;
				document.getElementById("dane-"+student+"-"+cas).style.background = "#FFFFCC";
				document.getElementById("danetekst-"+student+"-"+cas).innerHTML = "/";
				return 3;
			} else {
				if (oldState==1) val="NE"; else val="DA"; // Invertujemo sa NE na DA i obrnuto
				oldState=0;
			}
		}

		if (val == "DA") {
			document.getElementById("dane-"+student+"-"+cas).style.background = "#FFCCCC";
			document.getElementById("danetekst-"+student+"-"+cas).innerHTML = "NE";
			return 1;
		} else {
			document.getElementById("dane-"+student+"-"+cas).style.background="#CCFFCC";
			document.getElementById("danetekst-"+student+"-"+cas).innerHTML = "DA";
			return 2;
		}
	}
	function upozorenje(cas) {
		if (confirm("Da li ste sigurni da želite obrisati čas?")) {
			// _lv_casid osigurava da genform() neće dodati još jedno hidden polje
			document.brisanjecasa._lv_casid.value=cas;
			document.brisanjecasa.submit();
		}
		return false;
	}
	
	</script>

	<!-- Pomocna forma za POST brisanje casa -->
	
	<?php 
        echo genform("POST", "brisanjecasa");
        ?>
	<input type="hidden" name="akcija" value="brisi_cas">
	<input type="hidden" name="_lv_casid" value="">
	</form>

	<?php 
    }
    // if (in_array(3, $tipovi_komponenti))
    // Ispis AJAH box-a neposredno iznad tablice grupe
    print ajah_box();
    // ------- TABLICA GRUPE - ZAGLAVLJE
    $minw = 0;
    // minimalna sirina tabele
    $mogucih_bodova = 0;
    // koliko bodova su studenti mogli osvojiti, radi procenta
    $zaglavlje1 = "";
    $zaglavlje2 = "";
    $prisustvo_id_array = array();
    // Zaglavlje prisustvo
    $q195 = myquery("SELECT k.id, k.gui_naziv, k.maxbodova FROM akademska_godina_predmet as agp, tippredmeta_komponenta as tpk, komponenta as k\nWHERE agp.predmet={$predmet} and agp.akademska_godina={$ag} and agp.tippredmeta=tpk.tippredmeta and tpk.komponenta=k.id and k.tipkomponente=3 ORDER BY k.id");
    // Ako nema nijedne komponente prisustva, upit neće vratiti ništa
    while ($r195 = mysql_fetch_row($q195)) {
        $casova = 0;
        $prisustvo_zaglavlje = "";
        $prisustvo_id_array[] = $r195[0];
        $cas_id_array = array();
        $cas_kviz_array = array();
        $q200 = myquery("SELECT id,datum,vrijeme,kviz FROM cas where labgrupa={$labgrupa} and komponenta={$r195['0']} ORDER BY datum, vrijeme");
        while ($r200 = mysql_fetch_row($q200)) {
            $cas_id = $r200[0];
            list($cas_godina, $cas_mjesec, $cas_dan) = explode("-", $r200[1]);
            list($cas_sat, $cas_minuta, $cas_sekunda) = explode(":", $r200[2]);
            $prisustvo_zaglavlje .= "<td align=\"center\">{$cas_dan}.{$cas_mjesec}<br/>{$cas_sat}:{$cas_minuta}";
            $prisustvo_zaglavlje .= '<br/><a href="javascript:onclick=upozorenje(' . "'{$cas_id}'" . ');"><img src="images/16x16/brisanje.png" border="0"></a>';
            $prisustvo_zaglavlje .= "</td>\n";
            $cas_id_array[] = $cas_id;
            $casova++;
            $minw += 40;
            // Kviz
            if ($r200[3] > 0) {
                $cas_kviz[$cas_id] = $r200[3];
                // Odredjujemo bodove za prolaz
                $q202 = myquery("select prolaz_bodova from kviz where id={$r200['3']}");
                $cas_kviz_prolaz[$cas_id] = mysql_result($q202, 0, 0);
                // Ako sam nekom drugom casu ranije dao ovaj id, moram ga obrisati
                foreach ($cas_id_array as $cid) {
                    if ($cid == $cas_id) {
                        continue;
                    }
                    if ($cas_kviz[$cid] == $r200[3]) {
                        $cas_kviz[$cid] = 0;
                    }
                }
            } else {
                // Ako kviz nije unesen u bazu, tražimo najbliži
                $q203 = myquery("select id, prolaz_bodova from kviz where predmet={$predmet} and akademska_godina={$ag} and vrijeme_pocetak>='{$r200['1']}' and vrijeme_pocetak<'{$r200['1']}' + interval 5 day order by vrijeme_pocetak desc");
                while ($r203 = mysql_fetch_row($q203)) {
                    // Da li je već bio?
                    $bio = false;
                    foreach ($cas_id_array as $cid) {
                        if ($cas_kviz[$cid] == $r203[0]) {
                            $bio = true;
                        }
                    }
                    if ($bio) {
                        continue;
                    }
                    $cas_kviz[$cas_id] = $r203[0];
                    $cas_kviz_prolaz[$cas_id] = $r203[1];
                    break;
                }
            }
        }
        $prisustvo_casovi[$r195[0]] = $cas_id_array;
        //	$prisustvo_maxbodova[$r195[0]] = $r195[2];
        //	$prisustvo_maxizostanaka[$r195[0]] = $r195[3];
        //	$prisustvo_minbodova[$r195[0]] = $r195[4];
        $mogucih_bodova += $r195[2];
        if ($prisustvo_zaglavlje == "") {
            $prisustvo_zaglavlje = "<td>&nbsp;</td>";
            $minw += 40;
            $casova = 1;
        }
        $zaglavlje1 .= "<td align=\"center\" colspan=\"" . ($casova + 1) . "\">{$r195['1']}</td>\n";
        $zaglavlje2 .= $prisustvo_zaglavlje;
        $zaglavlje2 .= "<td>BOD.</td>\n";
    }
    // Zaglavlje zadaće
    $zad_id_array = array();
    $q205 = myquery("SELECT k.id, k.gui_naziv FROM akademska_godina_predmet as agp, tippredmeta_komponenta as tpk, komponenta as k\nWHERE agp.predmet={$predmet} and agp.akademska_godina={$ag} and agp.tippredmeta=tpk.tippredmeta and tpk.komponenta=k.id and k.tipkomponente=4 ORDER BY k.id");
    // Ako nema nijedne komponente zadaća, upit neće vratiti ništa
    while ($r205 = mysql_fetch_row($q205)) {
        $brzadaca = 0;
        $zadace_zaglavlje = "";
        $komponenta = $r205[0];
        // Razvrstavamo zadaće po komponentama
        $q210 = myquery("select id,naziv,zadataka,bodova from zadaca where predmet={$predmet} and akademska_godina={$ag} and komponenta={$komponenta} order by id");
        while ($r210 = mysql_fetch_row($q210)) {
            $zadace_zaglavlje .= "<td width=\"60\" align=\"center\">{$r210['1']}<br /><a href=\"?sta=saradnik/svezadace&grupa={$labgrupa}&zadaca={$r210['0']}\">Download</a></td>\n";
            $zad_id_array[] = $r210[0];
            $zad_brz_array[$r210[0]] = $r210[2];
            $mogucih_bodova += $r210[3];
            $brzadaca++;
            $minw += 60;
        }
        if ($brzadaca > 0) {
            $zaglavlje1 .= "<td align=\"center\" colspan=\"{$brzadaca}\">{$r205['1']}</td>\n";
            $zaglavlje2 .= $zadace_zaglavlje;
        }
    }
    // Zaglavlje fiksne komponente
    $fiksna_prolaz = array();
    $fiksna_id_array = array();
    $q215 = myquery("SELECT k.id, k.gui_naziv, k.maxbodova, k.prolaz FROM akademska_godina_predmet as agp, tippredmeta_komponenta as tpk, komponenta as k\nWHERE agp.predmet={$predmet} and agp.akademska_godina={$ag} and agp.tippredmeta=tpk.tippredmeta and tpk.komponenta=k.id and k.tipkomponente=5 ORDER BY k.id");
    // Ako nema nijedne fiksne komponente, upit neće vratiti ništa
    while ($r215 = mysql_fetch_row($q215)) {
        $zaglavlje1 .= "<td align=\"center\" rowspan=\"2\">{$r215['1']}";
        $mogucih_bodova += $r215[2];
        $minw += 60;
        $fiksna_id_array[] = $r215[0];
        $fiksna_prolaz[$r215[0]] = $r215[3];
    }
    // Zaglavlje ispiti
    $broj_ispita = 0;
    $ispit_zaglavlje = "";
    $ispit_id_array = array();
    $q220 = myquery("select i.id, UNIX_TIMESTAMP(i.datum), k.id, k.kratki_gui_naziv, k.tipkomponente, k.maxbodova, k.prolaz, k.opcija from ispit as i, komponenta as k where i.predmet={$predmet} and i.akademska_godina={$ag} and i.komponenta=k.id order by i.datum,i.komponenta");
    // Ako nema komponenti sa ispitima, neće biti registrovan nijedan ispit
    while ($r220 = mysql_fetch_row($q220)) {
        if ($r220[4] == 5) {
            $ispit_zaglavlje .= "<td align=\"center\">{$r220['3']}</td>\n";
        } else {
            $ispit_zaglavlje .= "<td align=\"center\">{$r220['3']}<br/> " . date("d.m.", $r220[1]) . "</td>\n";
        }
        $ispit_id_array[] = $r220[0];
        $ispit_komponenta[$r220[0]] = $r220[2];
        // Pripremamo podatke o komponentama
        $komponenta_tip[$r220[2]] = $r220[4];
        $komponenta_maxb[$r220[2]] = $r220[5];
        $komponenta_prolaz[$r220[2]] = $r220[6];
        $komponenta_opcija[$r220[2]] = "{$r220['7']}";
        if ($r220[4] != 2) {
            $mogucih_bodova += $r220[5];
        }
        $minw += 40;
        $broj_ispita++;
    }
    if ($broj_ispita > 0) {
        $zaglavlje1 .= "<td align=\"center\" colspan=\"{$broj_ispita}\">Ispiti</td>\n";
        $zaglavlje2 .= $ispit_zaglavlje;
    }
    // Zaglavlje konacna ocjena
    //$ispis_konacna=0;
    //$q230 = myquery("select count(*) from konacna_ocjena where predmet=$predmet_id");
    //if (mysql_result($q230,0,0)>0) {
    //	$minw += 40;
    $ispis_konacna = 1;
    //}
    //if ($casova==0) $casova=1;
    // ISPIS ZAGLAVLJA
    $minw += 70;
    // ukupno
    $minw += 45;
    // broj indexa
    $minw += 100;
    // ime i prezime
    $minw += 40;
    // komentar
    $minw += 40;
    // bodovi prisustvo
    ?>
<table cellspacing="0" cellpadding="2" border="1" <?php 
    if ($minw > 800) {
        print "width=\"{$minw}\"";
    }
    ?>
>
<tr>
	<td rowspan="2" align="center" valign="center">Ime i prezime</td>
	<td rowspan="2" align="center" valign="center">Broj indexa</td>
	<td rowspan="2" align="center" valign="center">Ko-<br/>men-<br/>tar</td>
	<?php 
    echo $zaglavlje1;
    ?>
	<td align="center" valign="center" rowspan="2">&nbsp;&nbsp;<b>UKUPNO</b>&nbsp;&nbsp;</td>
	<?php 
    if ($ispis_konacna == 1) {
        ?>
<td rowspan="2" align="center">Konačna<br/>ocjena</td><?php 
    }
    ?>
</tr>
<tr>
	<?php 
    echo $zaglavlje2;
    ?>
	<?php 
    if ($ispis_usmeni == 1) {
        ?>
<td>Usmeni</td><?php 
    }
    ?>
</tr>
<?php 
    // CACHE REZULTATA ZADAĆA
    $zadace_statusi = array();
    $zadace_bodovi = array();
    $q300 = myquery("SELECT z.zadaca,z.redni_broj,z.student,z.status,z.bodova\nFROM zadatak as z,student_labgrupa as sl \nWHERE z.student=sl.student and sl.labgrupa={$labgrupa}\nORDER BY z.id");
    while ($r300 = mysql_fetch_row($q300)) {
        // Slog sa najnovijim IDom se smatra mjerodavnim
        // Ostali su u bazi radi historije
        $zadace_bodovi[$r300[0]][$r300[1]][$r300[2]] = $r300[4];
        $zadace_statusi[$r300[0]][$r300[1]][$r300[2]] = $r300[3] + 1;
        // Dodajemo 1 na status kako bismo kasnije mogli znati da li
        // je vrijednost niza definisana ili ne.
        // undef ne radi :(
    }
    // Ikone i statusi za zadaće
    $stat_icon = array("zad_bug", "zad_cekaj", "zad_copy", "zad_bug", "zad_preg", "zad_ok");
    $stat_tekst = array("Bug u programu", "Automatsko testiranje u toku", "Zadaća prepisana", "Bug u programu", "Potrebno pregledati", "Zadaća OK");
    // Glavna petlja - studenti
    $q310 = myquery("select a.id,a.ime,a.prezime,a.brindexa from osoba as a,student_labgrupa as sl where a.id=sl.student and sl.labgrupa={$labgrupa}");
    $imeprezime = array();
    $brind = array();
    while ($r310 = mysql_fetch_row($q310)) {
        $stud_id = $r310[0];
        $stud_ime = $r310[1];
        $stud_prezime = $r310[2];
        $stud_brind = $r310[3];
        $imeprezime[$stud_id] = "{$stud_prezime}&nbsp;{$stud_ime}";
        $brind[$stud_id] = $stud_brind;
        // Dodajemo ime grupe pored imena studenta ako je grupa virtualna
        if ($grupa_virtualna == 1) {
            $q315 = myquery("select lg.naziv from labgrupa as lg, student_labgrupa as sl where sl.student={$stud_id} and sl.labgrupa=lg.id and lg.virtualna=0 and lg.predmet={$predmet} and lg.akademska_godina={$ag}");
            if (mysql_num_rows($q315) > 0) {
                $stud_ime .= " (" . mysql_result($q315, 0, 0) . ")";
            }
        }
    }
    uasort($imeprezime, "bssort");
    // bssort - bosanski jezik
    $redni_broj = 0;
    foreach ($imeprezime as $stud_id => $stud_imepr) {
        $rednibroj++;
        ?>
<tr>
	<td id="student_<?php 
        echo $stud_id;
        ?>
"><?php 
        echo $rednibroj;
        ?>
.&nbsp;<a href="index.php?sta=saradnik/student&student=<?php 
        echo $stud_id;
        ?>
&predmet=<?php 
        echo $predmet;
        ?>
&ag=<?php 
        echo $ag;
        ?>
"><?php 
        echo $stud_imepr;
        ?>
</a></td>
	<td><?php 
        echo $brind[$stud_id];
        ?>
</td>
	<td align="center"><a href="javascript:firefoxopen('index.php?sta=saradnik/komentar&student=<?php 
        echo $stud_id;
        ?>
&labgrupa=<?php 
        echo $labgrupa;
        ?>
','blah3','width=350,height=320,status=0,toolbar=0,resizable=1,location=0,menubar=0,scrollbars=1');"><img src="images/16x16/komentar-plavi.png" border="0" width="16" height="16" alt="Komentar na rad studenta" title="Komentar na rad studenta"></a></td>
<?php 
        $prisustvo_ispis = $zadace_ispis = $ispiti_ispis = "";
        $bodova = 0;
        // PRISUSTVO - ISPIS
        foreach ($prisustvo_id_array as $pid) {
            $cas_id_array = $prisustvo_casovi[$pid];
            if (count($cas_id_array) == 0) {
                $prisustvo_ispis .= "<td>&nbsp;</td>";
            }
            $odsustvo = 0;
            foreach ($cas_id_array as $cid) {
                // Postoji li kviz za ovaj čas?
                $uspjeh_na_kvizu = "";
                if ($cas_kviz[$cid] > 0) {
                    $q317 = myquery("select dovrsen, bodova from kviz_student where student={$stud_id} and kviz=" . $cas_kviz[$cid]);
                    if (mysql_num_rows($q317) > 0) {
                        if (mysql_result($q317, 0, 0) == 1 && mysql_result($q317, 0, 1) >= $cas_kviz_prolaz[$cid]) {
                            $uspjeh_na_kvizu = '<img src="images/16x16/zad_ok.png" width="8" height="8">';
                        } else {
                            $uspjeh_na_kvizu = '<img src="images/16x16/brisanje.png" width="8" height="8">';
                        }
                    }
                }
                $q320 = myquery("select prisutan from prisustvo where student={$stud_id} and cas={$cid}");
                if (mysql_num_rows($q320) > 0) {
                    if (mysql_result($q320, 0, 0) == 1) {
                        $prisustvo_ispis .= "<td bgcolor=\"#CCFFCC\" align=\"center\" id=\"dane-" . $stud_id . "-" . $cid . "\" onclick=\"javascript:prisustvo(event," . $stud_id . "," . $cid . ")\"><span id=\"danetekst-" . $stud_id . "-" . $cid . "\">DA</span> {$uspjeh_na_kvizu}</td>";
                    } else {
                        $prisustvo_ispis .= "<td bgcolor=\"#FFCCCC\" align=\"center\" id=\"dane-" . $stud_id . "-" . $cid . "\" onclick=\"javascript:prisustvo(event," . $stud_id . "," . $cid . ")\"><span id=\"danetekst-" . $stud_id . "-" . $cid . "\">NE</span> {$uspjeh_na_kvizu}</td>";
                        $odsustvo++;
                    }
                    //$ocj = mysql_result($q14,0,1);
                } else {
                    $prisustvo_ispis .= "<td bgcolor=\"#FFFFCC\" align=\"center\" id=\"dane-" . $stud_id . "-" . $cid . "\" onclick=\"javascript:prisustvo(event," . $stud_id . "," . $cid . ")\"><div id=\"danetekst-" . $stud_id . "-" . $cid . "\"> / </div> {$uspjeh_na_kvizu}</td>";
                }
            }
            /*	if ($odsustvo<=$prisustvo_maxizostanaka[$pid]) {
            		$prisustvo_ispis .= "<td>".$prisustvo_maxbodova[$pid]."</td>";
            		$bodova+=10;
            	} else {
            		$prisustvo_ispis .= "<td>".$prisustvo_minbodova[$pid]."</td>";
            	}*/
            $q325 = myquery("select kb.bodovi from komponentebodovi as kb, ponudakursa as pk where kb.student={$stud_id} and kb.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag} and kb.komponenta={$pid}");
            if (mysql_num_rows($q325) == 0) {
                $pbodovi = 0;
            } else {
                $pbodovi = mysql_result($q325, 0, 0);
            }
            $prisustvo_ispis .= "<td>{$pbodovi}</td>\n";
            $bodova += $pbodovi;
        }
        // foreach ($prisustvo... as $pid)
        // ZADACE - ISPIS
        foreach ($zad_id_array as $zid) {
            $zadace_ispis .= "<td>\n";
            // FIXME: subqueries
            //$q15a = myquery ("select redni_broj from zadatak where zadaca=$zid and student=$stud_id order by redni_broj group by redni_broj");
            for ($i = 1; $i <= $zad_brz_array[$zid]; $i++) {
                $status = $zadace_statusi[$zid][$i][$stud_id];
                if ($status == 0) {
                    // Zadatak nije poslan
                    if ($kreiranje > 0) {
                        $zadace_ispis .= "<a href=\"#\" onclick=\"javascript:openzadaca(event, '" . $stud_id . "', '" . $zid . "', '" . $i . "'); return false;\"><img src=\"images/16x16/zad_novi.png\" width=\"16\" height=\"16\" border=\"0\" align=\"center\" title=\"" . $stud_id . "," . $zid . "," . $i . "\" alt=\"" . $stud_id . "," . $zid . "," . $i . "\"></a>&nbsp;";
                        //if ($i<$zad_brz_array[$zid]) $zadace_ispis .= "<br/>";
                    }
                } else {
                    $status--;
                    // Bio uvećan za 1
                    $icon = $stat_icon[$status];
                    $title = $stat_tekst[$status];
                    $zb = $zadace_bodovi[$zid][$i][$stud_id];
                    $zadace_ispis .= "<a href=\"#\" onclick=\"javascript:openzadaca(event, '" . $stud_id . "', '" . $zid . "', '" . $i . "'); return false;\"><img src=\"images/16x16/" . $icon . ".png\" width=\"16\" height=\"16\" border=\"0\" align=\"center\" title=\"" . $stud_id . "," . $zid . "," . $i . "\" alt=\"" . $stud_id . "," . $zid . "," . $i . "\">&nbsp;" . $zb . "</a>";
                    //				if ($i<$zad_brz_array[$zid]) $zadace_ispis .= "<br/>";
                    $bodova += $zb;
                }
            }
            $zadace_ispis .= "&nbsp;</td>\n";
        }
        // FIKSNE KOMPONENTE - ISPIS
        $fiksne_ispis = "";
        foreach ($fiksna_id_array as $fiksna) {
            $q328 = myquery("select kb.bodovi from komponentebodovi as kb, ponudakursa as pk where kb.student={$stud_id} and kb.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag} and kb.komponenta={$fiksna}");
            if (mysql_num_rows($q328) > 0) {
                $fbodova = mysql_result($q328, 0, 0);
                $fiksne_ispis .= "<td id=\"fiksna-{$stud_id}-{$predmet}-{$fiksna}-{$ag}\" ondblclick=\"coolboxopen(this)\">{$fbodova}</td>\n";
                $bodova += $fbodova;
            } else {
                $fiksne_ispis .= "<td id=\"fiksna-{$stud_id}-{$predmet}-{$fiksna}-{$ag}\" ondblclick=\"coolboxopen(this)\">/</td>\n";
            }
        }
        // ISPITI - ISPIS
        $ispiti_ispis = "";
        $komponente = $kmax = array();
        foreach ($ispit_id_array as $ispit) {
            $k = $ispit_komponenta[$ispit];
            $q330 = myquery("select ocjena from ispitocjene where ispit={$ispit} and student={$stud_id}");
            if (mysql_num_rows($q330) > 0) {
                $ocjena = mysql_result($q330, 0, 0);
                $ispiti_ispis .= "<td id=\"ispit-{$stud_id}-{$ispit}\" ondblclick=\"coolboxopen(this)\">{$ocjena}</td>\n";
                if (!in_array($k, $komponente) || $ocjena > $kmax[$k]) {
                    $kmax[$k] = $ocjena;
                }
            } else {
                $ispiti_ispis .= "<td id=\"ispit-{$stud_id}-{$ispit}\" ondblclick=\"coolboxopen(this)\">/</td>\n";
            }
            if (!in_array($k, $komponente)) {
                $komponente[] = $k;
            }
        }
        // Prvo trazimo integralne ispite
        foreach ($komponente as $k) {
            if ($komponenta_tip[$k] == 2) {
                // Koje parcijalne ispite obuhvata integralni
                $dijelovi = explode("+", $komponenta_opcija[$k]);
                // Racunamo zbir
                $zbir = 0;
                $pao = 0;
                foreach ($dijelovi as $dio) {
                    $zbir += $kmax[$dio];
                    if ($kmax[$dio] < $komponenta_prolaz[$dio]) {
                        $pao = 1;
                    }
                }
                // Eliminisemo parcijalne obuhvacene integralnim
                if ($kmax[$k] > $zbir || $pao == 1 && $kmax[$k] >= $komponenta_prolaz[$k]) {
                    $bodova += $kmax[$k];
                    foreach ($dijelovi as $dio) {
                        $kmax[$dio] = 0;
                    }
                }
            }
        }
        // Sabiremo preostale parcijalne ispite na sumu bodova
        foreach ($komponente as $k) {
            if ($komponenta_tip[$k] != 2) {
                $bodova += $kmax[$k];
            }
        }
        // KONACNA OCJENA - ISPIS
        $q350 = myquery("select ocjena from konacna_ocjena where student={$stud_id} and predmet={$predmet} and akademska_godina={$ag}");
        if ($privilegija == "super_asistent") {
            if (mysql_num_rows($q350) > 0) {
                $ko_ispis = "<td align=\"center\" id=\"ko-{$stud_id}-{$predmet}-{$ag}\">" . mysql_result($q350, 0, 0) . "</td>\n";
            } else {
                $ko_ispis = "<td align=\"center\" id=\"ko-{$stud_id}-{$predmet}-{$ag}\">/</td>\n";
            }
        } else {
            if (mysql_num_rows($q350) > 0) {
                $ko_ispis = "<td align=\"center\" id=\"ko-{$stud_id}-{$predmet}-{$ag}\" ondblclick=\"coolboxopen(this)\">" . mysql_result($q350, 0, 0) . "</td>\n";
            } else {
                $ko_ispis = "<td align=\"center\" id=\"ko-{$stud_id}-{$predmet}-{$ag}\" ondblclick=\"coolboxopen(this)\">/</td>\n";
            }
        }
        ?>
	<?php 
        echo $prisustvo_ispis;
        ?>
	<?php 
        echo $zadace_ispis;
        ?>
	<?php 
        echo $fiksne_ispis;
        ?>
	<?php 
        echo $ispiti_ispis;
        ?>
	<td align="center"><?php 
        print $bodova;
        /*	Procenat zauzima previše prostora po horizontali, a nije toliko interesantan
        	if ($mogucih_bodova!=0 && $mogucih_bodova!=100) {
        //		?> (<?=procenat($bodova,$mogucih_bodova)?>)<?
        	} */
        ?>
</td>
	<?php 
        echo $ko_ispis;
        ?>
</tr><?php 
    }
    ?>
</table>

<p><?php 
    if ($kreiranje > 0) {
        $k = str_replace("&amp;kreiranje=1", "", genuri());
        ?>
<a href="<?php 
        echo $k;
        ?>
">Sakrij dugmad za kreiranje zadataka</a><?php 
    } else {
        ?>
<a href="<?php 
        echo genuri();
        ?>
&amp;kreiranje=1">Prikaži dugmad za kreiranje zadataka</a><?php 
    }
    ?>
 * <a href="?sta=saradnik/grupa&amp;id=<?php 
    echo $labgrupa;
    ?>
">Refresh</a></p>

<?php 
    if ($privilegija == "nastavnik") {
        ?>
<p>Vi ste administrator ovog predmeta.</p><?php 
    } else {
        if ($privilegija == "super_asistent") {
            ?>
<p>Vi ste super-asistent ovog predmeta.</p><?php 
        }
    }
    ?>
<p>&nbsp;</p>
<?php 
}
Esempio n. 7
0
function izvjestaj_termini_ispita()
{
    global $userid, $user_nastavnik, $user_studentska, $user_siteadmin;
    ?>

<p>Univerzitet u Sarajevu<br/>
Elektrotehnički fakultet Sarajevo</p>
<p>Datum i vrijeme izvještaja: <?php 
    echo date("d. m. Y. H:i");
    ?>
</p>
<?php 
    // Parametar
    if (isset($_REQUEST['termin'])) {
        $termin_id_url = intval($_REQUEST['termin']);
    }
    if (isset($_REQUEST['ispit'])) {
        $ispit = intval($_REQUEST['ispit']);
    } else {
        $q8 = myquery("select ispit from ispit_termin where id={$termin_id_url}");
        if (mysql_num_rows($q8) < 1) {
            niceerror("Nepostojeći termin.");
            return;
        }
        $ispit = mysql_result($q8, 0, 0);
    }
    $q9 = myquery("select komponenta from ispit where id={$ispit}");
    if (mysql_num_rows($q9) < 1) {
        niceerror("Nepostojeći ispit.");
        return;
    }
    $komp = mysql_result($q9, 0, 0);
    // Upit za ispit
    if ($komp <= 4) {
        // FIXME Oznake komponente <= 4 se koriste za regularne ispite
        $q10 = myquery("select UNIX_TIMESTAMP(i.datum), k.gui_naziv, i.predmet, i.akademska_godina from ispit as i, komponenta as k where i.id={$ispit} and i.komponenta=k.id");
    } else {
        $q10 = myquery("select UNIX_TIMESTAMP(i.datum), d.naziv, i.predmet, i.akademska_godina from ispit as i, dogadjaj as d where i.id={$ispit} and i.komponenta=d.id");
    }
    $predmet = mysql_result($q10, 0, 2);
    $ag = mysql_result($q10, 0, 3);
    $finidatum = date("d. m. Y.", mysql_result($q10, 0, 0));
    $naziv = mysql_result($q10, 0, 1);
    // Dodatna provjera privilegija
    if (!$user_studentska && !$user_siteadmin) {
        $q20 = myquery("select nivo_pristupa from nastavnik_predmet where nastavnik={$userid} and predmet={$predmet} and akademska_godina={$ag}");
        if (mysql_num_rows($q20) < 1) {
            biguglyerror("Nemate permisije za pristup ovom izvještaju");
            zamgerlog("nije admin predmeta pp{$predmet} godina ag{$ag}", 3);
            // 3 = error
            return;
        }
        $privilegija = mysql_result($q20, 0, 0);
    }
    // Cool editing box
    if ($privilegija == "nastavnik" || $privilegija == "super_asistent" || $user_siteadmin) {
        cool_box('ajah_start("index.php?c=N&sta=common/ajah&akcija=izmjena_ispita&idpolja="+zamger_coolbox_origcaller.id+"&vrijednost="+coolboxedit.value, "undo_coolbox()", "zamger_coolbox_origcaller=false");');
        ?>
	<script language="JavaScript">
	function undo_coolbox() {
		var greska = document.getElementById("zamger_ajah-info").innerText || document.getElementById("zamger_ajah-info").textContent;
		alert(greska);
		zamger_coolbox_origcaller.innerHTML = zamger_coolbox_origvalue;
		zamger_coolbox_origcaller=false;
	}
	</script>
	<?php 
    }
    // Naziv predmeta, akademska godina
    $q21 = myquery("select naziv from predmet where id={$predmet}");
    $q22 = myquery("select naziv from akademska_godina where id={$ag}");
    ?>
	<p>&nbsp;</p>
	<h3><?php 
    echo $naziv;
    ?>
, <?php 
    echo $finidatum;
    ?>
</h3>
	<p><?php 
    echo mysql_result($q21, 0, 0);
    ?>
 <?php 
    echo mysql_result($q22, 0, 0);
    ?>
</p>

<?php 
    print ajah_box();
    $imeprezime = $brindexa = array();
    $qtermini = myquery("SELECT it.id,UNIX_TIMESTAMP(it.datumvrijeme)\n\t\t\t\t     FROM ispit_termin it\n\t\t\t\t\t INNER JOIN ispit i ON i.id = it.ispit\n\t\t\t\t\t WHERE i.id={$ispit}\n\t\t\t\t\t ORDER BY it.datumvrijeme\n\t\t\t\t\t");
    $broj_termina = 0;
    if (isset($_REQUEST['termin'])) {
        $termin_id_from_url = intval($_REQUEST['termin']);
        ?>
		<p><a href="?sta=izvjestaj/termini_ispita&termin=<?php 
        echo $termin_id_from_url;
        ?>
">Refresh</a></p>
	<?php 
    } else {
        ?>
		<p><a href="?sta=izvjestaj/termini_ispita&ispit=<?php 
        echo $ispit;
        ?>
">Refresh</a></p>
	<?php 
    }
    while ($rtermini = mysql_fetch_row($qtermini)) {
        $broj_termina++;
        $id_termina = $rtermini[0];
        if (isset($_REQUEST['termin'])) {
            $termin_id_from_url = intval($_REQUEST['termin']);
            if ($termin_id_from_url != $id_termina) {
                continue;
            }
        }
        $datum_termina = date("d. m. Y. ( H:i )", $rtermini[1]);
        if (isset($_REQUEST['ispit'])) {
            $ispit = intval($_REQUEST['ispit']);
        } else {
            $q8 = myquery("select ispit from ispit_termin where id={$termin_id_url}");
            $ispit = mysql_result($q8, 0, 0);
        }
        print "Termin {$broj_termina} : <h4 style=\"display:inline\"> {$datum_termina}</h4><br></br>";
        $q10 = myquery("select o.id, o.prezime, o.ime, o.brindexa \n\t\t\t\t\tfrom osoba as o, student_predmet as sp, ponudakursa as pk, student_ispit_termin sit, ispit_termin it, ispit i\n\t\t\t\t\twhere \n\t\t\t\t\t\tsp.predmet=pk.id \n\t\t\t\t\t\tand sp.student=o.id\n\t\t\t\t\t\tand sit.student=o.id\n\t\t\t\t\t\tand sit.ispit_termin=it.id\n\t\t\t\t\t\tand it.ispit = i.id\n\t\t\t\t\t\tand pk.predmet={$predmet} \n\t\t\t\t\t\tand pk.akademska_godina={$ag}\n\t\t\t\t\t\tand i.id={$ispit}\n\t\t\t\t\t\tand it.id = {$id_termina}\n\t\t\t\t\t\t");
        if (mysql_num_rows($q10) < 1) {
            print "<p>------------------------------------------------------</p>";
            print "<p>Nijedan student nije prijavljen na ovaj termin.</p>";
            print "<p>------------------------------------------------------</p>";
            continue;
        }
        while ($r10 = mysql_fetch_row($q10)) {
            $imeprezime[$r10[0]] = "{$r10['1']} {$r10['2']}";
            $brindexa[$r10[0]] = "{$r10['3']}";
        }
        uasort($imeprezime, "bssort");
        // bssort - bosanski jezik
        // Ima li grupa na predmetu?
        $q27 = myquery("SELECT count(*) FROM labgrupa WHERE predmet={$predmet} AND akademska_godina={$ag} AND virtualna=0");
        if (mysql_result($q27, 0, 0) > 0) {
            $treba_grupe = true;
        } else {
            $treba_grupe = false;
        }
        $broj_ispita = 0;
        $ispit_zaglavlje = "";
        $oldkomponenta = 0;
        $ispit_id_array = array();
        $q30 = myquery("select i.id, UNIX_TIMESTAMP(i.datum), k.id, k.kratki_gui_naziv, k.tipkomponente, k.maxbodova, k.prolaz, k.opcija from ispit as i, komponenta as k where i.predmet={$predmet} and i.akademska_godina={$ag} and i.komponenta=k.id order by i.datum, i.komponenta");
        $imaintegralni = 0;
        while ($r30 = mysql_fetch_row($q30)) {
            $komponenta = $r30[2];
            $imeispita = $r30[3];
            $tipkomponente = $r30[4];
            $ispit_zaglavlje .= "<td align=\"center\">{$imeispita}<br/> " . date("d.m.", $r30[1]) . "</td>\n";
            $broj_ispita++;
            $ispit_id_array[] = $r30[0];
            $ispit_komponenta[$r30[0]] = $r30[2];
            // Pripremamo podatke o komponentama
            $komponenta_tip[$r30[2]] = $r30[4];
            $komponenta_maxb[$r30[2]] = $r30[5];
            $komponenta_prolaz[$r30[2]] = $r30[6];
            $komponenta_opcija[$r30[2]] = "{$r30['7']}";
        }
        // Racunamo koliko je bilo moguce ostvariti bodova na predmetu (radi racunanja procenta)
        $mogucih_bodova = 0;
        foreach ($komponenta_maxb as $kid => $kmb) {
            if ($komponenta_tip[$kid] != 2 || $imaintegralni == 1 && $broj_ispita < 2) {
                // osim ako je to jedini ispit
                $mogucih_bodova += $kmb;
            }
        }
        // Ostale komponente cemo sabrati nesto kasnije...
        // Za slucaj da prof odrzi integralni bez parcijalnih
        if ($imaintegralni == 1 && $broj_ispita < 2) {
            // $razvdoji_ispite=1; goto // Zaglavlje tabele ispita
            // no php ne podržava goto :(
            $broj_ispita = 2;
            // Ovo ce i dalje biti deformisano, ali nesto manje deformisano nego ranije
        }
        // SPISAK KOMPONENTI KOJE NISU ISPITI
        $ostale_komponente = array();
        // 1 = parcijalni ispit, 2 = integralni ispit
        $q40 = myquery("select k.id, k.kratki_gui_naziv, k.tipkomponente, k.maxbodova from komponenta as k, akademska_godina_predmet as agp, tippredmeta_komponenta as tpk where agp.predmet={$predmet} and agp.tippredmeta=tpk.tippredmeta and tpk.komponenta=k.id and k.tipkomponente!=1 and k.tipkomponente!=2 and agp.akademska_godina={$ag}");
        while ($r40 = mysql_fetch_row($q40)) {
            $mogucih_bodova += $r40[3];
            $ostale_komponente[$r40[0]] = $r40[1];
        }
        $zaglavlje1 = $zaglavlje2 = "";
        // Dva reda zaglavlja tabele
        // Ostale komponente
        foreach ($ostale_komponente as $kid => $knaziv) {
            $zaglavlje1 .= "<td rowspan=\"2\" align=\"center\">{$knaziv}</td>\n";
        }
        ?>
	<table border="1" cellspacing="0" cellpadding="2">
		<tr><td rowspan="2" align="center">R.br.</td>
			<td rowspan="2" align="center">Prezime i ime</td>
			<td rowspan="2" align="center">Br. indexa</td>
			<?php 
        if ($treba_grupe) {
            ?>
<td rowspan="2" align="center">Grupa</td><?php 
        }
        ?>
			<?php 
        echo $zaglavlje1;
        ?>
			<td align="center" <?php 
        if ($broj_ispita == 0) {
            ?>
 rowspan="2" <?php 
        } else {
            ?>
 colspan="<?php 
            echo $broj_ispita;
            ?>
" <?php 
        }
        ?>
>Ispiti</td>
			<td rowspan="2" align="center"><b>UKUPNO</b></td>
			<td rowspan="2" align="center">Konačna<br/>ocjena</td>
		</tr>
		<tr>
			<?php 
        echo $zaglavlje2;
        ?>
			<?php 
        echo $ispit_zaglavlje;
        ?>
		</tr>
		<?php 
        // ------ SPISAK STUDENATA ------
        $idovi = array_keys($imeprezime);
        // Petlja za ispis studenata
        $redni_broj = 0;
        foreach ($imeprezime as $stud_id => $stud_imepr) {
            if (!in_array($stud_id, $idovi)) {
                continue;
            }
            unset($imeprezime[$stud_id]);
            // Vise se nece javljati
            $redni_broj++;
            ?>
		<tr>
			<td><?php 
            echo $redni_broj;
            ?>
.</td>
			<td><?php 
            echo $stud_imepr;
            ?>
</td>
			<td><?php 
            echo $brindexa[$stud_id];
            ?>
</td>
			<?php 
            if ($treba_grupe) {
                $q220 = myquery("SELECT l.naziv FROM labgrupa as l, student_labgrupa as sl WHERE l.predmet={$predmet} AND l.akademska_godina={$ag} AND l.virtualna=0 AND l.id=sl.labgrupa AND sl.student={$stud_id}");
                if (mysql_num_rows($q220) == 0) {
                    $grupa = "&nbsp;";
                } else {
                    $grupa = mysql_result($q220, 0, 0);
                }
                ?>
			<td><?php 
                echo $grupa;
                ?>
</td>
			<?php 
            }
            $ispis = "";
            $bodova = 0;
            // Zbir bodova koje je student ostvario
            // OSTALE KOMPONENTE
            foreach ($ostale_komponente as $kid => $knaziv) {
                $q230 = myquery("select kb.bodovi from komponentebodovi as kb, ponudakursa as pk where kb.student={$stud_id} and kb.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag} and kb.komponenta={$kid}");
                $obodova = 0;
                if (mysql_num_rows($q230) > 0) {
                    $obodova = mysql_result($q230, 0, 0);
                }
                $ispis .= "<td>{$obodova}</td>";
                $bodova += $obodova;
            }
            // ISPITI
            if ($broj_ispita == 0) {
                $ispis .= "<td>&nbsp;</td>";
            }
            $komponente = $kmax = $kispis = array();
            foreach ($ispit_id_array as $ispit) {
                $k = $ispit_komponenta[$ispit];
                $q230 = myquery("select ocjena from ispitocjene where ispit={$ispit} and student={$stud_id}");
                if (mysql_num_rows($q230) > 0) {
                    $ocjena = mysql_result($q230, 0, 0);
                    $ispis .= "<td align=\"center\" id=\"ispit-{$stud_id}-{$ispit}\" ondblclick=\"coolboxopen(this)\">{$ocjena}</td>\n";
                    if (!in_array($k, $komponente) || $ocjena > $kmax[$k]) {
                        $kmax[$k] = $ocjena;
                        $kispis[$k] = "<td align=\"center\" id=\"ispit-{$stud_id}-{$ispit}\" ondblclick=\"coolboxopen(this)\">{$ocjena}</td>\n";
                    }
                } else {
                    $ispis .= "<td align=\"center\" id=\"ispit-{$stud_id}-{$ispit}\" ondblclick=\"coolboxopen(this)\">/</td>\n";
                    if ($kispis[$k] == "") {
                        $kispis[$k] = "<td align=\"center\" id=\"ispit-{$stud_id}-{$ispit}\" ondblclick=\"coolboxopen(this)\">/</td>\n";
                    }
                }
                if (!in_array($k, $komponente)) {
                    $komponente[] = $k;
                }
            }
            // Prvo trazimo integralne ispite
            foreach ($komponente as $k) {
                if ($komponenta_tip[$k] == 2) {
                    // Koje parcijalne ispite obuhvata integralni
                    $dijelovi = explode("+", $komponenta_opcija[$k]);
                    // Racunamo zbir
                    $zbir = 0;
                    $pao = 0;
                    foreach ($dijelovi as $dio) {
                        $zbir += $kmax[$dio];
                        if ($kmax[$dio] < $komponenta_prolaz[$dio]) {
                            $pao = 1;
                        }
                    }
                    // Eliminisemo parcijalne obuhvacene integralnim
                    if ($kmax[$k] > $zbir || $pao == 1 && $kmax[$k] >= $komponenta_prolaz[$k]) {
                        $bodova += $kmax[$k];
                        foreach ($dijelovi as $dio) {
                            $kmax[$dio] = 0;
                            $kispis[$dio] = "";
                        }
                        $kispis[$k] = "<td align=\"center\" colspan=\"" . count($dijelovi) . "\">" . $kmax[$k] . "</td>\n";
                    } else {
                        $kispis[$k] = "";
                    }
                }
            }
            // Sabiremo preostale parcijalne ispite na sumu bodova
            foreach ($komponente as $k) {
                if ($komponenta_tip[$k] != 2) {
                    $bodova += $kmax[$k];
                }
            }
            // STATISTIKE
            $topscore[$stud_id] = $bodova;
            print $ispis;
            print "<td align=\"center\">{$bodova} (" . procenat($bodova, $mogucih_bodova) . ")</td>\n";
            // Konacna ocjena
            $q508 = myquery("select ocjena from konacna_ocjena where student={$stud_id} and predmet={$predmet} and akademska_godina={$ag}");
            if (mysql_num_rows($q508) > 0) {
                print "<td id=\"ko-{$stud_id}-{$predmet}-{$ag}\" ondblclick=\"coolboxopen(this)\">" . mysql_result($q508, 0, 0) . "</td>\n";
            } else {
                print "<td id=\"ko-{$stud_id}-{$predmet}-{$ag}\" ondblclick=\"coolboxopen(this)\">/</td>\n";
            }
            print "</tr>\n";
        }
        print "</table><p>&nbsp;</p>";
    }
    ?>

<?php 
}