Exemplo n.º 1
0
function common_cron()
{
    global $conf_files_path, $user_siteadmin;
    $force = intval($_GET['force']);
    if ($force > 0) {
        if (!$user_siteadmin) {
            niceerror("Nemate dozvolu da ovo izvršite.");
            zamgerlog("forsira cron a nije admin", 3);
            zamgerlog2("forsira cron a nije admin");
            return;
        }
        $upit = "id={$force}";
    } else {
        $upit = "aktivan=1 AND sljedece_izvrsenje<NOW()";
    }
    $q10 = myquery("SELECT id, path, UNIX_TIMESTAMP(zadnje_izvrsenje), godina, mjesec, dan, sat, minuta, sekunda FROM cron WHERE {$upit}");
    if (mysql_num_rows($q10) == 0 && $force > 0) {
        niceerror("Nije pronađen zadatak koji odgovara upitu.");
        return;
    }
    while ($r10 = mysql_fetch_row($q10)) {
        // Određujemo sljedeće vrijeme izvršenja
        $localtime = localtime();
        $localtime = cron_find($localtime, 0, $r10[8]);
        $localtime = cron_find($localtime, 1, $r10[7]);
        $localtime = cron_find($localtime, 2, $r10[6]);
        $localtime = cron_find($localtime, 3, $r10[5]);
        $localtime = cron_find($localtime, 4, $r10[4]);
        $localtime = cron_find($localtime, 5, $r10[3]);
        $nexttime = mktime($localtime[2], $localtime[1], $localtime[0], $localtime[4] + 1, $localtime[3], $localtime[5] + 1900);
        // Ažuriramo bazu
        $q20 = myquery("UPDATE cron SET zadnje_izvrsenje=NOW(), sljedece_izvrsenje=FROM_UNIXTIME({$nexttime}) WHERE id={$r10['0']}");
        $q30 = myquery("INSERT INTO cron_rezultat SET cron={$r10['0']}, izlaz='(Nije završeno)', return_value=0, vrijeme=NOW()");
        $id = mysql_insert_id();
        // Pripremamo za izvršenje
        $exec = str_replace("---LASTTIME---", $r10[2], $r10[1]);
        $exec = "php {$conf_files_path}/{$exec}";
        $return = 0;
        $blah = array();
        // Izvršavamo skriptu
        $k = exec($exec, $blah, $return);
        // Stavljamo izlaz u bazu
        $izlaz = my_escape(iconv("UTF-8", "UTF-8//IGNORE", join("\n", $blah)));
        $q40 = myquery("UPDATE cron_rezultat SET return_value={$return}, izlaz='{$izlaz}' WHERE id={$id}");
        if ($force > 0) {
            nicemessage("Uspješno izvršena skripta.");
            $izlaz = str_replace("\\n", "\n", $izlaz);
            print "<p>Izlaz:</p>\n<pre>{$izlaz}</pre>\n";
        }
    }
}
Exemplo n.º 2
0
function saradnik_zadaca()
{
    global $conf_files_path, $userid, $user_siteadmin;
    require "lib/autotest.php";
    require "lib/manip.php";
    // radi update_komponente
    // --------------------
    // Standardni ulazni podaci i potrebne varijable
    $stud_id = intval($_REQUEST['student']);
    $zadaca = intval($_REQUEST['zadaca']);
    $zadatak = intval($_REQUEST['zadatak']);
    // Prava pristupa
    if (!$user_siteadmin) {
        // Da li je nastavnik na predmetu?
        $q10 = myquery("select count(*) from nastavnik_predmet as np, zadaca as z where z.id={$zadaca} and z.predmet=np.predmet and z.akademska_godina=np.akademska_godina and np.nastavnik={$userid}");
        if (mysql_result($q10, 0, 0) < 1) {
            zamgerlog("privilegije (student u{$stud_id} zadaca z{$zadaca})", 3);
            // nivo 3: greska
            niceerror("Nemate pravo izmjene ove zadaće");
            return;
        }
        // Ogranicenja (tabela: ogranicenje) ne provjeravamo jer bi to bilo prekomplikovano,
        // a pitanje je da li ima smisla
    }
    // Podaci o zadaci
    $q20 = myquery("select p.geshi, p.ekstenzija, z.attachment, z.naziv, z.zadataka, z.komponenta, z.predmet, z.akademska_godina, z.programskijezik from zadaca as z, programskijezik as p where z.id={$zadaca} and z.programskijezik=p.id");
    if (mysql_num_rows($q20) < 1) {
        zamgerlog("nepostojeca zadaca {$zadaca}", 3);
        niceerror("Neispravna zadaća.");
        exit;
    }
    $jezik = mysql_result($q20, 0, 0);
    $ekst = mysql_result($q20, 0, 1);
    $attach = mysql_result($q20, 0, 2);
    $naziv_zadace = mysql_result($q20, 0, 3);
    $komponenta = mysql_result($q20, 0, 5);
    $predmet = mysql_result($q20, 0, 6);
    $ag = mysql_result($q20, 0, 7);
    $id_jezika = mysql_result($q20, 0, 8);
    if (mysql_result($q20, 0, 4) < $zadatak || $zadatak < 1) {
        zamgerlog("pokusao pristupiti nepostojecem zadatku {$zadatak} u zadaci z{$zadaca}", 3);
        niceerror("Neispravan broj zadatka.");
        exit;
    }
    // Podaci o studentu
    $q50 = myquery("select ime, prezime from osoba where id={$stud_id}");
    if (mysql_num_rows($q50) < 1) {
        zamgerlog("nepostojeci student {$stud_id}", 3);
        niceerror("Neispravan student.");
        exit;
    }
    $ime_studenta = mysql_result($q50, 0, 0);
    $prezime_studenta = mysql_result($q50, 0, 1);
    $lokacijazadaca = "{$conf_files_path}/zadace/{$predmet}-{$ag}/{$stud_id}/";
    // --------------------
    // AKCIJE
    // Akcija: Ispis diffa
    if ($_GET['akcija'] == "diff") {
        $diff_id = intval($_GET['diff_id']);
        $q60 = myquery("select diff from zadatakdiff where zadatak={$diff_id}");
        $diff = mysql_result($q60, 0, 0);
        // Ovo ispod nema potrebe jer je diff već escapovan prilikom
        // inserta u bazu (stud_zadaca.php)
        // $diff = str_replace("\n\n","\n",$diff);
        // $diff = htmlspecialchars($diff);
        print "<pre>{$diff}</pre>\n\n";
        return;
    }
    // Akcija: Izvršenje programa
    if ($_POST['akcija'] == "izvrsi" && check_csrf_token()) {
        // čuvamo poslane podatke u bazi (ako ih nema)
        function izvrsi($stdin, $jezik, $lokacijazadaca, $zadaca, $zadatak, $ekst)
        {
            global $conf_files_path;
            // priprema fajlova
            $tstdin = str_replace('\\n', "\n", $stdin);
            // više nije dvostruki escape
            $tstdin = str_replace('\\N', "\n", $tstdin);
            $tstdin .= "\n";
            $result = file_put_contents("{$conf_files_path}/tmp/zamger-gdb.txt", "run\nbt\n");
            if ($result) {
                $result = file_put_contents("{$conf_files_path}/tmp/zamger-input.txt", $tstdin);
            }
            if (!$result) {
                zamgerlog("nije uspjelo kreiranje datoteka", 3);
                niceerror("Ne mogu kreirati potrebne datoteke u direktoriju /tmp");
                return;
            }
            // kompajliranje - FIXME: nema podrške za jezike?
            if ($jezik == "C++") {
                $kompajler = "g++";
            } else {
                $kompajler = "gcc";
            }
            $the_file = "{$lokacijazadaca}{$zadaca}/{$zadatak}{$ekst}";
            $stdout = array();
            exec("{$kompajler} -lm  -ggdb {$the_file} -o {$conf_files_path}/tmp/zamger.out 2>&1", $stdout, $retvar);
            if ($retvar != 0) {
                niceerror("Kompajliranje nije uspjelo! Slijedi ispis");
                print "<pre>" . join("\n", $stdout) . "</pre>\n\n";
                // čišćenje
                unlink("{$conf_files_path}/tmp/zamger-gdb.txt");
                unlink("{$conf_files_path}/tmp/zamger-input.txt");
                unlink("{$conf_files_path}/tmp/zamger.out");
                return;
            }
            // izvršenje
            unset($stdout);
            chmod("{$conf_files_path}/tmp/zamger.out", 0755);
            exec("gdb --batch --command={$conf_files_path}/tmp/zamger-gdb.txt {$conf_files_path}/tmp/zamger.out <{$conf_files_path}/tmp/zamger-input.txt 2>&1", $stdout, $retvar);
            // Čistimo viškove iz stdout-a
            $ispis = join("\n", $stdout);
            $ispis = preg_replace("/^Using .*? library .*?\n/", "", $ispis);
            $ok = strpos($ispis, "\nProgram exited normally.\n");
            if ($ok) {
                $ispis = substr($ispis, 0, $ok);
            } else {
                $greska = strpos($ispis, "\nProgram received signal SIGABRT, Aborted.\n");
                $backtrace = substr($ispis, $greska + 42);
                $ispis = substr($ispis, 0, $greska);
            }
            ?>
		<center><table width="95%" style="border:1px solid silver;" bgcolor="#FFF3F3"><tr><td>
		<pre><?php 
            echo $ispis;
            ?>
</pre>
		</td></tr></table></center><br/><?php 
            if ($ok) {
                ?>
<p><img src="images/16x16/zad_ok.png" width="16" height="16"> 
			Program se izvršio bez problema.</p><?php 
            } else {
                ?>
<p><img src="images/16x16/zad_bug.png" width="16" height="16">
			Program se krahirao. Backtrace (obratiti pažnju na zadnje linije):</p>
			<pre><?php 
                echo $backtrace;
                ?>
</pre>
			<?php 
            }
            // čišćenje
            unlink("{$conf_files_path}/tmp/zamger-gdb.txt");
            unlink("{$conf_files_path}/tmp/zamger-input.txt");
            unlink("{$conf_files_path}/tmp/zamger.out");
        }
        ?>
	<h1>Rezultat izvršenja:</h1>
	<?php 
        if ($_POST['sve']) {
            $q70 = myquery("select ulaz from stdin where zadaca={$zadaca} and redni_broj={$zadatak}");
            while ($r70 = mysql_fetch_row($q70)) {
                print "<h2>Ulaz: '{$r70['0']}'</h2>";
                izvrsi($r70[0], $jezik, $lokacijazadaca, $zadaca, $zadatak, $ekst);
            }
        } else {
            $stdin = $_POST['stdin'];
            $mstdin = my_escape($stdin);
            $q70 = myquery("select count(*) from stdin where ulaz='{$mstdin}' and zadaca={$zadaca} and redni_broj={$zadatak}");
            if (mysql_result($q70, 0, 0) == 0) {
                $q80 = myquery("insert into stdin set ulaz='{$mstdin}', zadaca={$zadaca}, redni_broj={$zadatak}");
            }
            izvrsi($stdin, $jezik, $lokacijazadaca, $zadaca, $zadatak, $ekst);
        }
        ?>
	<p><a href="javascript:history.go(-1)">Nazad</a></p>
	<?php 
        return;
    }
    // Akcija: Izmjena statusa
    if ($_POST['akcija'] == "slanje" && check_csrf_token()) {
        $komentar = my_escape($_POST['komentar']);
        $status = intval($_POST['status']);
        $bodova = floatval(str_replace(",", ".", $_POST['bodova']));
        // Osiguravamo da se filename prenese u svaku sljedeću instancu zadatka
        $filename = $izvjestaj_skripte = '';
        $q90 = myquery("select filename, izvjestaj_skripte from zadatak where zadaca={$zadaca} and redni_broj={$zadatak} and student={$stud_id}  order by id desc limit 1");
        if (mysql_num_rows($q90) > 0) {
            $filename = mysql_real_escape_string(mysql_result($q90, 0, 0));
            $izvjestaj_skripte = mysql_real_escape_string(mysql_result($q90, 0, 1));
            // Već je sanitiziran HTML
        }
        $q100 = myquery("insert into zadatak set zadaca={$zadaca}, redni_broj={$zadatak}, student={$stud_id}, status={$status}, bodova={$bodova}, vrijeme=now(), komentar='{$komentar}', filename='{$filename}', izvjestaj_skripte='{$izvjestaj_skripte}', userid={$userid}");
        // Odredjujemo ponudu kursa (za update komponente)
        $q110 = myquery("select pk.id 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}");
        update_komponente($stud_id, mysql_result($q110, 0, 0), $komponenta);
        zamgerlog("izmjena zadace (student u{$stud_id} zadaca z{$zadaca} zadatak {$zadatak})", 2);
        // Nakon izmjene statusa, nastavljamo normalno sa prikazom zadatka
    }
    if ($_REQUEST["akcija"] == "test_detalji") {
        $test = intval($_REQUEST['test']);
        // Provjera spoofinga testa
        $q10 = myquery("SELECT COUNT(*) FROM autotest WHERE id={$test} AND zadaca={$zadaca} AND zadatak={$zadatak}");
        if (mysql_result($q10, 0, 0) == 0) {
            niceerror("Odabrani test nije sa odabrane zadaće.");
            return;
        }
        autotest_detalji($test, $stud_id, true);
        return;
    }
    if ($_REQUEST["akcija"] == "brisi_testove" && check_csrf_token()) {
        autotest_brisi_rezultate($stud_id, $zadaca, $zadatak);
        nicemessage("Rezultati testova obrisani.");
        ?>
	<p><a href="?sta=saradnik/zadaca&amp;student=<?php 
        echo $stud_id;
        ?>
&amp;zadaca=<?php 
        echo $zadaca;
        ?>
&amp;zadatak=<?php 
        echo $zadatak;
        ?>
">Nazad</a></p>
	<?php 
        return;
    }
    // --------------------
    // PRIKAZ ZADATKA
    // Header
    ?>
<h1><a href="?sta=saradnik/student&amp;student=<?php 
    echo $stud_id;
    ?>
&amp;predmet=<?php 
    echo $predmet;
    ?>
&amp;ag=<?php 
    echo $ag;
    ?>
" onclick="window.opener.open(this.href); return false;"><?php 
    echo $ime_studenta . " " . $prezime_studenta;
    ?>
</a>, <?php 
    echo $naziv_zadace . ", Zadatak " . $zadatak . ".";
    ?>
</h1>
<?php 
    // Da li ispisati zadatak ili dugme za download attachmenta?
    if ($attach == 0) {
        // Nije attachment
        $src = "";
        $the_file = "{$lokacijazadaca}{$zadaca}/{$zadatak}{$ekst}";
        $no_lines = 0;
        if (file_exists($the_file)) {
            if ($_REQUEST["akcija"] == "test_sa_kodom") {
                $test = intval($_REQUEST['test']);
                // Provjera spoofinga testa
                $q10 = myquery("SELECT COUNT(*) FROM autotest WHERE id={$test} AND zadaca={$zadaca} AND zadatak={$zadatak}");
                if (mysql_result($q10, 0, 0) == 0) {
                    niceerror("Odabrani test nije sa odabrane zadaće.");
                    return;
                }
                $src = autotest_sa_kodom($test, $stud_id, true);
            } else {
                $src = file_get_contents($the_file);
            }
            $no_lines = count(explode("\n", $src));
            // geshi - biblioteka za syntax highlighting
            include_once 'lib/geshi/geshi.php';
            $geshi = new GeSHi($src, $jezik);
            ?>
		<center><table width="95%" style="border:1px solid silver;"><tr>
		<!-- Brojevi linija -->
		<td bgcolor="#CCCCCC" align="left"><pre><?php 
            for ($i = 1; $i <= $no_lines; $i++) {
                print "{$i}\n";
            }
            ?>
</pre></td>
		<td  bgcolor="#F3F3F3" align="left">
		<?php 
            print $geshi->parse_code();
            ?>
</td></tr></table></center><br/><?php 
            if ($_REQUEST["akcija"] == "test_sa_kodom") {
                return;
            }
            // Formular za izvršavanje programa
            if ($id_jezika > 0) {
                ?>
			<script type="text/javascript" src="js/combo-box.js"></script>
			<center><table style="border:1px solid silver;" cellspacing="0" cellpadding="6"><tr><td>
			Izvrši program sa sljedećim parametrima (kucajte \n za tipku enter):<br/>
			<?php 
                echo genform("POST");
                ?>
			<input type="hidden" name="akcija" value="izvrsi">
			<select name="stdin" onKeyPress="edit(event)" onBlur="this.editing = false;">
			<?php 
                // Zadnje korišteni stdin se čuva u bazi
                $q120 = myquery("select ulaz from stdin where zadaca={$zadaca} and redni_broj={$zadatak} order by id desc");
                if (mysql_num_rows($q120) < 1) {
                    print "<option></option>";
                }
                // bez ovoga nije moguće upisati novi tekst
                while ($r120 = mysql_fetch_row($q120)) {
                    print "<option value=\"{$r120['0']}\">{$r120['0']}</option>\n";
                }
                ?>
			</select><br/>
		
			<b>Pažnja!</b> Prije pokretanja provjerite da li program sadrži opasne naredbe.<br/>
			<input type="submit" value=" Izvrši program "> <input type="submit" name="sve" value=" Izvrši sve primjere odjednom ">
			</form></table></center><br/>&nbsp;<br/>
			<?php 
            }
        }
    } else {
        // Attachment
        $q130 = myquery("select filename,UNIX_TIMESTAMP(vrijeme) from zadatak where zadaca={$zadaca} and redni_broj={$zadatak} and student={$stud_id} order by id desc limit 1");
        if (mysql_num_rows($q130) > 0) {
            $filename = mysql_result($q130, 0, 0);
            $the_file = "{$lokacijazadaca}{$zadaca}/{$filename}";
            if ($filename && file_exists($the_file)) {
                $vrijeme = date("d. m. Y. h:i:s", mysql_result($q130, 0, 1));
                $velicina = nicesize(filesize($the_file));
                $icon = "images/mimetypes/" . getmimeicon($the_file);
                $dllink = "index.php?sta=common/attachment&student={$stud_id}&zadaca={$zadaca}&zadatak={$zadatak}";
                ?>
			<center><table width="75%" border="1" cellpadding="6" cellspacing="0" bgcolor="#CCCCCC"><tr><td>
			<a href="<?php 
                echo $dllink;
                ?>
"><img src="<?php 
                echo $icon;
                ?>
" border="0"></a>
			</td><td>
			<p>Poslani fajl: <b><a href="<?php 
                echo $dllink;
                ?>
"><?php 
                echo $filename;
                ?>
</a></b><br/>
			Veličina: <b><?php 
                echo $velicina;
                ?>
</b></p>
			</td></tr></table></center><br/>
			<?php 
            } else {
                ?>
			<center><table width="75%" border="1" cellpadding="6" cellspacing="0" bgcolor="#CCCCCC"><tr><td>
			<b><font color="red">Student je zaboravio priložiti datoteku.</font></b>
			</td></tr></table></center><br/>
			<?php 
            }
        }
    }
    // Prikaz statusa sa log-om i izmjena
    $q140 = myquery("select status,bodova,izvjestaj_skripte,komentar from zadatak where zadaca={$zadaca} and redni_broj={$zadatak} and student={$stud_id} order by id desc limit 1");
    if (mysql_num_rows($q140) > 0) {
        $status = mysql_result($q140, 0, 0);
        $bodova = mysql_result($q140, 0, 1);
        $izvjestaj_skripte = str_replace("\n", "<br/>", mysql_result($q140, 0, 2));
        $komentar = mysql_result($q140, 0, 3);
        $komentar = str_replace("\"", "&quot;", $komentar);
        // Koristimo poseban upit da bismo odredili vrijeme slanja prve verzije
        $q150 = myquery("select UNIX_TIMESTAMP(vrijeme) from zadatak where zadaca={$zadaca} and redni_broj={$zadatak} and student={$stud_id} order by id limit 1");
        $vrijeme_slanja = date("d. m. Y. H:i:s", mysql_result($q150, 0, 0));
        ?>
	
	<table border="0">
	<tr>
		<td>Vrijeme slanja:</td>
		<td><b><?php 
        echo $vrijeme_slanja;
        ?>
</b></td>
	</tr>
	<?php 
        // Autotest nalaz
        $nalaz_autotesta = autotest_tabela($stud_id, $zadaca, $zadatak, true);
        if ($nalaz_autotesta != "") {
            ?>
	<tr>
		<td>Rezultati testiranja:</td>
		<td>
		<p><?php 
            echo genform("POST");
            ?>
		<input type="hidden" name="akcija" value="brisi_testove">
		<input type="submit" value=" Obriši sve rezultate testiranja ">
		</form></p>
		<?php 
            print $nalaz_autotesta;
        }
        if ($id_jezika > 0) {
            ?>
	<tr>
		<td>Izvještaj skripte:</td>
		<td><i><?php 
            echo $izvjestaj_skripte;
            ?>
</i></td>
	</tr>
		<?php 
        }
        if ($status == 1 && !$user_siteadmin) {
            // nema mijenjanja ako je status 1 = ceka se automatska provjera
            print "Izmjena zadaće nije moguća jer se čeka automatsko testiranje";
        } else {
            print genform("POST");
        }
        ?>
	<input type="hidden" name="akcija" value="slanje">
	<?php 
    } else {
        print genform("POST");
        ?>
	<input type="hidden" name="akcija" value="slanje">

	<table border="0">
	<tr>
		<td>&nbsp;</td>
		<td><b>Unos bodova za zadaću koja nije poslana:</b></td>
	</tr>
	<?php 
    }
    // Dio forme koji se prikazuje bez obzira da li je u pitanju kreiranje nove zadaće ili promjena postojeće
    ?>
<tr>
	<td>Status</td>
	<td><select id="status" name="status"><?php 
    function myoption($nr, $tx, $sel)
    {
        print "{$sel}";
        print "<option value={$nr}";
        if ($nr == $sel) {
            print " selected";
        }
        print ">{$tx}</option>";
    }
    // tabela status kodova
    $statusi_array = array("nepoznat status", "sačekati automatsko testiranje!", "prepisana", "ne može se kompajlirati", "nova zadaća, potrebno pregledati", "pregledana");
    $brstatusa = 6;
    for ($i = 0; $i < $brstatusa; $i++) {
        myoption($i, $statusi_array[$i], $status);
    }
    ?>
</select></td>
</tr>
<tr>
	<td>Bodova:</td>
	<td><input type="text" size="20" name="bodova" value="<?php 
    echo $bodova;
    ?>
" onchange="javascript:document.getElementById('status').value=5;"></td>
</tr>
<tr>
	<td valign="top">Komentar:</td>
	<td><textarea cols="50" rows="5" name="komentar"><?php 
    echo $komentar;
    ?>
</textarea></td>
</tr>
<tr>
	<td colspan="2" align="center"><?php 
    if ($status != 1 || $user_siteadmin) {
        ?>
<input type="submit" value="Izmijeni vrijednosti"><?php 
    }
    ?>
</td>
</tr>
</table>
</form>



<?php 
    ##### HISTORIJA IZMJENA ######
    $q160 = myquery("select id,UNIX_TIMESTAMP(vrijeme),status,bodova,komentar,userid from zadatak where zadaca={$zadaca} and redni_broj={$zadatak} and student={$stud_id} order by vrijeme");
    if (mysql_num_rows($q160) > 1) {
        ?>

<p>Historija izmjena:</p>
<ul><?php 
        while ($r160 = mysql_fetch_row($q160)) {
            $imeprezime = "";
            if ($r160[5] > 0) {
                $q165 = myquery("select ime, prezime from osoba where id={$r160['5']}");
                if (mysql_num_rows($q165) > 0) {
                    $imeprezime = mysql_result($q165, 0, 0) . " " . mysql_result($q165, 0, 1);
                }
            }
            $vrijeme_slanja = date("d. m. Y. H:i:s", $r160[1]);
            print "<li><b>{$vrijeme_slanja}";
            if ($imeprezime != "") {
                print " ({$imeprezime})";
            }
            print ":</b> " . $statusi_array[$r160[2]];
            if ($r160[3] > 0) {
                print " (" . $r160[3] . " bodova)";
            }
            if (strlen($r160[4]) > 0) {
                print " - &quot;" . $r160[4] . "&quot;";
            }
            $q170 = myquery("select count(zadatak) from zadatakdiff where zadatak={$r160['0']}");
            if (mysql_result($q170, 0, 0) > 0) {
                print " (<a href=\"index.php?sta=saradnik/zadaca&akcija=diff&zadaca={$zadaca}&zadatak={$zadatak}&student={$stud_id}&diff_id={$r160['0']}\">diff</a>)";
            }
            print "</li>";
        }
        ?>
</ul><?php 
    }
    // Kraj historije izmjena
}
Exemplo n.º 3
0
function studentska_prodsjeka()
{
    global $userid, $user_siteadmin, $user_studentska;
    // Provjera privilegija
    if (!$user_studentska && !$user_siteadmin) {
        zamgerlog("nije studentska", 3);
        // 3: error
        zamgerlog2("nije studentska");
        // 3: error
        biguglyerror("Pristup nije dozvoljen.");
        return;
    }
    // Odredjujemo akademsku godinu
    $ak_god = intval($_REQUEST['ak_god']);
    if ($ak_god == 0) {
        // Aktuelna
        $q1 = myquery("select id, naziv from akademska_godina where aktuelna=1");
        $ak_god = mysql_result($q1, 0, 0);
        $ak_god_naziv = mysql_result($q1, 0, 1);
        // Da li postoji godina iza aktuelne?
        $q2 = myquery("select id, naziv from akademska_godina where id>{$ak_god} order by id limit 1");
        if (mysql_num_rows($q2) > 0) {
            $ak_god = mysql_result($q2, 0, 0);
            $ak_god_naziv = mysql_result($q2, 0, 1);
        }
    } else {
        $q3 = myquery("select naziv from akademska_godina where id={$ak_god}");
        $ak_god_naziv = mysql_result($q3, 0, 0);
    }
    ?>
<h3>Studentska služba - Zahtjevi za promjenu odsjeka</h3>
<?php 
    // Akcija: brisanje zahtjeva
    if ($_REQUEST['akcija'] == "obrisi") {
        $id = intval($_REQUEST['id']);
        $q5 = myquery("delete from promjena_odsjeka where id={$id}");
        zamgerlog("obrisan zahtjev za promjenu odsjeka sa IDom {$id}", 2);
        // 2 = edit
        zamgerlog2("obrisan zahtjev za promjenu odsjeka", $id);
    }
    // Akcija: dodavanje zahtjeva
    if ($_POST['akcija'] == "dodaj" && check_csrf_token()) {
        $prezime = trim(malaslova(my_escape($_REQUEST['prezime'])));
        $ime = trim(malaslova(my_escape($_REQUEST['ime'])));
        $iz_odsjeka = intval($_REQUEST['iz_odsjeka']);
        $u_odsjek = intval($_REQUEST['u_odsjek']);
        $q100 = myquery("select id from osoba where ime='{$ime}' and prezime='{$prezime}'");
        if (mysql_num_rows($q100) < 1) {
            niceerror("Nepoznat student pod imenom: \"{$ime} {$prezime}\"");
        } else {
            if ($iz_odsjeka == 0 || $u_odsjek == 0) {
                niceerror("Niste odabrali odsjek");
            } else {
                $osoba = mysql_result($q100, 0, 0);
                $q105 = myquery("select count(*) from promjena_odsjeka where osoba={$osoba} and akademska_godina={$ak_god}");
                if (mysql_result($q105, 0, 0) > 0) {
                    niceerror("Već postoji zahtjev za promjenu odsjeka za studenta \"{$ime} {$prezime}\"");
                } else {
                    $q110 = myquery("insert into promjena_odsjeka set osoba={$osoba}, iz_odsjeka={$iz_odsjeka}, u_odsjek={$u_odsjek}, akademska_godina={$ak_god}");
                    $q115 = myquery("select id from promjena_odsjeka where osoba={$osoba} and iz_odsjeka={$iz_odsjeka} and u_odsjek={$u_odsjek} and akademska_godina={$ak_god}");
                    zamgerlog("dodan zahtjev za promjenu odsjeka za osobu u{$osoba} (iz {$iz_odsjeka} u {$u_odsjek})", 2);
                    zamgerlog2("dodan zahtjev za promjenu odsjeka", intval($osoba), $iz_odsjeka, $u_odsjek);
                }
            }
        }
    }
    // Akcija: prihvatanje zahtjeva
    // Ustvari ćemo samo dati linkove na modul studentska/osobe
    if ($_REQUEST['akcija'] == "prihvati") {
        $id = intval($_REQUEST['id']);
        $potvrda = intval($_REQUEST['potvrda']);
        $q500 = myquery("select osoba, iz_odsjeka, u_odsjek from promjena_odsjeka where id={$id} and akademska_godina={$ak_god}");
        if (mysql_num_rows($q500) < 1) {
            niceerror("Nepoznat zahtjev ID");
            return;
        }
        $osoba = mysql_result($q500, 0, 0);
        $iz_odsjeka = mysql_result($q500, 0, 1);
        $u_odsjek = mysql_result($q500, 0, 2);
        // Da li trenutno studira
        $q510 = myquery("select s.id, s.naziv, ss.semestar from studij as s, student_studij as ss where ss.student={$osoba} and ss.studij=s.id and ss.akademska_godina={$ak_god} order by ss.semestar desc");
        if (mysql_num_rows($q510) > 0) {
            $studij = mysql_result($q510, 0, 0);
            $naziv_studija = mysql_result($q510, 0, 1);
            $semestar = mysql_result($q510, 0, 2);
            if ($studij == $u_odsjek) {
                nicemessage("Student je već upisan na studij {$naziv_studija}");
                return;
            }
            if ($studij != $iz_odsjeka) {
                niceerror("Student je trenutno upisan na studij {$naziv_studija} a ne na izabrani studij!");
                print "Vaš zahtjev nije ispravan. Obrišite ga i napravite novi.";
                return;
            }
            // Ispis sa studija
            ?>
		<p>Najprije morate ispisati studenta sa studija <?php 
            echo $naziv_studija;
            ?>
. <a href="?sta=studentska/osobe&osoba=<?php 
            echo $osoba;
            ?>
&akcija=ispis&studij=<?php 
            echo $iz_odsjeka;
            ?>
&semestar=<?php 
            echo $semestar;
            ?>
&godina=<?php 
            echo $ak_god;
            ?>
">Kliknite ovdje da ispišete studenta sa studija,</a> a zatim se vratite na stranicu &quot;Promjena odsjeka&quot; kako biste ga/je upisali na novi studij.</p>
		<?php 
            return;
        }
        // Koji je zadnji semestar slušao?
        $q560 = myquery("select ss.studij, ss.semestar, s.naziv from student_studij as ss, studij as s where ss.student={$osoba} and ss.studij=s.id order by ss.akademska_godina desc, ss.semestar desc");
        $studij = mysql_result($q560, 0, 0);
        $zadnji_semestar = mysql_result($q560, 0, 1);
        $naziv_studija = mysql_result($q560, 0, 2);
        if ($studij != $iz_odsjeka) {
            niceerror("Student je prošle godine bio upisan na studij {$naziv_studija}, a ne na odabrani studij!");
            print "Vaš zahtjev nije ispravan. Obrišite ga i napravite novi.";
            return;
        }
        $q570 = myquery("select naziv from studij where id={$u_odsjek}");
        $naziv_ciljnog = mysql_result($q570, 0, 0);
        print "<p>Provjerite da li student ima uslove za upis u viši semestar ili nema!!!</p>\n";
        if ($zadnji_semestar % 2 == 1) {
            $manji = $zadnji_semestar - 1;
            $veci = $zadnji_semestar + 1;
            ?>
		<p><a href="?sta=studentska/osobe&osoba=<?php 
            echo $osoba;
            ?>
&akcija=upis&studij=<?php 
            echo $u_odsjek;
            ?>
&semestar=<?php 
            echo $manji;
            ?>
&godina=<?php 
            echo $ak_god;
            ?>
">Ponovo upiši studenta na <?php 
            echo $naziv_ciljnog;
            ?>
, <?php 
            echo $manji;
            ?>
. semestar.</a></p>
		<p><a href="?sta=studentska/osobe&osoba=<?php 
            echo $osoba;
            ?>
&akcija=upis&studij=<?php 
            echo $u_odsjek;
            ?>
&semestar=<?php 
            echo $veci;
            ?>
&godina=<?php 
            echo $ak_god;
            ?>
">Upiši studenta na <?php 
            echo $naziv_ciljnog;
            ?>
, <?php 
            echo $veci;
            ?>
. semestar.</a></p>
		<?php 
        } else {
            ?>
		<p><a href="?sta=studentska/osobe&osoba=<?php 
            echo $osoba;
            ?>
&akcija=upis&studij=<?php 
            echo $u_odsjek;
            ?>
&semestar=<?php 
            echo $zadnji_semestar;
            ?>
&godina=<?php 
            echo $ak_god;
            ?>
">Ponovo upiši studenta na <?php 
            echo $naziv_ciljnog;
            ?>
, <?php 
            echo $zadnji_semestar;
            ?>
. semestar.</a></p>
		<?php 
        }
        return;
    }
    // Akcija: kratki izvjestaj
    if ($_REQUEST['akcija'] == "kratkiizvj") {
        $q220 = myquery("select s.id, s.naziv from studij as s, tipstudija as ts where s.tipstudija=ts.id and ts.moguc_upis=1 and ts.ciklus=1");
        while ($r220 = mysql_fetch_row($q220)) {
            $ime_odsjeka[$r220[0]] = $r220[1];
        }
        $q400 = myquery("select iz_odsjeka,u_odsjek from promjena_odsjeka where akademska_godina={$ak_god}");
        $total = 0;
        while ($r400 = mysql_fetch_row($q400)) {
            $iz[$r400[0]]++;
            $u[$r400[1]]++;
            $total++;
        }
        ?>
	<table border="1"><tr bgcolor="#CCCCCC"><td><b>Studij</b></td> <td><b>Sa studija</b></td> <td><b>Na studij</b></td> <td><b>Razlika</b></td></tr>
	<?php 
        foreach ($ime_odsjeka as $id => $ime) {
            ?>
<tr><td><?php 
            echo $ime;
            ?>
</td><td><?php 
            echo $iz[$id];
            ?>
</td> <td><?php 
            echo $u[$id];
            ?>
</td> <td bgcolor="#EEEEEE"><?php 
            echo $u[$id] - $iz[$id];
            ?>
</td></tr>
		<?php 
        }
        ?>
	<tr><td>UKUPNO</td><td colspan="3" align="right"><?php 
        echo $total;
        ?>
 zahtjeva</td></tr></table>
	<?php 
        return;
    }
    // Akcija: izvjestaj
    if ($_REQUEST['akcija'] == "izvjestaj") {
        $suma = 0;
        foreach ($_REQUEST as $key => $value) {
            if (substr($key, 0, 6) == "limit-") {
                $studij = intval(substr($key, 6));
                $limit[$studij] = intval($value);
                $suma += intval($value);
            }
        }
        if ($suma != 0) {
            niceerror("Suma svih limita mora biti nula!");
            return;
        }
        // Zahtjeve sortiramo po broju polozenih predmeta i prosjecnoj ocjeni
        $zahtjevi = array();
        global $brojpredmeta, $prosjek;
        // zbog usort() :(
        $q200 = myquery("select po.osoba, po.iz_odsjeka, po.u_odsjek, o.ime, o.prezime from promjena_odsjeka as po, osoba as o where po.osoba=o.id and po.akademska_godina={$ak_god}");
        while ($r200 = mysql_fetch_row($q200)) {
            $zahtjevi[] = $r200[0];
            $imeiprezime[$r200[0]] = "{$r200['3']} {$r200['4']}";
            $izodsjeka[$r200[0]] = $r200[1];
            $uodsjek[$r200[0]] = $r200[2];
            $uk_izodsjeka[$r200[1]]++;
            $uk_uodsjek[$r200[2]]++;
            // Prosjek
            $q210 = myquery("select ko.ocjena from konacna_ocjena as ko, ponudakursa as pk where ko.student={$r200['0']} and ko.predmet=pk.predmet and pk.semestar<3");
            while ($r210 = mysql_fetch_row($q210)) {
                $brojpredmeta[$r200[0]]++;
                $prosjek[$r200[0]] += $r210[0];
            }
            $prosjek[$r200[0]] = $prosjek[$r200[0]] / $brojpredmeta[$r200[0]];
        }
        // Sort preko korisnicke funkcije
        function po_broju_i_prosjeku($s1, $s2)
        {
            global $brojpredmeta, $prosjek;
            if ($brojpredmeta[$s1] < $brojpredmeta[$s2]) {
                return 1;
            } else {
                if ($brojpredmeta[$s1] > $brojpredmeta[$s2]) {
                    return -1;
                } else {
                    if ($prosjek[$s1] < $prosjek[$s2]) {
                        return 1;
                    } else {
                        if ($prosjek[$s1] > $prosjek[$s2]) {
                            return -1;
                        }
                    }
                }
            }
            return 0;
        }
        usort($zahtjevi, po_broju_i_prosjeku);
        // Da li je zahtjev prihvacen ili odbijen?
        $odbijen = array();
        // Status -1 znaci da nije jos uvijek razmatran
        for ($i = 0; $i < count($zahtjevi); $i++) {
            $odbijen[$zahtjevi[$i]] = -1;
        }
        for ($i = 0; $i < count($zahtjevi); $i++) {
            if ($brojpredmeta[$zahtjevi[$i]] < 9) {
                // Ponovci svakako ne mogu mijenjati odsjek
                $odbijen[$zahtjevi[$i]] = 1;
            }
        }
        for ($i = 0; $i < count($zahtjevi); $i++) {
            $osoba = $zahtjevi[$i];
            if ($odbijen[$osoba] != -1) {
                continue;
            }
            // Vec obradjen
            if ($limit[$uodsjek[$osoba]] > 0 && $limit[$izodsjeka[$osoba]] < 0) {
                // Ulazi u limit
                $odbijen[$osoba] = 0;
                $limit[$izodsjeka[$osoba]]++;
                $limit[$uodsjek[$osoba]]--;
                continue;
            }
            // Trazimo osobu s kojom ce se mijenjati
            for ($j = $i + 1; $j < count($zahtjevi); $j++) {
                $osoba2 = $zahtjevi[$j];
                if ($odbijen[$osoba2] != -1) {
                    continue;
                }
                // Vec obradjen
                if ($izodsjeka[$osoba] == $uodsjek[$osoba2] && $uodsjek[$osoba] == $izodsjeka[$osoba2]) {
                    // Klasicna zamjena
                    $odbijen[$osoba] = 0;
                    $odbijen[$osoba2] = 0;
                    break;
                }
                if ($izodsjeka[$osoba] == $uodsjek[$osoba2]) {
                    if ($limit[$uodsjek[$osoba]] > 0 && $limit[$izodsjeka[$osoba2]] < 0) {
                        // Zamjena ulazi u limit
                        $odbijen[$osoba] = 0;
                        $odbijen[$osoba2] = 0;
                        $limit[$izodsjeka[$osoba2]]++;
                        $limit[$uodsjek[$osoba]]--;
                        break;
                    }
                    // Trazimo trecu osobu za 1->2->3->1 zamjenu
                    for ($k = $j + 1; $k < count($zahtjevi); $k++) {
                        $osoba3 = $zahtjevi[$k];
                        if ($odbijen[$osoba3] != -1) {
                            continue;
                        }
                        if ($izodsjeka[$osoba2] == $uodsjek[$osoba3] && $izodsjeka[$osoba3] == $uodsjek[$osoba]) {
                            $odbijen[$osoba] = 0;
                            $odbijen[$osoba2] = 0;
                            $odbijen[$osoba3] = 0;
                            break;
                        }
                    }
                }
                if ($odbijen[$osoba] == 0) {
                    break;
                }
                // Zbog $k petlje
                // Da li u limit ulazi kontra-zamjena?
                if ($izodsjeka[$osoba2] == $uodsjek[$osoba]) {
                    if ($limit[$uodsjek[$osoba2]] > 0 && $limit[$izodsjeka[$osoba1]] < 0) {
                        $odbijen[$osoba] = 0;
                        $odbijen[$osoba2] = 0;
                        $limit[$izodsjeka[$osoba]]++;
                        $limit[$uodsjek[$osoba2]]--;
                        break;
                    }
                }
            }
            // Nista nismo nasli, ovaj je odbijen
            if ($odbijen[$osoba] == -1) {
                $odbijen[$osoba] = 1;
            }
        }
        // Ispis
        $q220 = myquery("select id,kratkinaziv from studij where moguc_upis=1");
        while ($r220 = mysql_fetch_row($q220)) {
            $ime_odsjeka[$r220[0]] = $r220[1];
        }
        ?>
	<b>Prihvaćeni zahtjevi:</b>
	<table border="1"><tr><td>R. br.</td><td>Ime i 
prezime</td><td>Iz 
odsjeka</td><td>U odsjek</td><td>Broj pol.</td><td>Prosjek</td></tr>
	<?php 
        $rbr = 1;
        foreach ($zahtjevi as $osoba) {
            if ($odbijen[$osoba] == 1) {
                continue;
            }
            print "<tr> \n<td>" . $rbr++ . "</td> <td>" . $imeiprezime[$osoba] . "</td> \n<td>" . $ime_odsjeka[$izodsjeka[$osoba]] . "</td> <td>" . $ime_odsjeka[$uodsjek[$osoba]] . "</td> <td>" . $brojpredmeta[$osoba] . "</td> <td>" . round($prosjek[$osoba], 2) . "</td></tr>\n";
        }
        ?>
	</table>
	<p>&nbsp;</p>
	<b>Odbijeni zahtjevi:</b>
	<table border="1"><tr><td>R. br.</td><td>Ime i 
prezime</td><td>Iz 
odsjeka</td><td>U odsjek</td><td>Broj pol.</td><td>Prosjek</td></tr>
	<?php 
        $rbr = 1;
        foreach ($zahtjevi as $osoba) {
            if ($odbijen[$osoba] == 0) {
                continue;
            }
            print "<tr> \n<td>" . $rbr++ . "</td> <td>" . $imeiprezime[$osoba] . "</td> \n<td>" . $ime_odsjeka[$izodsjeka[$osoba]] . "</td> <td>" . $ime_odsjeka[$uodsjek[$osoba]] . "</td> <td>" . $brojpredmeta[$osoba] . "</td> <td>" . round($prosjek[$osoba], 2) . "</td></tr>\n";
        }
        print "</table>\n";
        /*	foreach ($delta as $odsjek=>$broj) {
        		print "Delta ".$ime_odsjeka[$odsjek]." je $broj<br/>";
        		print "Odobreno ".$ime_odsjeka[$odsjek]." je ".$odobreno[$odsjek]."<br/>";
        	}*/
        return;
    }
    // Spisak zahtjeva
    ?>
<b>Aktuelni zahtjevi (akademska <?php 
    echo $ak_god_naziv;
    ?>
):</b>
<ul>
<?php 
    $q10 = myquery("select po.id, o.ime, o.prezime, s.naziv, po.u_odsjek, o.id from promjena_odsjeka as po, osoba as o, studij as s where po.osoba=o.id and po.iz_odsjeka=s.id and po.akademska_godina={$ak_god}");
    if (mysql_num_rows($q10) < 1) {
        print "<li>Nema zahtjeva</li\n";
    }
    $total = 0;
    while ($r10 = mysql_fetch_row($q10)) {
        $q20 = myquery("select naziv from studij where id={$r10['4']}");
        ?>
	<li><a href="?sta=studentska/osobe&akcija=edit&osoba=<?php 
        echo $r10[5];
        ?>
"><?php 
        echo $r10[1];
        ?>
 <?php 
        echo $r10[2];
        ?>
</a> - sa "<?php 
        echo $r10[3];
        ?>
" na "<?php 
        echo mysql_result($q20, 0, 0);
        ?>
" (<a href="?sta=studentska/prodsjeka&akcija=obrisi&id=<?php 
        echo $r10[0];
        ?>
&ak_god=<?php 
        echo $ak_god;
        ?>
">obriši zahtjev</a>) (<a href="?sta=studentska/prodsjeka&akcija=prihvati&id=<?php 
        echo $r10[0];
        ?>
&ak_god=<?php 
        echo $ak_god;
        ?>
">prihvati zahtjev</a>)</li>
	<?php 
        $total++;
    }
    print "</ul><p>Ukupno: {$total} zahtjeva * <a href=\"?sta=studentska/prodsjeka&akcija=kratkiizvj\">Statistički pregled</a></p>\n\n";
    // Novi zahtjev
    // Upit za spisak odsjeka
    $spisak_odsjeka = "<option></option>\n";
    $q30 = myquery("select s.id, s.kratkinaziv from studij as s, tipstudija as ts where s.tipstudija=ts.id and ts.moguc_upis=1 and ts.ciklus=1 order by s.kratkinaziv");
    // Promjena odsjeka ima smisla samo na prvom ciklusu
    while ($r30 = mysql_fetch_row($q30)) {
        $spisak_odsjeka .= "<option value=\"{$r30['0']}\">{$r30['1']}</option>\n";
    }
    ?>
<hr><br/>
<b>Upišite novi zahtjev za promjenu odsjeka:</b><br/><br/>
<?php 
    echo genform("POST");
    ?>
<input type="hidden" name="akcija" value="dodaj">
Ime: <input type="text" name="ime" size="10">
Prezime: <input type="text" name="prezime" size="10"><br/>
Želi preći sa odsjeka: 
<select name="iz_odsjeka">
<?php 
    echo $spisak_odsjeka;
    ?>
</select>
Na odsjek:
<select name="u_odsjek">
<?php 
    echo $spisak_odsjeka;
    ?>
</select>
<br/>
<input type="submit" value=" Dodaj "></form>
<?php 
    // Izvjestaji
    ?>
<hr><br/>
<b>Spisak prihvaćenih i odbijenih zahtjeva:</b><br/><br/>
<?php 
    echo genform("POST");
    ?>
<input type="hidden" name="akcija" value="izvjestaj">
Iznos maksimalne promjene broja studenata po odsjeku:<br/>
<?php 
    $q40 = myquery("select s.id, s.kratkinaziv from studij as s, tipstudija as ts where s.tipstudija=ts.id and ts.moguc_upis=1 and ts.ciklus=1 order by s.kratkinaziv");
    // hardkodirano samo za prvi ciklus
    // zato što promjena studija na drugom ciklusu (koji traje 1-2 godine) baš i nema smisla
    while ($r40 = mysql_fetch_row($q40)) {
        print "{$r40['1']}: <input type=\"text\" name=\"limit-{$r40['0']}\" value=\"0\" size=\"3\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ";
    }
    ?>
<input type="submit" value=" Prikaži ">
</form>
<br/>


<?php 
}
 $needed_oxygen_size = $needed_oxygen * $pos_Oxy;
 $needed_mechanical_parts_size = $needed_mechanical_parts * $pos_Mec;
 $needed_coolant_size = $needed_coolant * $pos_Coo;
 $needed_robotics_size = $needed_robotics * $pos_Rob;
 $needed_heisotopes_size = $needed_heisotopes * $pos_Iso;
 $needed_hyisotopes_size = $needed_hyisotopes * $pos_Iso;
 $needed_oxisotopes_size = $needed_oxisotopes * $pos_Iso;
 $needed_niisotopes_size = $needed_niisotopes * $pos_Iso;
 $needed_ozone_size = $needed_ozone * $pos_Ozo;
 $needed_heavy_water_size = $needed_heavy_water * $pos_Hea;
 $needed_charter_size = $needed_charters * $pos_Cha;
 $needed_stront_size = $needed_stront * $pos_Str;
 $total_volume = 0;
 $total_volume = $needed_uranium_size + $needed_oxygen_size + $needed_mechanical_parts_size + $needed_coolant_size + $needed_robotics_size + $needed_heisotopes_size + $needed_hyisotopes_size + $needed_oxisotopes_size + $needed_biisotopes_size + $needed_ozone_size + $needed_heavy_water_size + $needed_charter_size + $needed_stront_size;
 // pulls the date of last update for display purposes
 $sql = "SELECT * FROM " . TBL_PREFIX . "outpost_update_log WHERE outpost_id = '" . my_escape($outpost_to_refuel) . "' ORDER BY id DESC";
 $result2 = mysql_query($sql) or die('Could not select from outpost_update_log; ' . mysql_error());
 $row2 = mysql_fetch_array($result2);
 // added more details to be displayed sence there will be more than 1 outpost being shown
 $last_update = gmdate("Y-m-d H:i:s", $row2['datetime']);
 echo "<table width='893' border='0'><tr><td width='120' height='15'><div align='left'>Last Updated: </div></td><td width='210'><div align='left'>" . $last_update . "</div></td><td width='509'><div align='left'></div></td></tr>";
 echo "<tr><td><div align='left'>Was updated: </div></td><td><div align='left'>" . $hoursago . " Hours Ago</div></td><td><div align='left'></div></td></tr>";
 echo "<tr><td><div align='left'>Outpost Name: </div></td><td><div align='left'>" . $outpost_name . "</div></td><td><div align='left'></div></td></tr>";
 //Print System name and outpost Name
 echo "<tr><td><div align='left'>System Name: </div></td><td><div align='left'>" . $systemID . "</div></td><td><div align='left'></div></td></tr></table><br>";
 echo "<table border=\"1\" cellspacing=\"0\" cellpadding=\"5\" width=\"310\">";
 echo "<tr><td>Fuel</td><td>Total Required</td><td>You need</td><td><div style=\"text-align: center; float; center\">Volume</div></td></tr>";
 echo "<tr><td>Enriched Uranium</td><td>" . $total_uranium . "</td><td>" . $needed_uranium . "</td><td width=\"85\"><div style=\"text-align: right; float: right\">(" . number_format($needed_uranium_size * 1, 2) . " m3)</div></td></tr>";
 echo "<tr><td>Oxygen</td><td>" . $total_oxygen . "</td><td>" . $needed_oxygen . "</td><td width=\"85\"><div style=\"text-align: right; float: right\">(" . number_format($needed_oxygen_size * 1, 2) . " m3)</div></td></tr>";
 echo "<tr><td>Mechanical Parts</td><td>" . $total_mechanical_parts . "</td><td>" . $needed_mechanical_parts . "</td><td width=\"85\"><div style=\"text-align: right; float: right\">(" . number_format($needed_mechanical_parts_size * 1, 2) . " m3)</div></td></tr>";
 echo "<tr><td>Coolant</td><td>" . $total_coolant . "</td><td>" . $needed_coolant . "</td><td width=\"85\"><div style=\"text-align: right; float: right\">(" . number_format($needed_coolant_size * 1, 2) . " m3)</div></td></tr>";
Exemplo n.º 5
0
function studentska_predmeti()
{
    global $userid, $user_siteadmin, $user_studentska;
    global $_lv_;
    // Potrebno za genform() iz libvedran
    require "lib/manip.php";
    // radi ispisa studenata sa predmeta
    // Provjera privilegija
    if (!$user_studentska && !$user_siteadmin) {
        zamgerlog("nije studentska", 3);
        // 3: error
        zamgerlog2("nije studentska");
        biguglyerror("Pristup nije dozvoljen.");
        return;
    }
    ?>
<center>
<table border="0"><tr><td>

<?php 
    $akcija = $_REQUEST['akcija'];
    // AKCIJA: Ogranicenje nastavnika na odredjene grupe
    if ($akcija == "ogranicenja") {
        $nastavnik = intval($_REQUEST['nastavnik']);
        $predmet = intval($_REQUEST['predmet']);
        $ag = intval($_REQUEST['ag']);
        // akademska godina
        // Imena stvari
        $q370 = myquery("select ime,prezime from osoba where id={$nastavnik}");
        if (mysql_num_rows($q370) < 1) {
            zamgerlog("nepoznat nastavnik u{$nastavnik}", 3);
            zamgerlog2("nepoznat nastavnik", $nastavnik);
            niceerror("Nepoznat nastavnik");
            return;
        }
        $ime = mysql_result($q370, 0, 0);
        $prezime = mysql_result($q370, 0, 1);
        $q371 = myquery("select naziv from predmet where id={$predmet}");
        if (mysql_num_rows($q371) < 1) {
            zamgerlog("nepoznat predmet pp{$predmet}", 3);
            zamgerlog2("nepoznat predmet", $predmet);
            niceerror("Nepoznat predmet");
            return;
        }
        $naziv_predmeta = mysql_result($q371, 0, 0);
        ?>
<ul><p>
	<b>Ograničenja za nastavnika <?php 
        echo $ime . " " . $prezime;
        ?>
 na predmetu <?php 
        echo $naziv_predmeta;
        ?>
</b></p><?php 
        // Subakcija
        if ($_POST['subakcija'] == "izmjena" && check_csrf_token()) {
            // Provjera podataka...
            $q374 = myquery("select id from labgrupa where predmet={$predmet} and akademska_godina={$ag}");
            $izabrane = 0;
            $grupe = 0;
            $upitdodaj = $upitbrisi = $upitbrisisve = "";
            while ($r374 = mysql_fetch_row($q374)) {
                $labgrupa = $r374[0];
                if ($_REQUEST['lg' . $labgrupa]) {
                    $izabrane++;
                    if ($upitdodaj) {
                        $upitdodaj .= ",";
                    }
                    $upitdodaj .= "({$nastavnik},{$labgrupa})";
                } else {
                    if ($upitbrisi) {
                        $upitbrisi .= " OR ";
                    }
                    $upitbrisi .= "(nastavnik={$nastavnik} AND labgrupa={$labgrupa})";
                }
                if ($upitbrisisve) {
                    $upitbrisisve .= " OR ";
                }
                $upitbrisisve .= "(nastavnik={$nastavnik} AND labgrupa={$labgrupa})";
                $grupe++;
            }
            if ($upitdodaj == "") {
                zamgerlog("pokusao ograniciti sve grupe nastavniku u{$nastavnik}, predmet pp{$predmet}, ag{$ag}", 3);
                zamgerlog2("pokusao ograniciti sve grupe nastavniku", $nastavnik, $predmet, $ag);
                niceerror("Nastavnik mora imati pristup barem jednoj grupi");
                print "<br/>Ako ne želite da ima pristup, odjavite ga/je sa predmeta.";
            } else {
                if ($grupe == $izabrane) {
                    // Sve izabrano
                    $q375 = myquery("delete from ogranicenje where {$upitbrisisve}");
                } else {
                    $q376 = myquery("delete from ogranicenje where {$upitbrisisve}");
                    $q377 = myquery("insert into ogranicenje values {$upitdodaj}");
                }
                nicemessage("Postavljena nova ograničenja.");
                zamgerlog("izmijenjena ogranicenja nastavniku u{$nastavnik}, predmet pp{$predmet}, ag{$ag}", 4);
                zamgerlog2("izmijenjena ogranicenja nastavniku", $nastavnik, $predmet, $ag);
            }
        }
        // Skripta za (de)selektovanje svih checkboxa
        ?>
	<script language="JavaScript">
	function checkall(val) {
		var z;
		for(z=0; z<document.ogranicenjaform.length; z++)
			if (document.ogranicenjaform[z].type=='checkbox')
				document.ogranicenjaform[z].checked=val;
	}
	</script>
	<?php 
        ?>
	<?php 
        echo genform("POST", "ogranicenjaform");
        ?>
	<input type="hidden" name="subakcija" value="izmjena">
	<p>
	<?php 
        $nema_ogranicenja = 0;
        $q372 = myquery("select count(*) from ogranicenje as o, labgrupa as l where o.nastavnik={$nastavnik} and o.labgrupa=l.id and l.predmet={$predmet} and l.akademska_godina={$ag}");
        if (mysql_result($q372, 0, 0) < 1) {
            $nema_ogranicenja = 1;
        }
        $q373 = myquery("select id,naziv from labgrupa where predmet={$predmet} and akademska_godina={$ag}");
        while ($r373 = mysql_fetch_row($q373)) {
            $dodaj = "CHECKED";
            if ($nema_ogranicenja == 0) {
                $q374 = myquery("select count(*) from ogranicenje where labgrupa={$r373['0']} and nastavnik={$nastavnik}");
                if (mysql_result($q374, 0, 0) == 0) {
                    $dodaj = "";
                }
            }
            ?>
<input type="checkbox" name="lg<?php 
            echo $r373[0];
            ?>
" <?php 
            echo $dodaj;
            ?>
> <?php 
            echo $r373[1];
            ?>
<br/><?php 
        }
        ?>
<br/><input type="submit" value=" Izmijeni "> &nbsp; <input type="button" value=" Označi sve " onclick="javascript:checkall(true);"> &nbsp; <input type="button" value=" Poništi sve " onclick="javascript:checkall(false);">
	&nbsp; <input type="button" value=" Nazad " onclick="location.href='?sta=studentska/predmeti&akcija=edit&predmet=<?php 
        echo $predmet;
        ?>
&ag=<?php 
        echo $ag;
        ?>
';"></form><?php 
    } else {
        if ($_POST['akcija'] == "novi" && check_csrf_token()) {
            // Naziv predmeta
            $naziv = substr(my_escape($_POST['naziv']), 0, 100);
            if (!preg_match("/\\w/", $naziv)) {
                zamgerlog("naziv nije ispravan ({$naziv})", 3);
                zamgerlog2("naziv nije ispravan", 0, 0, 0, $naziv);
                niceerror("Naziv nije ispravan");
                return;
            }
            // Dodajemo ga u aktuelnu akademsku godinu
            $q200 = myquery("select id from akademska_godina where aktuelna=1");
            if (mysql_num_rows($q200) < 1) {
                $q200 = myquery("select id from akademska_godina order by id desc");
            }
            if (mysql_num_rows($q200) < 1) {
                niceerror("Nije definisana nijedna akademska godina. Molimo kontaktirajte administratora sajta.");
                zamgerlog("ne postoji nijedna akademska godina", 3);
                zamgerlog2("ne postoji nijedna akademska godina");
                return;
            }
            $ak_god = mysql_result($q200, 0, 0);
            // Da li već postoji?
            $q210 = myquery("select id from predmet where naziv='{$naziv}'");
            if (mysql_num_rows($q210) > 0) {
                $predmet = mysql_result($q210, 0, 0);
                // Da li se drži u tekućoj akademskoj godini?
                $q220 = myquery("select count(*) from ponudakursa where predmet={$predmet} and akademska_godina={$ak_god}");
                if (mysql_result($q220, 0, 0) > 0) {
                    zamgerlog("predmet vec postoji u ovoj ak.god (pp{$predmet})", 3);
                    zamgerlog2("predmet vec postoji u ovoj ak.god", $predmet, $ag, 0, $naziv);
                    niceerror("Predmet već postoji");
                    ?>
<a href="?sta=studentska/predmeti&akcija=edit&predmet=<?php 
                    echo $predmet;
                    ?>
&ag=<?php 
                    echo $ak_god;
                    ?>
">Editovanje predmeta &quot;<?php 
                    echo $naziv;
                    ?>
&quot;</a><?php 
                    return;
                } else {
                    // Određujemo najnoviji plan studija
                    $q225 = myquery("select godina_vazenja from plan_studija where predmet={$predmet} order by godina_vazenja desc limit 1");
                    if (mysql_num_rows($q225) > 0) {
                        // Biramo ponude kursa iz najnovijeg plana studija
                        $q230 = myquery("select studij, semestar, obavezan from plan_studija where predmet={$predmet} and godina_vazenja=" . mysql_result($q225, 0, 0));
                    } else {
                        // Ne postoji plan studija
                        // Kopiramo ponude kursa iz prošle godine u ovu
                        $q230 = myquery("select studij, semestar, obavezan from ponudakursa where predmet={$predmet} and akademska_godina=" . ($ak_god - 1));
                    }
                    if (mysql_num_rows($q230) < 1) {
                        zamgerlog("predmet vec postoji, ali nije se drzao (pp{$predmet})", 3);
                        zamgerlog2("predmet vec postoji, ali nije se drzao", $predmet);
                        niceerror("Predmet već postoji, ali nije se držao ni ove ni prošle akademske godine.");
                        ?>
<p>Takođe nije definisan ni plan studija. Iz ovih razloga ne možemo automatski kreirati ponude kursa. Koristite editovanje da biste ručno dodali ponude kursa.</p><br/><a href="?sta=studentska/predmeti&akcija=edit&predmet=<?php 
                        echo $predmet;
                        ?>
&ag=<?php 
                        echo $ak_god;
                        ?>
">Editovanje predmeta &quot;<?php 
                        echo $naziv;
                        ?>
&quot;</a><?php 
                        return;
                    }
                    while ($r230 = mysql_fetch_row($q230)) {
                        $q240 = myquery("insert into ponudakursa set predmet={$predmet}, studij={$r230['0']}, semestar={$r230['1']}, obavezan={$r230['2']}, akademska_godina={$ak_god}");
                        $pk = mysql_insert_id();
                        // Ispis i logging
                        $q231 = myquery("select naziv from studij where id={$r230['0']}");
                        $ispis = "Kreiram ponudu kursa za predmet {$naziv} (studij " . mysql_result($q231, 0, 0) . ", semestar {$r230['1']}";
                        if ($r230[2] != 1) {
                            $ispis .= ", izborni";
                        }
                        $ispis .= ")";
                        nicemessage($ispis);
                        zamgerlog("kreirana ponudakursa za pp{$predmet}");
                        zamgerlog2("kreirana ponudakursa", $pk);
                    }
                    // Kreiram virtualnu labgrupu "Svi studenti"
                    $q250 = myquery("insert into labgrupa set naziv='(Svi studenti)', predmet={$predmet}, akademska_godina={$ak_god}, virtualna=1");
                    ?>
<a href="?sta=studentska/predmeti&akcija=edit&predmet=<?php 
                    echo $predmet;
                    ?>
&ag=<?php 
                    echo $ak_god;
                    ?>
">Editovanje predmeta &quot;<?php 
                    echo $naziv;
                    ?>
&quot;</a><?php 
                    return;
                }
            }
            // Kreiranje potpuno novog predmeta
            // Određujemo kratki naziv
            $dijelovi = explode(" ", $naziv);
            $kratki_naziv = "";
            foreach ($dijelovi as $dio) {
                $kratki_naziv .= strtoupper(substr($dio, 0, 1));
            }
            // Polje institucija u tabeli predmet mora biti definisano!
            // Korisnik ga može promijeniti kasnije
            $q260 = myquery("select id from institucija order by id limit 1");
            $institucija = mysql_result($q260, 0, 0);
            // Dodajem predmet u bazu
            $q270 = myquery("insert into predmet set naziv='{$naziv}', kratki_naziv='{$kratki_naziv}', institucija={$institucija}");
            // Koji id predmeta smo dobili?
            $q280 = myquery("select id from predmet where naziv='{$naziv}'");
            $predmet = mysql_result($q280, 0, 0);
            // Potrebno je definisati zapis u tabeli akademska_godina_predmet. Biramo
            // default tip predmeta (ETF Bologna standard) a korisnik ga može promijeniti kasnije
            $q285 = myquery("select id from tippredmeta order by id limit 1");
            $tippredmeta = mysql_result($q285, 0, 0);
            $q287 = myquery("insert into akademska_godina_predmet set akademska_godina={$ak_god}, predmet={$predmet}, tippredmeta={$tippredmeta}");
            // Kreiramo virtualnu labgrupu "Svi studenti"
            $q290 = myquery("insert into labgrupa set naziv='(Svi studenti)', predmet={$predmet}, akademska_godina={$ak_god}, virtualna=1");
            // Logging
            zamgerlog("potpuno novi predmet pp{$predmet}, akademska godina ag{$ak_god}", 4);
            zamgerlog2("kreiran novi predmet", $predmet, $ak_god);
            ?>
	<p>Kreiran novi predmet pod nazivom <?php 
            echo $naziv;
            ?>
 sa uobičajenim parametrima. Koristite polja za izmjenu da ih podesite.</p>
	<p>Obavezno definišite barem jednu ponudu kursa, u suprotnom studenti neće moći biti upisani na predmet.</p>
	<a href="?sta=studentska/predmeti&akcija=edit&predmet=<?php 
            echo $predmet;
            ?>
&ag=<?php 
            echo $ak_god;
            ?>
">Editovanje predmeta &quot;<?php 
            echo $naziv;
            ?>
&quot;</a>
	<?php 
        } else {
            if ($akcija == "realedit") {
                $predmet = intval($_REQUEST['predmet']);
                $ag = intval($_REQUEST['ag']);
                // akademska godina
                print "<h1>Izmjena podataka o predmetu</h1>";
                if ($_REQUEST['_lv_action'] == "edit") {
                    nicemessage("Podaci o predmetu izmijenjeni");
                    zamgerlog("izmijenjeni podaci o predmetu pp{$predmet}", 4);
                    zamgerlog2("izmijenjeni podaci o predmetu", $predmet);
                }
                $_lv_['where:id'] = $predmet;
                $_lv_['forceedit'] = 1;
                print db_form("predmet");
                ?>
	<p><a href="?sta=studentska/predmeti&akcija=edit&predmet=<?php 
                echo $predmet;
                ?>
&ag=<?php 
                echo $ag;
                ?>
">Nazad</a></p>
	<?php 
            } else {
                if ($akcija == "dodaj_pk") {
                    $predmet = intval($_REQUEST['predmet']);
                    $ag = intval($_REQUEST['ag']);
                    // akademska godina
                    if ($_REQUEST['subakcija'] == "potvrda" && check_csrf_token()) {
                        $studij = intval($_REQUEST['_lv_column_studij']);
                        $semestar = intval($_REQUEST['semestar']);
                        if ($_REQUEST['obavezan']) {
                            $obavezan = true;
                        } else {
                            $obavezan = false;
                        }
                        kreiraj_ponudu_kursa($predmet, $studij, $semestar, $ag, $obavezan, $ispis = 0);
                        nicemessage("Ponuda kursa uspješno kreirana");
                    }
                    $q400 = myquery("select naziv from predmet where id={$predmet}");
                    $q410 = myquery("select naziv from akademska_godina where id={$ag}");
                    print "<h3>Nova ponuda kursa za predmet " . mysql_result($q400, 0, 0) . ",<br/> akademska godina " . mysql_result($q410, 0, 0) . "</h3>";
                    unset($_REQUEST['obavezan']);
                    print genform("POST");
                    ?>
	<input type="hidden" name="subakcija" value="potvrda">
	Studij: <?php 
                    echo db_dropdown("studij");
                    ?>
<br><br>
	Semestar: <input type="text" name="semestar" size="5"><br><br>
	<input type="checkbox" name="obavezan"> Obavezan<br><br>
	<input type="submit" value=" Pošalji "> <input type="reset" value=" Poništi "></form>

	<p><a href="?sta=studentska/predmeti&akcija=edit&predmet=<?php 
                    echo $predmet;
                    ?>
&ag=<?php 
                    echo $ag;
                    ?>
">Nazad</a></p>
	<?php 
                } else {
                    if ($akcija == "edit") {
                        $predmet = intval($_REQUEST['predmet']);
                        $ag = intval($_REQUEST['ag']);
                        // akademska godina
                        if ($ag == 0) {
                            // Izaberi aktuelnu akademsku godinu
                            $q358 = myquery("select id from akademska_godina where aktuelna=1 limit 1");
                            $ag = mysql_result($q358, 0, 0);
                        }
                        $old_search = $_REQUEST['search'];
                        // Za link ispod
                        print "<a href=\"?sta=studentska/predmeti&ag={$ag}&search={$old_search}&offset=" . intval($_REQUEST['offset']) . "\">Nazad na rezultate pretrage</a><br/><br/>";
                        // Izvjestaji
                        ?>
	<center>
	<table width="700" border="0" cellspacing="0" cellpadding="0"><tr><td width="100" valign="top">
		<table width="100%" border="1" cellspacing="0" cellpadding="0">
			<tr><td bgcolor="#777777" align="center">
				<font color="white"><b>IZVJEŠTAJI:</b></font>
			</td></tr>
			<tr><td align="center"><a href="?sta=izvjestaj/grupe&predmet=<?php 
                        echo $predmet;
                        ?>
&ag=<?php 
                        echo $ag;
                        ?>
">
			<img src="images/32x32/izvjestaj.png" border="0"><br/>Spisak grupa</a></td></tr>
			<tr><td align="center"><a href="?sta=izvjestaj/predmet&predmet=<?php 
                        echo $predmet;
                        ?>
&ag=<?php 
                        echo $ag;
                        ?>
&skrati=da">
			<img src="images/32x32/izvjestaj.png" border="0"><br/>Puni izvještaj</a></td></tr><?php 
                        $q359 = myquery("select i.id,UNIX_TIMESTAMP(i.datum), k.gui_naziv 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($q359) > 0) {
                            ?>
<tr><td align="center"><a href="?sta=izvjestaj/statistika_predmeta&predmet=<?php 
                            echo $predmet;
                            ?>
&ag=<?php 
                            echo $ag;
                            ?>
">
				<img src="images/32x32/izvjestaj.png" border="0"><br/>Statistika predmeta</a></td></tr><?php 
                        }
                        ?>
			<tr><td align="center"><a href="?sta=studentska/prijave&predmet=<?php 
                        echo $predmet;
                        ?>
&ag=<?php 
                        echo $ag;
                        ?>
">
			<img src="images/32x32/izvjestaj.png" border="0"><br/>Štampanje prijava</a></td></tr>
			<tr><td align="center"><a href="?sta=nastavnik/ispiti&predmet=<?php 
                        echo $predmet;
                        ?>
&ag=<?php 
                        echo $ag;
                        ?>
">
			<img src="images/32x32/izvjestaj.png" border="0"><br/>Ispiti i prijave</a></td></tr>
			<tr><td align="center"><a href="?sta=nastavnik/unos_ocjene&predmet=<?php 
                        echo $predmet;
                        ?>
&ag=<?php 
                        echo $ag;
                        ?>
">
			<img src="images/32x32/izvjestaj.png" border="0"><br/>Unos ocjena</a></td></tr>


			<tr><td align="left">Ispiti:<br/><?php 
                        while ($r359 = mysql_fetch_row($q359)) {
                            $ispit = $r359[0];
                            $datum = date("d. m. Y.", $r359[1]);
                            $nazivispita = $r359[2];
                            ?>
				* <a href="?sta=izvjestaj/ispit&ispit=<?php 
                            echo $ispit;
                            ?>
"><?php 
                            echo $nazivispita;
                            ?>
<br/>
				(<?php 
                            echo $datum;
                            ?>
)</a><br/>
				<?php 
                        }
                        ?>
</td></tr>
		</table>
	</td><td width="10" valign="top">&nbsp;
	</td><td width="590" valign="top">
	<?php 
                        // Submit akcije
                        // Angazman nastavnika na predmetu
                        if ($_POST['subakcija'] == "dodaj_nastavnika" && check_csrf_token()) {
                            $nastavnik = intval($_POST['nastavnik']);
                            if ($nastavnik > 0) {
                                $q360 = myquery("select count(*) from nastavnik_predmet where nastavnik={$nastavnik} and predmet={$predmet} and akademska_godina={$ag}");
                                if (mysql_result($q360, 0, 0) < 1) {
                                    $q361 = myquery("insert into nastavnik_predmet set nastavnik={$nastavnik}, predmet={$predmet}, akademska_godina={$ag}");
                                }
                                nicemessage("Nastavniku dato pravo pristupa predmetu");
                                zamgerlog("nastavnik u{$nastavnik} dodan na predmet pp{$predmet}", 4);
                                zamgerlog2("nastavniku data prava na predmetu", $nastavnik, $predmet, $ag);
                            }
                        } else {
                            if ($_POST['subakcija'] == "postavi_nivo_pristupa" && check_csrf_token()) {
                                $nastavnik = intval($_POST['nastavnik']);
                                $nivo_pristupa = $_POST['nivo_pristupa'];
                                if ($nivo_pristupa != 'nastavnik' && $nivo_pristupa != 'super_asistent' && $nivo_pristupa != 'asistent') {
                                    niceerror("Nepoznat nivo pristupa");
                                    zamgerlog("nepoznat nivo pristupa " . my_escape($nivo_pristupa), 3);
                                    zamgerlog2("nepoznat nivo pristupa", 0, 0, 0, $nivo_pristupa);
                                    return;
                                }
                                $q362a = myquery("update nastavnik_predmet set nivo_pristupa='{$nivo_pristupa}' where nastavnik={$nastavnik} and predmet={$predmet} and akademska_godina={$ag}");
                                nicemessage("Promijenjeni nivoi pristupa korisnika na predmetu");
                                zamgerlog("nastavnik u{$nastavnik} dat nivo '{$nivo_pristupa}' na predmetu pp{$predmet}", 4);
                                zamgerlog2("nastavniku data prava na predmetu", $nastavnik, $predmet, $ag, $nivo_pristupa);
                            } else {
                                if ($_POST['subakcija'] == "izbaci_nastavnika" && check_csrf_token()) {
                                    $nastavnik = intval($_POST['nastavnik']);
                                    $q363 = myquery("delete from nastavnik_predmet where nastavnik={$nastavnik} and predmet={$predmet} and akademska_godina={$ag}");
                                    nicemessage("Nastavnik više nema pravo pristupa predmetu");
                                    zamgerlog("nastavnik u{$nastavnik} izbacen sa predmeta pp{$predmet}", 4);
                                    zamgerlog2("nastavniku oduzeta prava na predmetu", $nastavnik, $predmet, $ag);
                                } else {
                                    if ($_POST['subakcija'] == "obrisi_pk" && check_csrf_token()) {
                                        $ponudakursa = intval($_POST['pk']);
                                        // Ispisujemo studente sa predmeta radi ispravnog brisanja podataka
                                        $q364 = myquery("select sp.student, pk.predmet, pk.akademska_godina, o.ime, o.prezime, p.naziv from student_predmet as sp, ponudakursa as pk, osoba as o, predmet as p where pk.id={$ponudakursa} and sp.predmet=pk.id and sp.student=o.id and pk.predmet=p.id");
                                        while ($r364 = mysql_fetch_row($q364)) {
                                            $predmet = $r364[1];
                                            $ag = $r364[2];
                                            // za kasnije...
                                            nicemessage("Ispisujem studenta {$r364['3']} {$r364['4']} sa predmeta {$r365}");
                                            // Ova funkcija briše ispite, zadaće, prisustvo i konačnu ocjenu te ispisuje studenta iz labgrupe
                                            ispis_studenta_sa_predmeta($r364[0], $r364[1], $r364[2]);
                                        }
                                        // Brišemo ponudu kursa
                                        $q365 = myquery("delete from ponudakursa where id={$ponudakursa}");
                                        nicemessage("Ponuda kursa je obrisana");
                                        zamgerlog("obrisana ponudakursa {$ponudakursa} (predmet pp{$predmet}, godina ag{$ag})", 4);
                                        zamgerlog2("obrisana ponudakursa", $ponudakursa);
                                    } else {
                                        if ($_GET['subakcija'] == "deangazuj") {
                                            $osoba = intval($_GET['osoba']);
                                            $q367 = myquery("delete from angazman where osoba={$osoba} and predmet={$predmet} and akademska_godina={$ag}");
                                            nicemessage("Nastavnik više nije angažovan na predmetu");
                                            zamgerlog("osoba u{$osoba} deangazovana sa predmeta pp{$predmet}, godina {$ag}", 4);
                                            zamgerlog2("nastavnik deangazovan sa predmeta", $osoba, $predmet, $ag);
                                        }
                                    }
                                }
                            }
                        }
                        // Osnovni podaci o predmetu
                        $q350 = myquery("SELECT p.id, p.sifra, p.naziv, p.kratki_naziv, p.institucija, agp.tippredmeta, p.ects, p.sati_predavanja, p.sati_vjezbi, p.sati_tutorijala \n\tFROM predmet as p, akademska_godina_predmet as agp \n\tWHERE p.id={$predmet} AND agp.akademska_godina={$ag} AND p.id=agp.predmet");
                        if (!($r350 = mysql_fetch_row($q350))) {
                            $q351 = myquery("SELECT COUNT(*) FROM predmet WHERE id={$predmet}");
                            if (mysql_result($q351, 0, 0) > 0) {
                                zamgerlog("nedostaje slog u tabeli akademska_godina_predmet {$predmet} {$ag}", 3);
                                zamgerlog2("nedostaje slog u tabeli akademska_godina_predmet", $predmet, $ag);
                                niceerror("Nepostojeći predmet (nedostaje agp)!");
                            } else {
                                zamgerlog("nepostojeci predmet {$predmet}", 3);
                                zamgerlog2("nepostojeci predmet", $predmet);
                                niceerror("Nepostojeći predmet!");
                            }
                            return;
                        }
                        // Oznacicemo neispravne podatke
                        $greska = 0;
                        $naziv = $r350[2];
                        if (!preg_match("/\\w/", $naziv)) {
                            $naziv = "<font color=\"red\">Bez naziva!</font>";
                            $greska = 1;
                        }
                        $sifra = $r350[1];
                        if ($sifra == "") {
                            $sifra = "<font color=\"red\">(?)</font>";
                            $greska = 1;
                        }
                        $kratkinaziv = $r350[3];
                        if ($kratkinaziv == "") {
                            $kratkinaziv = "<font color=\"red\">(?)</font>";
                            $greska = 1;
                        }
                        $ects = floatval($r350[6]);
                        if ($ects == 0) {
                            $ects = "<font color=\"red\">(?)</font>";
                            $greska = 1;
                        }
                        // Zašto ne bi bilo nula sati?
                        $sati_predavanja = floatval($r350[7]);
                        // if ($sati_predavanja==0) { $sati_predavanja="<font color=\"red\">(?)</font>"; $greska=1; }
                        $sati_vjezbi = floatval($r350[8]);
                        // if ($sati_vjezbi==0) { $sati_vjezbi="<font color=\"red\">(?)</font>"; $greska=1; }
                        $sati_tutorijala = floatval($r350[9]);
                        // if ($sati_tutorijala==0) { $sati_tutorijala="<font color=\"red\">(?)</font>"; $greska=1; }*/
                        // Institucija
                        $q352 = myquery("select naziv from institucija where id={$r350['4']}");
                        if (mysql_num_rows($q352) < 1) {
                            $institucija = "<font color=\"red\">(?)</font>";
                            $greska = 1;
                        } else {
                            $institucija = mysql_result($q352, 0, 0);
                        }
                        // Tip predmeta
                        $q354 = myquery("select naziv from tippredmeta where id={$r350['5']}");
                        if (mysql_num_rows($q354) < 1) {
                            $tippredmeta = "<font color=\"red\">(?)</font>";
                            $greska = 1;
                        } else {
                            $tippredmeta = mysql_result($q354, 0, 0);
                        }
                        ?>
	<h3><?php 
                        echo $naziv;
                        ?>
</h3>
	<p>Šifra predmeta: <b><?php 
                        echo $sifra;
                        ?>
</b><br />
	Skraćeni naziv predmeta: <b><?php 
                        echo $kratkinaziv;
                        ?>
</b><br />
	Institucija: <b><?php 
                        echo $institucija;
                        ?>
</b><br />
	Tip predmeta: <b><?php 
                        echo $tippredmeta;
                        ?>
</b><br />
	ECTS: <b><?php 
                        echo $ects;
                        ?>
 bodova</b><br />
	Sati predavanja: <b><?php 
                        echo $sati_predavanja;
                        ?>
 </b><br />
	Sati vježbi: <b><?php 
                        echo $sati_vjezbi;
                        ?>
 </b><br />
	Sati tutorijala: <b><?php 
                        echo $sati_tutorijala;
                        ?>
 </b><br />
	ID: <?php 
                        echo $predmet;
                        ?>
</p>

	<?php 
                        if ($greska == 1) {
                            print "<font color=\"red\">Imate grešaka u definiciji predmeta. Kliknite na dugme <b>Izmijeni</b>.</font>\n";
                        }
                        unset($_REQUEST['akcija']);
                        print "\n\n<p>\n" . genform("GET");
                        ?>
	<input type="hidden" name="akcija" value="realedit">
	<input type="submit" value=" Izmijeni "></form></p>
	<?php 
                        // Omogućujemo popravku ako ne postoji labgrupa "svi studenti"
                        $q356 = myquery("SELECT COUNT(*) FROM labgrupa WHERE predmet={$predmet} AND akademska_godina={$ag} AND virtualna=1");
                        if (mysql_result($q356, 0, 0) == 0) {
                            niceerror("Ne postoji virtualna labgrupa.");
                        }
                        ?>
	<hr>
	<?php 
                        // Nastavni ansambl
                        ?>
<h3>Nastavni ansambl:</h3>
	<ul>
	<?php 
                        $q355 = myquery("select o.id, angs.naziv from angazman as a, osoba as o, angazman_status as angs where a.predmet={$predmet} and a.akademska_godina={$ag} and a.osoba=o.id and a.angazman_status=angs.id order by angs.id, o.prezime");
                        if (mysql_num_rows($q355) < 1) {
                            print "<li>Niko nije angažovan na ovom predmetu</li>\n";
                        }
                        while ($r355 = mysql_fetch_row($q355)) {
                            print "<li><a href=\"?sta=studentska/osobe&akcija=edit&osoba={$r355['0']}\">" . tituliraj($r355[0], false, false, true) . "</a> - {$r355['1']} (<a href=\"?sta=studentska/predmeti&akcija=edit&predmet={$predmet}&ag={$ag}&subakcija=deangazuj&osoba={$r355['0']}\">deangažuj</a>)</li>\n";
                        }
                        print "</ul>\n";
                        // Ponude kursa
                        ?>
<h3>Ponude kursa:</h3>
	<?php 
                        // Forma za upozorenje prilikom brisanja ponudekursa
                        ?>
	<script language="JavaScript">
	function upozorenje2(grupa,broj) {
		var a = confirm("Ovim će sa predmeta biti ispisano "+broj+" studenata, te pobrisani svi ostvareni bodovi i ocjene. Da li ste sigurni?");
		if (a) {
			document.brisanjepkform.pk.value=grupa;
			document.brisanjepkform.submit();
		}
	}
	</script>
	<?php 
                        echo genform("POST", "brisanjepkform");
                        ?>
	<input type="hidden" name="akcija" value="edit">
	<input type="hidden" name="subakcija" value="obrisi_pk">
	<input type="hidden" name="pk" value=""></form>
	<?php 
                        // Evt ispis akademske godine
                        $q359 = myquery("select naziv, aktuelna from akademska_godina where id={$ag}");
                        if (mysql_num_rows($q359) < 1) {
                            zamgerlog("nepostojeca akademska godina {$ag}", 3);
                            zamgerlog2("nepostojeca akademska godina", $ag);
                            niceerror("Nepostojeća akademska godina!");
                            return;
                        }
                        $agnaziv = mysql_result($q359, 0, 0);
                        if (mysql_result($q359, 0, 1) != 1) {
                            print "<p>Akademska godina: <b>{$agnaziv}</b></p>";
                        }
                        $q360 = myquery("select pk.id, s.naziv, pk.semestar, pk.obavezan from ponudakursa as pk, studij as s where pk.predmet={$predmet} and pk.akademska_godina={$ag} and pk.studij=s.id");
                        if (mysql_num_rows($q360) < 1) {
                            ?>
<p><font color="red">Ovaj predmet se trenutno ne nudi nigdje!</font><br/>
		Dodajte ponudu kursa ispod. Dok to ne uradite, predmet neće biti vidljiv, osim kod pretrage ako je izabrana opcija &quot;Sve akademske godine&quot;</p>
		<?php 
                        } else {
                            print "<ul>\n";
                        }
                        while ($r360 = mysql_fetch_row($q360)) {
                            // Broj studenata
                            $q365 = myquery("select count(*) from student_predmet where predmet={$r360['0']}");
                            $brstud = mysql_result($q365, 0, 0);
                            ?>
		<li><?php 
                            echo $r360[1];
                            ?>
, <?php 
                            echo $r360[2];
                            ?>
. semestar <?php 
                            if ($r360[3] < 1) {
                                print "(izborni)";
                            }
                            ?>
 (<a href="javascript:onclick=upozorenje2('<?php 
                            echo $r360[0];
                            ?>
','<?php 
                            echo $brstud;
                            ?>
')">obriši ponudu kursa</a>)</li>
		<?php 
                        }
                        if (mysql_num_rows($q360) > 0) {
                            print "</ul>\n";
                        }
                        ?>
<a href="?sta=studentska/predmeti&predmet=<?php 
                        echo $predmet;
                        ?>
&ag=<?php 
                        echo $ag;
                        ?>
&akcija=dodaj_pk">Dodaj ponudu kursa</a><?php 
                        // Ranije akademske godine
                        $q370 = myquery("select ag.id, ag.naziv from akademska_godina as ag, ponudakursa as pk where pk.predmet={$predmet} and pk.akademska_godina=ag.id and ag.id!={$ag} group by ag.id order by ag.id");
                        if (mysql_num_rows($q370) > 0) {
                            ?>
		<p>Ovaj predmet se držao i sljedećih godina:
		<?php 
                        }
                        while ($r370 = mysql_fetch_row($q370)) {
                            ?>
<a href="?sta=studentska/predmeti&akcija=edit&predmet=<?php 
                            echo $predmet;
                            ?>
&ag=<?php 
                            echo $r370[0];
                            ?>
"><?php 
                            echo $r370[1];
                            ?>
</a> <?php 
                        }
                        if (mysql_num_rows($q370) > 0) {
                            print "</p>\n";
                        }
                        // Prava pristupa na predmetu
                        ?>
	<hr>
	<p>Osobe sa pravima pristupa na predmetu (<?php 
                        echo $agnaziv;
                        ?>
):</p>
	<?php 
                        $q351 = myquery("select np.nastavnik,np.nivo_pristupa,o.ime,o.prezime from osoba as o, nastavnik_predmet as np where np.nastavnik=o.id and np.predmet={$predmet} and np.akademska_godina={$ag} order by np.nivo_pristupa, o.prezime, o.ime");
                        if (mysql_num_rows($q351) < 1) {
                            print "<ul><li>Nijedan nastavnik nema pravo pristupa predmetu.</li></ul>\n";
                        } else {
                            ?>
		<script language="JavaScript">
		function upozorenje(nastavnik) {
			document.izbaciform.nastavnik.value=nastavnik;
			document.izbaciform.submit();
		}
		</script>
		<?php 
                            echo genform("POST", "izbaciform");
                            ?>
		<input type="hidden" name="akcija" value="edit">
		<input type="hidden" name="subakcija" value="izbaci_nastavnika">
		<input type="hidden" name="nastavnik" id="nastavnik" value=""></form>

		<table width="100%" border="1" cellspacing="0"><tr><td>Ime i prezime</td><td>Nivo pristupa</td><td>Ograničenja</td><td>&nbsp;</td></tr><?php 
                        }
                        while ($r351 = mysql_fetch_row($q351)) {
                            $nastavnik = $r351[0];
                            $imeprezime = "{$r351['2']} {$r351['3']}";
                            $nivo_pristupa = $r351[1];
                            if ($nivo_pristupa == 'nastavnik') {
                                $option_nastavnik = "SELECTED";
                                $option_sa = $option_asistent = "";
                            } else {
                                if ($nivo_pristupa == 'super_asistent') {
                                    $option_sa = "SELECTED";
                                    $option_nastavnik = $option_asistent = "";
                                } else {
                                    if ($nivo_pristupa == 'asistent') {
                                        $option_asistent = "SELECTED";
                                        $option_nastavnik = $option_sa = "";
                                    }
                                }
                            }
                            ?>
		<tr>
			<td><a href="?sta=studentska/osobe&akcija=edit&osoba=<?php 
                            echo $nastavnik;
                            ?>
"><?php 
                            echo $imeprezime;
                            ?>
</td>
			<td><?php 
                            echo genform("POST");
                            ?>
				<input type="hidden" name="akcija" value="edit">
				<input type="hidden" name="nastavnik" value="<?php 
                            echo $nastavnik;
                            ?>
">
				<input type="hidden" name="subakcija" value="postavi_nivo_pristupa">
				<select name="nivo_pristupa" class="default">
					<option value="nastavnik" <?php 
                            echo $option_nastavnik;
                            ?>
>Nastavnik</option>
					<option value="super_asistent" <?php 
                            echo $option_sa;
                            ?>
>Super-asistent</option>
					<option value="asistent" <?php 
                            echo $option_asistent;
                            ?>
>Asistent</option>
				</select>
				<input type="submit" class="default" value=" Postavi ">
				</form>
			</td>
			<td><a href="<?php 
                            echo genuri();
                            ?>
&akcija=ogranicenja&nastavnik=<?php 
                            echo $nastavnik;
                            ?>
"><?php 
                            // Spisak grupa na koje ima ogranicenje
                            $q352 = myquery("select l.naziv from ogranicenje as o, labgrupa as l where o.nastavnik={$nastavnik} and o.labgrupa=l.id and l.predmet={$predmet} and l.akademska_godina={$ag}");
                            if (mysql_num_rows($q352) < 1) {
                                print "Nema";
                            }
                            while ($r352 = mysql_fetch_row($q352)) {
                                // Ljudi daju glupa imena grupama...
                                if (!preg_match("/\\w/", $r352[0])) {
                                    $imegrupe = "[Nema imena]";
                                } else {
                                    $imegrupe = substr($r352[0], 0, 15);
                                }
                                print "{$imegrupe}, ";
                            }
                            ?>
</a></td>
			<td><a href="javascript:onclick=upozorenje('<?php 
                            echo $nastavnik;
                            ?>
')">Izbaci</a></td>
		</tr>
		<?php 
                        }
                        if (mysql_num_rows($q351) > 0) {
                            print "</table>\n";
                        }
                        // Dodaj nove nastavnike
                        ?>
<p>Angažman nastavnika na predmetu:
	<?php 
                        echo genform("POST");
                        ?>
	<input type="hidden" name="akcija" value="edit">
	<input type="hidden" name="subakcija" value="dodaj_nastavnika">
	<select name="nastavnik" class="default">'<?php 
                        $q360 = myquery("select o.id, o.prezime, o.ime from osoba as o, privilegije as p where p.osoba=o.id and p.privilegija='nastavnik' order by o.prezime, o.ime");
                        while ($r360 = mysql_fetch_row($q360)) {
                            print "<option value=\"{$r360['0']}\">{$r360['1']} {$r360['2']}</option>\n";
                        }
                        ?>
</select>&nbsp;&nbsp; <input type="submit" value=" Dodaj "></form></p><?php 
                        ?>
</td></tr></table></center><?php 
                        // Vanjska tabela
                    } else {
                        $src = my_escape($_REQUEST["search"]);
                        $limit = 20;
                        $offset = intval($_REQUEST["offset"]);
                        $ak_god = intval($_REQUEST["ag"]);
                        if ($ak_god == 0) {
                            $q299 = myquery("select id from akademska_godina where aktuelna=1 order by naziv desc limit 1");
                            $ak_god = mysql_result($q299, 0, 0);
                        }
                        ?>
	<table width="100%" border="0"><tr><td align="left">
		<p><b>Pretraga</b><br/>
		Za prikaz svih predmeta na akademskoj godini, ostavite polje za pretragu prazno.</br>
		<?php 
                        echo genform("GET");
                        ?>
		<input type="hidden" name="offset" value="0"> <?php 
                        /*resetujem offset*/
                        ?>
		<select name="ag">
			<option value="-1">Sve akademske godine</option>
		<?php 
                        $q295 = myquery("select id,naziv, aktuelna from akademska_godina order by naziv");
                        while ($r295 = mysql_fetch_row($q295)) {
                            ?>
			<option value="<?php 
                            echo $r295[0];
                            ?>
"<?php 
                            if ($r295[0] == $ak_god) {
                                print " selected";
                            }
                            ?>
><?php 
                            echo $r295[1];
                            ?>
</option>
<?php 
                        }
                        ?>
</select><br/>
		<input type="text" size="50" name="search" value="<?php 
                        if ($src != "") {
                            print $src;
                        }
                        ?>
"> <input type="Submit" value=" Pretraži "></form>
		<br/>
	<?php 
                        if ($ak_god >= 0 && $src != "") {
                            $q300 = myquery("select count(distinct pk.predmet) from ponudakursa as pk, predmet as p where pk.akademska_godina={$ak_god} and (p.naziv like '%{$src}%' or p.kratki_naziv like '%{$src}%') and pk.predmet=p.id");
                        } else {
                            if ($ak_god >= 0) {
                                $q300 = myquery("select count(distinct pk.predmet) from ponudakursa as pk where pk.akademska_godina={$ak_god}");
                            } else {
                                if ($src != "") {
                                    $q300 = myquery("select count(*) from predmet as p where (p.naziv like '%{$src}%' or p.kratki_naziv like '%{$src}%')");
                                } else {
                                    $q300 = myquery("select count(*) from predmet as p");
                                }
                            }
                        }
                        $rezultata = mysql_result($q300, 0, 0);
                        if ($rezultata == 0) {
                            print "Nema rezultata!";
                        } else {
                            if ($rezultata > $limit) {
                                print "Prikazujem rezultate " . ($offset + 1) . "-" . ($offset + 20) . " od {$rezultata}. Stranica: ";
                                for ($i = 0; $i < $rezultata; $i += $limit) {
                                    $br = intval($i / $limit) + 1;
                                    if ($i == $offset) {
                                        print "<b>{$br}</b> ";
                                    } else {
                                        print "<a href=\"" . genuri() . "&offset={$i}&_lv_column_akademska_godina={$ak_god}\">{$br}</a> ";
                                    }
                                }
                                print "<br/>";
                            }
                            print "<br/>";
                            if ($ak_god >= 0 && $src != "") {
                                $q301 = myquery("select distinct p.id, p.naziv, i.kratki_naziv, ag.id, ag.naziv from predmet as p, ponudakursa as pk, akademska_godina as ag, institucija as i where pk.akademska_godina=ag.id and ag.id={$ak_god} and (p.naziv like '%{$src}%' or p.kratki_naziv like '%{$src}%') and pk.predmet=p.id and p.institucija=i.id order by ag.naziv desc, p.naziv limit {$offset},{$limit}");
                            } else {
                                if ($ak_god >= 0) {
                                    $q301 = myquery("select distinct p.id, p.naziv, i.kratki_naziv, ag.id, ag.naziv from predmet as p, ponudakursa as pk, akademska_godina as ag, institucija as i where pk.akademska_godina=ag.id and ag.id={$ak_god} and pk.predmet=p.id and p.institucija=i.id order by ag.naziv desc, p.naziv limit {$offset},{$limit}");
                                } else {
                                    if ($src != "") {
                                        $q301 = myquery("select distinct p.id, p.naziv, i.kratki_naziv, 1 from predmet as p, institucija as i where (p.naziv like '%{$src}%' or p.kratki_naziv like '%{$src}%') and p.institucija=i.id order by p.naziv limit {$offset},{$limit}");
                                    } else {
                                        $q301 = myquery("select distinct p.id, p.naziv, i.kratki_naziv, 1 from predmet as p, institucija as i where p.institucija=i.id order by p.naziv limit {$offset},{$limit}");
                                    }
                                }
                            }
                            print '<table width="100%" border="0">';
                            $i = $offset + 1;
                            while ($r301 = mysql_fetch_row($q301)) {
                                print "<tr><td>{$i}. {$r301['1']} ({$r301['2']})</td>\n";
                                print "<td><a href=\"" . genuri() . "&akcija=edit&predmet={$r301['0']}&ag={$r301['3']}\">Detalji</a></td>\n";
                                if ($user_siteadmin) {
                                    print "<td><a href=\"?sta=nastavnik/predmet&predmet={$r301['0']}&ag={$r301['3']}\">Uređivanje predmeta</a></td></tr>";
                                }
                                $i++;
                            }
                            print "</table>";
                        }
                        ?>
		<br/>
		<?php 
                        echo genform("POST");
                        ?>
		<input type="hidden" name="akcija" value="novi">
		<b>Novi predmet:</b><br/>
		<input type="text" name="naziv" size="50"> <input type="submit" value=" Dodaj ">
		</form>
	</table>
	<?php 
                    }
                }
            }
        }
    }
    ?>
</td></tr></table></center>
<?php 
}
Exemplo n.º 6
0
function akcijaslanje()
{
    global $userid, $conf_files_path;
    require "lib/manip.php";
    // update komponente nakon slanja
    // Parametri
    $predmet = intval($_REQUEST['predmet']);
    $ag = intval($_REQUEST['ag']);
    $zadaca = intval($_POST['zadaca']);
    $zadatak = intval($_POST['zadatak']);
    $program = $_POST['program'];
    $povratak_url = "?sta=student/zadaca&predmet={$predmet}&ag={$ag}&zadaca={$zadaca}&zadatak={$zadatak}";
    $povratak_html = "<a href=\"{$povratak_url}\">Nastavak</a>";
    $povratak_js = "<script>window.onload = function() { setTimeout('redirekcija()', 3000); }\nfunction redirekcija() { window.location='{$povratak_url}'; } </script>\n";
    // Da li student slusa predmet?
    $q195 = myquery("select sp.predmet from student_predmet as sp, ponudakursa as pk where sp.student={$userid} and sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag}");
    if (mysql_num_rows($q195) < 1) {
        biguglyeerror("Ova zadaća nije iz vašeg predmeta");
        return;
    }
    $ponudakursa = mysql_result($q195, 0, 0);
    // Standardna lokacija zadaca
    $lokacijazadaca = "{$conf_files_path}/zadace/{$predmet}-{$ag}/{$userid}/";
    if (!file_exists("{$conf_files_path}/zadace/{$predmet}-{$ag}")) {
        mkdir("{$conf_files_path}/zadace/{$predmet}-{$ag}", 0777, true);
    }
    // Da li neko pokušava da spoofa zadaću?
    $q200 = myquery("SELECT count(*) FROM zadaca as z, student_predmet as sp, ponudakursa as pk\n\tWHERE sp.student={$userid} and sp.predmet=pk.id and pk.predmet=z.predmet and pk.akademska_godina=z.akademska_godina and z.id={$zadaca}");
    if (mysql_result($q200, 0, 0) == 0) {
        biguglyeerror("Ova zadaća nije iz vašeg predmeta");
        return;
    }
    // Ovo je potrebno radi pravljenja diff-a
    if (get_magic_quotes_gpc()) {
        $program = stripslashes($program);
    }
    // Podaci o zadaći
    $q210 = myquery("select programskijezik, UNIX_TIMESTAMP(rok), attachment, naziv, komponenta, dozvoljene_ekstenzije, automatsko_testiranje from zadaca where id={$zadaca}");
    $jezik = mysql_result($q210, 0, 0);
    $rok = mysql_result($q210, 0, 1);
    $attach = mysql_result($q210, 0, 2);
    $naziv_zadace = mysql_result($q210, 0, 3);
    $komponenta = mysql_result($q210, 0, 4);
    $zadaca_dozvoljene_ekstenzije = mysql_result($q210, 0, 5);
    $automatsko_testiranje = mysql_result($q210, 0, 6);
    // Ako je aktivno automatsko testiranje, postavi status na 1 (automatska kontrola), inace na 4 (ceka pregled)
    if ($automatsko_testiranje == 1) {
        $prvi_status = 1;
    } else {
        $prvi_status = 4;
    }
    // Provjera roka
    if ($rok <= time()) {
        niceerror("Vrijeme za slanje zadaće je isteklo!");
        zamgerlog("isteklo vrijeme za slanje zadaće z{$zadaca}", 3);
        // nivo 3 - greska
        zamgerlog2("isteklo vrijeme za slanje zadace", $zadaca);
        // nivo 3 - greska
        print $povratak_html;
        return;
    }
    // Prepisane zadaće se ne mogu ponovo slati
    $q240 = myquery("select status from zadatak where zadaca={$zadaca} and redni_broj={$zadatak} and student={$userid} order by id desc limit 1");
    if (mysql_num_rows($q240) > 0 && mysql_result($q240, 0, 0) == 2) {
        // status = 2 - prepisana zadaća
        niceerror("Zadaća je prepisana i ne može se ponovo poslati.");
        print $povratak_html;
        return;
    }
    // Pravimo potrebne puteve
    if (!file_exists($lokacijazadaca)) {
        mkdir($lokacijazadaca, 0777);
    }
    if ($zadaca > 0 && !file_exists("{$lokacijazadaca}{$zadaca}")) {
        mkdir("{$lokacijazadaca}{$zadaca}", 0777);
    }
    // Temp fajl radi određivanja diff-a
    if (file_exists("{$lokacijazadaca}{$zadaca}/difftemp")) {
        unlink("{$lokacijazadaca}{$zadaca}/difftemp");
    }
    // Vrsta zadaće: textarea ili attachment
    if ($attach == 0) {
        // textarea
        if (!check_csrf_token()) {
            niceerror("Forma za slanje zadaće je istekla.");
            print "<p>Kada otvorite prozor za unos zadaće, imate određeno vrijeme (npr. 15 minuta) da pošaljete zadaću, u suprotnom zahtjev neće biti prihvaćen iz sigurnosnih razloga. Preporučujemo da zadaću ne radite direktno u prozoru za slanje zadaće nego u nekom drugom programu (npr. CodeBlocks) iz kojeg kopirate u Zamger.</p>";
            print $povratak_html;
            return;
        }
        // Određivanje ekstenzije iz jezika
        $q220 = myquery("select ekstenzija from programskijezik where id={$jezik}");
        $ekst = mysql_result($q220, 0, 0);
        $filename = "{$lokacijazadaca}{$zadaca}/{$zadatak}{$ekst}";
        // Kreiranje datoteke
        if (strlen($program) <= 10) {
            niceerror("Pokušali ste poslati praznu zadaću!");
            print "<p>Vjerovatno ste zaboravili kopirati kod u prozor za slanje.</p>";
            zamgerlog("poslao praznu zadacu z{$zadaca} zadatak {$zadatak}", 3);
            // nivo 3 - greska
            zamgerlog2("poslao praznu zadacu", $zadaca, $zadatak);
            // nivo 3 - greska
            print $povratak_html;
            return;
        } else {
            if ($zadaca > 0 && $zadatak > 0) {
                // Pravimo backup fajla za potrebe računanja diff-a
                $postoji_prosla_verzija = false;
                if (file_exists($filename)) {
                    rename($filename, "{$lokacijazadaca}{$zadaca}/difftemp");
                    $postoji_prosla_verzija = true;
                }
                $f = fopen($filename, 'w');
                if (!$f) {
                    niceerror("Greška pri pisanju fajla za zadaću.");
                    zamgerlog("greska pri pisanju zadace z{$zadaca} zadatak {$zadatak}", 3);
                    // nivo 3 - greska
                    zamgerlog2("greska pri pisanju zadace", $zadaca, $zadatak);
                    // nivo 3 - greska
                    if ($postoji_prosla_verzija) {
                        rename("{$lokacijazadaca}{$zadaca}/difftemp", $filename);
                    }
                    print $povratak_html;
                    return;
                }
                fwrite($f, $program);
                fclose($f);
                // Tabela "zadatak" funkcioniše kao log događaja u
                // koji se stvari samo dodaju
                $q230 = myquery("insert into zadatak set zadaca={$zadaca}, redni_broj={$zadatak}, student={$userid}, status={$prvi_status}, vrijeme=now(), filename='{$zadatak}{$ekst}', userid={$userid}");
                $id_zadatka = mysql_insert_id();
                // Pravljenje diffa
                if ($postoji_prosla_verzija) {
                    $diff = `/usr/bin/diff -u {$lokacijazadaca}{$zadaca}/difftemp {$filename}`;
                    $diff = my_escape($diff);
                    if (strlen($diff) > 1) {
                        $q250 = myquery("insert into zadatakdiff set zadatak={$id_zadatka}, diff='{$diff}'");
                    }
                    unlink("{$lokacijazadaca}{$zadaca}/difftemp");
                }
                nicemessage($naziv_zadace . "/Zadatak " . $zadatak . " uspješno poslan!");
                update_komponente($userid, $ponudakursa);
                zamgerlog("poslana zadaca z{$zadaca} zadatak {$zadatak}", 2);
                // nivo 2 - edit
                zamgerlog2("poslana zadaca (textarea)", $zadaca, $zadatak);
                // nivo 2 - edit
                print $povratak_html;
                print $povratak_js;
                return;
            } else {
                zamgerlog("greska pri slanju zadace (zadaca z{$zadaca} zadatak {$zadatak} filename {$filename})", 3);
                zamgerlog2("greska pri slanju zadace (textarea)", $zadaca, $zadatak);
                // nivo 2 - edit
                niceerror("Greška pri slanju zadaće. Kontaktirajte tutora.");
                print $povratak_html;
                return;
            }
        }
    } else {
        // if ($attach==0)...
        $program = $_FILES['attachment']['tmp_name'];
        if ($program && file_exists($program) && $_FILES['attachment']['error'] === UPLOAD_ERR_OK) {
            $ime_fajla = strip_tags(basename($_FILES['attachment']['name']));
            // Ukidam HTML znakove radi potencijalnog XSSa
            $ime_fajla = str_replace("&", "", $ime_fajla);
            $ime_fajla = str_replace("\"", "", $ime_fajla);
            $puni_put = "{$lokacijazadaca}{$zadaca}/{$ime_fajla}";
            // Provjeravamo da li je ekstenzija na spisku dozvoljenih
            $ext = "." . pathinfo($ime_fajla, PATHINFO_EXTENSION);
            // FIXME: postojeći kod očekuje da ekstenzije počinju tačkom...
            $db_doz_eks = explode(',', $zadaca_dozvoljene_ekstenzije);
            if ($zadaca_dozvoljene_ekstenzije != "" && !in_array($ext, $db_doz_eks)) {
                niceerror("Tip datoteke koju ste poslali nije dozvoljen.");
                print "<p>Na ovoj zadaći dozvoljeno je slati samo datoteke jednog od sljedećih tipova: <b>{$zadaca_dozvoljene_ekstenzije}</b>.<br>\n\t\t\t\tVi ste poslali datoteku tipa: <b>{$ext}</b>.</p>";
                zamgerlog("pogresan tip datoteke (z{$zadaca})", 3);
                zamgerlog2("pogresan tip datoteke", $zadaca);
                print $povratak_html;
                return;
            }
            // Diffing
            $diff = "";
            $q255 = myquery("SELECT filename FROM zadatak WHERE zadaca={$zadaca} AND redni_broj={$zadatak} AND student={$userid} ORDER BY id DESC LIMIT 1");
            if (mysql_num_rows($q255) > 0) {
                $stari_filename = "{$lokacijazadaca}{$zadaca}/" . mysql_result($q255, 0, 0);
                // Podržavamo diffing ako je i stara i nova ekstenzija ZIP (TODO ostale vrste arhiva)
                if (ends_with($stari_filename, ".zip") && ends_with($puni_put, ".zip")) {
                    // Pripremamo temp dir
                    $zippath = "/tmp/difftemp";
                    if (!file_exists($zippath)) {
                        mkdir($zippath, 0777, true);
                    } else {
                        if (!is_dir($zippath)) {
                            unlink($zippath);
                            mkdir($zippath);
                        } else {
                            rmMinusR($zippath);
                        }
                    }
                    $oldpath = "{$zippath}/old";
                    $newpath = "{$zippath}/new";
                    mkdir($oldpath);
                    mkdir($newpath);
                    `unzip -j "{$stari_filename}" -d {$oldpath}`;
                    `unzip -j "{$program}" -d {$newpath}`;
                    $diff = `/usr/bin/diff -ur {$oldpath} {$newpath}`;
                    $diff = clear_unicode(my_escape($diff));
                }
            }
            if (file_exists($puni_put)) {
                unlink($puni_put);
            }
            rename($program, $puni_put);
            chmod($puni_put, 0640);
            // Escaping za SQL
            $ime_fajla = my_escape($ime_fajla);
            $q260 = myquery("insert into zadatak set zadaca={$zadaca}, redni_broj={$zadatak}, student={$userid}, status={$prvi_status}, vrijeme=now(), filename='{$ime_fajla}', userid={$userid}");
            $id_zadatka = mysql_insert_id();
            if (strlen($diff) > 1) {
                $q270 = myquery("insert into zadatakdiff set zadatak={$id_zadatka}, diff='{$diff}'");
            }
            nicemessage("Z" . $naziv_zadace . "/" . $zadatak . " uspješno poslan!");
            update_komponente($userid, $ponudakursa, $komponenta);
            zamgerlog("poslana zadaca z{$zadaca} zadatak {$zadatak} (attachment)", 2);
            // nivo 2 - edit
            zamgerlog2("poslana zadaca (attachment)", $zadaca, $zadatak);
            print $povratak_html;
            print $povratak_js;
            return;
        } else {
            switch ($_FILES['attachment']['error']) {
                case UPLOAD_ERR_OK:
                    $greska = "Poslali ste praznu ili nepostojeću datoteku.";
                    break;
                case UPLOAD_ERR_INI_SIZE:
                    $greska = "Poslana datoteka je veća od dozvoljene. Trenutno maksimalna dozvoljena veličina je " . ini_get('upload_max_filesize');
                    break;
                case UPLOAD_ERR_FORM_SIZE:
                    $greska = "Poslana datoteka je veća od dozvoljene.";
                    // jednom ćemo omogućiti nastavniku da ograniči veličinu kroz formu
                    break;
                case UPLOAD_ERR_PARTIAL:
                    $greska = "Slanje datoteke je prekinuto, vjerovatno zbog problema sa vašom konekcijom. Molimo pokušajte ponovo.";
                    break;
                case UPLOAD_ERR_NO_FILE:
                    $greska = "Poslali ste praznu ili nepostojeću datoteku.";
                    break;
                case UPLOAD_ERR_NO_TMP_DIR:
                    $greska = "1 Greška u konfiguraciji Zamgera: nepostojeći TMP direktorij.";
                    break;
                case UPLOAD_ERR_CANT_WRITE:
                    $greska = "2 Greška u konfiguraciji Zamgera: nemoguće pisati u TMP direktorij.";
                    break;
                case UPLOAD_ERR_EXTENSION:
                    $greska = "3 Greška u konfiguraciji Zamgera: neka ekstenzija sprječava upload.";
                    break;
                default:
                    $greska = "Nepoznata greška u slanju datoteke. Kod: " . $_FILES['attachment']['error'];
            }
            zamgerlog("greska kod attachmenta (z{$zadaca}): {$greska}", 3);
            zamgerlog2("greska pri slanju zadace (attachment)", $zadaca, $zadatak, 0, $greska);
            niceerror("{$greska}");
            print $povratak_html;
            return;
        }
    }
}
Exemplo n.º 7
0
function nastavnik_obavjestenja()
{
    global $userid, $user_siteadmin, $conf_ldap_domain;
    // 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);
    // Da li korisnik ima pravo ući u modul?
    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 || mysql_result($q10, 0, 0) == "asistent") {
            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;
    ?>
 - Obavještenja za studente</h3></p>

<script language="JavaScript">
function upozorenje(obavjest) {
	var a = confirm("Želite li obrisati ovo obavještenje? Ako ste odabrali opciju Slanje maila, ne možete poništiti njen efekat!");
	if (a) {
		document.brisanjeobavjestenja.obavjestenje.value=obavjest;
		document.brisanjeobavjestenja.submit();
	}
}
</script>
<?php 
    echo genform("POST", "brisanjeobavjestenja");
    ?>
<input type="hidden" name="akcija" value="obrisi_obavjestenje">
<input type="hidden" name="obavjestenje" value=""></form>

<?php 
    // 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 - korisnik (primalac - user id)
    // Parametri
    $naslov = $tekst = "";
    $citava = intval($_REQUEST['citava']);
    $izmijeni = intval($_REQUEST['izmijeni']);
    // Brisanje obavjestenja
    if ($_POST['akcija'] == "obrisi_obavjestenje" && check_csrf_token()) {
        $obavjestenje = intval($_POST['obavjestenje']);
        // Provjera predmeta
        $q15 = myquery("select primalac, opseg from poruka where id={$obavjestenje}");
        if (mysql_num_rows($q15) < 1) {
            zamgerlog("poruka {$obavjestenje} ne postoji", 3);
            zamgerlog2("nepostojeca poruka", $obavjestenje);
            nicemessage("Pogrešan ID poruke! Poruka nije obrisana");
        } else {
            // Provjeravamo prava za brisanje
            $primalac = mysql_result($q15, 0, 0);
            $opseg = mysql_result($q15, 0, 1);
            if ($opseg == 5 && $primalac != $predmet) {
                zamgerlog("poruka {$obavjestenje} nije za predmet pp{$predmet} nego pp{$primalac}", 3);
                zamgerlog2("primalac poruke ne odgovara predmetu", $obavjestenje, $predmet, $ag);
                nicemessage("Pogrešan ID poruke! Poruka nije obrisana");
                return;
            } else {
                if ($opseg == 6) {
                    $q17 = myquery("select predmet, akademska_godina from labgrupa where id={$primalac}");
                    if (mysql_result($q17, 0, 0) != $predmet || mysql_result($q17, 0, 1) != $ag) {
                        zamgerlog("poruka {$obavjestenje} je za labgrupu {$primalac} koja nije sa pp{$predmet}", 3);
                        zamgerlog2("primalac poruke ne odgovara labgrupi", $obavjestenje, $predmet, $ag);
                        nicemessage("Pogrešan ID poruke! Poruka nije obrisana");
                        return;
                    }
                }
            }
            $q20 = myquery("delete from poruka where id={$obavjestenje}");
            zamgerlog("obrisano obavjestenje (id {$obavjestenje} )", 2);
            zamgerlog2("obrisana poruka", $obavjestenje);
        }
    }
    // Novo obavještenje / izmjena obavještenja
    if ($_POST['akcija'] == 'novo' && check_csrf_token()) {
        $naslov = my_escape($_REQUEST['naslov']);
        $tekst = my_escape($_REQUEST['tekst']);
        $primalac = intval($_REQUEST['primalac']);
        if ($_REQUEST['email']) {
            $email = 1;
        } else {
            $email = 0;
        }
        $io = intval($_REQUEST['izmjena_obavjestenja']);
        if (strlen($naslov) < 5) {
            zamgerlog("tekst vijesti je prekratak ({$naslov})", 3);
            zamgerlog2("tekst poruke je prekratak", 0, 0, 0, $naslov);
            niceerror("Tekst vijesti je prekratak");
        } else {
            if ($io > 0) {
                $q6 = myquery("update poruka set tip=1, opseg=5, primalac={$predmet}, posiljalac={$userid}, ref=0, naslov='{$naslov}', tekst='{$tekst}' where id={$io}");
                zamgerlog("izmjena obavjestenja (id {$io})", 2);
                zamgerlog2("poruka izmijenjena", $io);
            } else {
                if ($primalac > 0) {
                    $q6 = myquery("insert into poruka set tip=1, opseg=6, primalac={$primalac}, posiljalac={$userid}, vrijeme=NOW(), ref=0, naslov='{$naslov}', tekst='{$tekst}'");
                    $io = mysql_insert_id();
                    // Upit za spisak studenata u grupi
                    $upit = "select o.id, o.ime, o.prezime from osoba as o, student_labgrupa as sl where sl.labgrupa={$primalac} and sl.student=o.id";
                } else {
                    $q6 = myquery("insert into poruka set tip=1, opseg=5, primalac={$predmet}, posiljalac={$userid}, vrijeme=NOW(), ref=0, naslov='{$naslov}', tekst='{$tekst}'");
                    $io = mysql_insert_id();
                    // Upit za spisak studenata na predmetu
                    $upit = "select o.id, o.ime, o.prezime from osoba as o, student_predmet as sp, ponudakursa as pk where sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag} and sp.student=o.id";
                }
                // Šaljem mail studentima
                if ($email == 1) {
                    // Podaci za konverziju naših slova
                    $nasaslova = array("č", "ć", "đ", "š", "ž", "Č", "Ć", "Đ", "Š", "Ž");
                    $beznasihslova = array("c", "c", "d", "s", "z", "C", "C", "D", "S", "Z");
                    // Subject email poruke
                    $subject = "OBAVJEŠTENJE: {$predmet_naziv}";
                    if ($primalac > 0) {
                        $q8 = myquery("select naziv from labgrupa where id={$primalac}");
                        $subject .= " (" . mysql_result($q8, 0, 0) . ")";
                    }
                    $subject = iconv("UTF-8", "ISO-8859-2", $subject);
                    // neki mail klijenti ne znaju prikazati utf-8 u subjektu
                    $preferences = array("input-charset" => "ISO-8859-2", "output-charset" => "ISO-8859-2", "line-length" => 76, "line-break-chars" => "\n");
                    $preferences["scheme"] = "Q";
                    // quoted-printable
                    $subject = iconv_mime_encode("", $subject, $preferences);
                    // Vraćamo naslov i tekst obavještenja koji su ranije escapovani
                    // mail() nema poznatih eksploita po tom pitanju
                    $naslov = $_REQUEST['naslov'];
                    $tekst = $_REQUEST['tekst'];
                    $mail_body = "\n=== OBAVJEŠTENJE ZA STUDENTE ===\n\nNastavnik ili saradnik na predmetu {$predmet_naziv} poslao vam je sljedeće obavještenje:\n\n{$naslov}\n\n{$tekst}";
                    // Podaci za from polje
                    $q9 = myquery("select o.ime, o.prezime from osoba as o where o.id={$userid}");
                    $from = mysql_result($q9, 0, 0) . " " . mysql_result($q9, 0, 1);
                    $from = str_replace($nasaslova, $beznasihslova, $from);
                    $q9a = myquery("SELECT adresa FROM email WHERE osoba={$userid} ORDER BY sistemska DESC, id");
                    if (mysql_num_rows($q9a) < 1) {
                        niceerror("Ne možemo poslati mail jer nemate definisanu adresu.");
                        print "Da bi se mail mogao poslati, mora biti definisana odlazna adresa (adresa pošiljaoca). Molimo vas da u vašem <a href=\"?sta=common/profil\">profilu</a> podesite vašu e-mail adresu.";
                        return 0;
                    }
                    $from .= " <" . mysql_result($q9a, 0, 0) . ">";
                    $add_header = "From: {$from}\r\nContent-Type: text/plain; charset=utf-8\r\n";
                    $broj = 0;
                    $q7 = myquery($upit);
                    while ($r7 = mysql_fetch_row($q7)) {
                        $student_id = $r7[0];
                        $student_ime_prezime = str_replace($nasaslova, $beznasihslova, "{$r7['1']} {$r7['2']}");
                        // Određujemo email adrese studenta
                        $q9b = myquery("SELECT adresa FROM email WHERE osoba={$student_id} ORDER BY sistemska DESC, id");
                        $mail_to = "";
                        $mail_cc = "";
                        // Prvu adresu stavljamo u To: a sve ostale u Cc: kako bi mail server otkrio eventualne aliase
                        while ($r9b = mysql_fetch_row($q9b)) {
                            if ($mail_to == "") {
                                $mail_to = $r9b[0];
                            }
                            $mail_cc .= "{$student_ime_prezime} <{$r9b['0']}>; ";
                        }
                        if ($mail_to != "") {
                            // Da li student ima ijednu adresu?
                            mail($mail_to, $subject, $mail_body, "{$add_header}" . "Cc: {$mail_cc}");
                            nicemessage("Mail poslan za {$student_ime_prezime} &lt;{$mail_to}&gt;");
                        }
                    }
                }
                // if ($email==1)...
                zamgerlog("novo obavjestenje (predmet pp{$predmet})", 2);
                zamgerlog2("nova poruka poslana", $io);
            }
            $naslov = $tekst = "";
        }
    }
    // Stara obavjestenja
    // Obavjestenja od proslih akademskih godina nisu relevantna:
    $q5 = myquery("select naziv from akademska_godina where id={$ag}");
    $manjidatum = intval(mysql_result($q5, 0, 0)) . "-09-01";
    $vecidatum = intval(mysql_result($q5, 0, 0) + 1) . "-10-01";
    $q10 = myquery("select distinct p.id, UNIX_TIMESTAMP(p.vrijeme), p.naslov, p.tekst, p.opseg, p.primalac from poruka as p, labgrupa as l where p.tip=1 and (p.opseg=5 and p.primalac={$predmet} and p.vrijeme>'{$manjidatum}' and p.vrijeme<'{$vecidatum}' or p.opseg=6 and p.primalac=l.id and l.predmet={$predmet} and l.akademska_godina={$ag}) order by vrijeme");
    if (mysql_num_rows($q10) > 0) {
        print "<p>Do sada unesena obavještenja:</p>\n<ul>\n";
    } else {
        print "<p>Do sada niste unijeli nijedno obavještenje.</p>";
    }
    while ($r10 = mysql_fetch_row($q10)) {
        if ($obrisi == $r10[0]) {
            $q20 = myquery("delete from poruka where id={$obrisi}");
            zamgerlog("obrisano obavjestenje (id {$obrisi})", 2);
            zamgerlog2("obrisana poruka", $obrisi);
            continue;
        }
        print "<li><b>(" . date("d.m.Y", $r10[1]) . ")</b> " . $r10[2];
        $tekst_poruke = str_replace("\n", "<br/>", $r10[3]);
        if (strlen($tekst_poruke) > 0) {
            if ($citava == $r10[0]) {
                print "<br/><br/>" . $tekst_poruke;
            } else {
                print " (<a href=\"?sta=nastavnik/obavjestenja&predmet={$predmet}&ag={$ag}&citava={$r10['0']}\">Dalje...</a>)";
            }
        }
        if ($izmijeni == $r10[0]) {
            $naslov = $r10[2];
            $tekst = $r10[3];
            if ($r10[4] == 5) {
                $labgrupa = 0;
            } else {
                $labgrupa = $r10[5];
            }
        }
        print "<br/> <a href=\"?sta=nastavnik/obavjestenja&predmet={$predmet}&ag={$ag}&izmijeni={$r10['0']}\">[Izmijeni]</a> <a href=\"javascript:onclick=upozorenje('{$r10['0']}')\">[Obriši]</a></li>\n";
    }
    if (mysql_num_rows($q10) > 0) {
        print "</ul>\n";
    }
    // Formular za novo obavještenje
    ?>
<hr>
<?php 
    echo genform("POST");
    ?>
<input type="hidden" name="akcija" value="novo">
<?php 
    if ($izmijeni > 0) {
        ?>
<input type="hidden" name="izmjena_obavjestenja" value="<?php 
        echo $izmijeni;
        ?>
">
<p><b>Izmjena postojećeg obavještenja</b></p>
<?php 
    } else {
        ?>
<input type="hidden" name="izmjena_obavjestenja" value="0">
<p><b>Unos novog obavještenja</b></p>
<?php 
    }
    ?>
<p>Obavještenje za: <select name="primalac" class="default"><option value="0">Sve studente</option>
<?php 
    $q20 = myquery("select id,naziv from labgrupa where predmet={$predmet} and akademska_godina={$ag} order by naziv");
    while ($r20 = mysql_fetch_row($q20)) {
        if ($r20[0] == $labgrupa) {
            $sel = "SELECTED";
        } else {
            $sel = "";
        }
        ?>
<option value="<?php 
        echo $r20[0];
        ?>
" <?php 
        echo $sel;
        ?>
><?php 
        echo $r20[1];
        ?>
</option>
	<?php 
    }
    ?>
</select>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="checkbox" name="email" value="1"> Slanje e-maila
</p>
<p>Kraći tekst (2-3 rečenice):<br/>
<textarea  rows="5" cols="80" name="naslov"><?php 
    echo $naslov;
    ?>
</textarea>
<br/><br/>
Detaljan tekst (nije obavezan):<br/>
<textarea  rows="20" cols="80" name="tekst"><?php 
    echo $tekst;
    ?>
</textarea>
<br/><br/>
<input type="submit" value=" Pošalji ">  <input type="reset" value=" Poništi ">
</p></form>

<?php 
}
Exemplo n.º 8
0
function autotest_admin($zadaca, $linkPrefix, $backLink)
{
    if ($_REQUEST['subakcija'] == "promijeni_uslov") {
        $id = intval($_REQUEST['id']);
        $zadatak = intval($_REQUEST['zadatak']);
        $q300 = myquery("SELECT specifikacija FROM autotest_replace WHERE zadaca={$zadaca} AND zadatak={$zadatak} AND tip='funkcija' AND zamijeni='' AND id={$id}");
        if (mysql_num_rows($q300) < 1) {
            niceerror("Nepostojeći uslov");
            zamgerlog("spoofing uslovne funkcije {$id}", 3);
            zamgerlog2("spoofing uslovne funkcije", $id);
            return 0;
        }
        if ($_POST['subakcija'] == "promijeni_uslov" && check_csrf_token()) {
            $specifikacija = my_escape($_REQUEST['specifikacija']);
            $q310 = myquery("UPDATE autotest_replace SET specifikacija='{$specifikacija}' WHERE id={$id}");
            nicemessage("Izmijenjen uslov za autotest");
            zamgerlog("izmijenjen uslov {$id} za autotest (zadaca z{$zadaca})", 2);
            zamgerlog2("izmijenjen uslov za autotest", $id);
            print "<a href=\"{$linkPrefix}\">Nazad</a>\n";
            return 0;
        }
        print genform("POST");
        ?>
		<b>Izmjena prototipa funkcije koja mora postojati u zadatku:</b><br>
		<input type="text" name="specifikacija" size="50" value="<?php 
        echo mysql_result($q300, 0, 0);
        ?>
"><br>
		<input type="submit" value="Izmijeni">
		<input type="button" value="Nazad" onclick="javascript:history.go(-1);">
		</form>
		<?php 
        return 0;
    }
    if ($_REQUEST['subakcija'] == "obrisi_uslov") {
        $id = intval($_REQUEST['id']);
        $zadatak = intval($_REQUEST['zadatak']);
        $q300 = myquery("SELECT specifikacija FROM autotest_replace WHERE zadaca={$zadaca} AND zadatak={$zadatak} AND tip='funkcija' AND zamijeni='' AND id={$id}");
        if (mysql_num_rows($q300) < 1) {
            niceerror("Nepostojeći uslov");
            zamgerlog("spoofing uslovne funkcije {$id}", 3);
            zamgerlog2("spoofing uslovne funkcije", $id);
            return 0;
        }
        if ($_POST['subakcija'] == "obrisi_uslov" && check_csrf_token()) {
            $q320 = myquery("DELETE FROM autotest_replace WHERE id={$id}");
            nicemessage("Obrisan uslov za autotest");
            zamgerlog("obrisan uslov {$id} za autotest (zadaca z{$zadaca})", 2);
            zamgerlog2("obrisan uslov za autotest", $id);
            print "<a href=\"{$linkPrefix}\">Nazad</a>\n";
            return 0;
        }
        print genform("POST");
        ?>
		<b>Da li ste sigurni da želite obrisati obavezni prototip &quot;<?php 
        echo mysql_result($q300, 0, 0);
        ?>
&quot; ?</b><br>
		<input type="submit" value="Da">
		<input type="button" value="Ne" onclick="javascript:history.go(-1);">
		</form>
		<?php 
        return 0;
    }
    if ($_REQUEST['subakcija'] == "dodaj_uslov") {
        $zadatak = intval($_REQUEST['zadatak']);
        if ($_POST['subakcija'] == "dodaj_uslov" && check_csrf_token()) {
            $specifikacija = my_escape($_REQUEST['specifikacija']);
            $q330 = myquery("INSERT INTO autotest_replace SET zadaca={$zadaca}, zadatak={$zadatak}, tip='funkcija', zamijeni='', specifikacija='{$specifikacija}'");
            nicemessage("Dodan uslov za autotest");
            $id = mysql_insert_id();
            zamgerlog("dodan uslov {$id} za autotest (zadaca z{$zadaca})", 2);
            zamgerlog2("dodan uslov za autotest", $id);
            print "<a href=\"{$linkPrefix}\">Nazad</a>\n";
            return 0;
        }
        print genform("POST");
        ?>
		<b>Unesite prototip funkcije koja mora postojati u zadatku:</b><br>
		<input type="text" name="specifikacija" size="50" value=""><br>
		<input type="submit" value="Dodaj">
		<input type="button" value="Nazad" onclick="javascript:history.go(-1);">
		</form>
		<?php 
        return 0;
    }
    if ($_REQUEST['subakcija'] == "promijeni_at") {
        $id = intval($_REQUEST['id']);
        $zadatak = intval($_REQUEST['zadatak']);
        $q340 = myquery("SELECT kod, rezultat, alt_rezultat, fuzzy, global_scope, stdin, partial_match, aktivan, sakriven FROM autotest WHERE zadaca={$zadaca} AND zadatak={$zadatak} AND id={$id}");
        if (mysql_num_rows($q340) < 1) {
            niceerror("Nepostojeći autotest");
            zamgerlog("spoofing autotesta {$id}", 3);
            zamgerlog2("spoofing autotesta", $id);
            return 0;
        }
        if ($_POST['subakcija'] == "promijeni_at" && check_csrf_token()) {
            // Ne možemo koristiti my_escape jer htmlspecialchars zezne znakove < > (između ostalog)
            $kod = mysql_real_escape_string($_REQUEST['kod']);
            $rezultat = mysql_real_escape_string($_REQUEST['rezultat']);
            $alt_rezultat = mysql_real_escape_string($_REQUEST['alt_rezultat']);
            $fuzzy = intval($_REQUEST['fuzzy']);
            $global_scope = mysql_real_escape_string($_REQUEST['global_scope']);
            $stdin = mysql_real_escape_string($_REQUEST['stdin']);
            $stdin = str_replace("\\n", "\n", $stdin);
            $partial_match = intval($_REQUEST['partial_match']);
            $aktivan = intval($_REQUEST['aktivan']);
            $sakriven = intval($_REQUEST['sakriven']);
            if ($sakriven == 0) {
                $sakriven = 1;
            } else {
                $sakriven = 0;
            }
            $q350 = myquery("UPDATE autotest SET kod='{$kod}', rezultat='{$rezultat}', alt_rezultat='{$alt_rezultat}', fuzzy={$fuzzy}, global_scope='{$global_scope}', stdin='{$stdin}', partial_match='{$partial_match}', aktivan={$aktivan}, sakriven={$sakriven} WHERE id={$id}");
            nicemessage("Izmijenjen autotest");
            zamgerlog("izmijenjen autotest {$id} (zadaca z{$zadaca})", 2);
            zamgerlog2("izmijenjen autotest", $id);
            print "<a href=\"{$linkPrefix}\">Nazad</a>\n";
            return 0;
        }
        print genform("POST");
        // Pošto nije pozvan htmlspecialchars prilikom ubacivanja u bazu, moramo ga pozvati sada (prilikom prikaza)
        $stdin = htmlspecialchars(mysql_result($q340, 0, 5));
        $stdin = str_replace("\n", "\\n", $stdin);
        ?>
		<b>Izmjena autotesta:</b><br><br>
		Kod testa:<br><textarea name="kod" rows="10" cols="50"><?php 
        echo htmlspecialchars(mysql_result($q340, 0, 0));
        ?>
</textarea><br>
		Standardni ulaz: <input type="text" name="stdin" size="50" value="<?php 
        echo $stdin;
        ?>
"><br><br>
		(Koristite \n da označite ENTER tipku)<br><br>
		Rezultat: <input type="text" name="rezultat" size="50" value="<?php 
        echo htmlspecialchars(mysql_result($q340, 0, 1));
        ?>
"><br><br>
		Alt. rezultat: <input type="text" name="alt_rezultat" size="50" value="<?php 
        echo htmlspecialchars(mysql_result($q340, 0, 2));
        ?>
"><br>
		(Ostaviti prazno ako ne želite da ponudite dvije varijante rezultata)<br><br>
		Fuzzy matching rezultata: <input type="checkbox" name="fuzzy" value="1" <?php 
        if (mysql_result($q340, 0, 3) == 1) {
            print "CHECKED";
        }
        ?>
><br><br>
		Traženje podstringa u rezultatu: <input type="checkbox" name="partial_match" value="1" <?php 
        if (mysql_result($q340, 0, 6) == 1) {
            print "CHECKED";
        }
        ?>
><br><br>
		Kod koji treba ubaciti u globalni opseg:<br><textarea name="global_scope" rows="10" cols="50"><?php 
        echo htmlspecialchars(mysql_result($q340, 0, 4));
        ?>
</textarea><br>
		Aktivan: <input type="checkbox" name="aktivan" value="1" <?php 
        if (mysql_result($q340, 0, 7) == 1) {
            print "CHECKED";
        }
        ?>
><br><br>
		Javni test (vidljiv studentima): <input type="checkbox" name="sakriven" value="1" <?php 
        if (mysql_result($q340, 0, 8) == 0) {
            print "CHECKED";
        }
        ?>
><br><br>
		<input type="submit" value="Izmijeni">
		<input type="button" value="Nazad" onclick="javascript:history.go(-1);">
		</form>
		<?php 
        return 0;
    }
    if ($_REQUEST['subakcija'] == "obrisi_at") {
        $id = intval($_REQUEST['id']);
        $zadatak = intval($_REQUEST['zadatak']);
        $q340 = myquery("SELECT kod FROM autotest WHERE zadaca={$zadaca} AND zadatak={$zadatak} AND id={$id}");
        if (mysql_num_rows($q340) < 1) {
            niceerror("Nepostojeći autotest");
            zamgerlog("spoofing autotesta {$id}", 3);
            zamgerlog2("spoofing autotesta", $id);
            return 0;
        }
        if ($_POST['subakcija'] == "obrisi_at" && check_csrf_token()) {
            $q345 = myquery("DELETE FROM autotest_rezultat WHERE autotest={$id}");
            $q350 = myquery("DELETE FROM autotest WHERE id={$id}");
            nicemessage("Obrisan autotest");
            zamgerlog("obrisan autotest {$id} (zadaca z{$zadaca})", 2);
            zamgerlog2("obrisan autotest", $id);
            print "<a href=\"{$linkPrefix}\">Nazad</a>\n";
            return 0;
        }
        print genform("POST");
        ?>
		<b>Brisanje autotesta:</b><br><br>
		Da li ste sigurni da želite obrisati autotest sa sljedećim kodom:<br>
		<textarea name="kod" rows="10" cols="50"><?php 
        echo mysql_result($q340, 0, 0);
        ?>
</textarea><br>
		<input type="submit" value="Da">
		<input type="button" value="Ne" onclick="javascript:history.go(-1);">
		</form>
		<?php 
        return 0;
    }
    if ($_REQUEST['subakcija'] == "dodaj_at") {
        $zadatak = intval($_REQUEST['zadatak']);
        if ($_POST['subakcija'] == "dodaj_at" && check_csrf_token()) {
            // Ne možemo koristiti my_escape jer htmlspecialchars zezne znakove < > (između ostalog)
            $kod = mysql_real_escape_string($_REQUEST['kod']);
            $rezultat = mysql_real_escape_string($_REQUEST['rezultat']);
            $alt_rezultat = mysql_real_escape_string($_REQUEST['alt_rezultat']);
            $fuzzy = intval($_REQUEST['fuzzy']);
            $global_scope = mysql_real_escape_string($_REQUEST['global_scope']);
            $stdin = mysql_real_escape_string($_REQUEST['stdin']);
            $stdin = str_replace("\\n", "\n", $stdin);
            $partial_match = intval($_REQUEST['partial_match']);
            $aktivan = intval($_REQUEST['aktivan']);
            $sakriven = intval($_REQUEST['sakriven']);
            if ($sakriven == 0) {
                $sakriven = 1;
            } else {
                $sakriven = 0;
            }
            $q350 = myquery("INSERT INTO autotest SET zadaca={$zadaca}, zadatak={$zadatak}, kod='{$kod}', rezultat='{$rezultat}', alt_rezultat='{$alt_rezultat}', fuzzy={$fuzzy}, global_scope='{$global_scope}', stdin='{$stdin}', partial_match='{$partial_match}', aktivan={$aktivan}, sakriven={$sakriven}");
            nicemessage("Dodan novi autotest");
            $id = mysql_insert_id();
            zamgerlog("dodan novi autotest {$id} (zadaca z{$zadaca})", 2);
            zamgerlog2("dodan novi autotest", $id);
            print "<a href=\"{$linkPrefix}\">Nazad</a>\n";
            return 0;
        }
        print genform("POST");
        ?>
		<b>Novi autotest:</b><br><br>
		Kod testa:<br><textarea name="kod" rows="10" cols="50"></textarea><br>
		Standardni ulaz: <input type="text" name="stdin" size="50" value=""><br><br>
		(Koristite \n da označite ENTER tipku)<br><br>
		Rezultat: <input type="text" name="rezultat" size="50" value=""><br><br>
		Alt. rezultat: <input type="text" name="alt_rezultat" size="50" value=""><br>
		(Ostaviti prazno ako ne želite da ponudite dvije varijante rezultata)<br><br>
		Fuzzy matching rezultata: <input type="checkbox" name="fuzzy" value="1"><br><br>
		Traženje podstringa u rezultatu: <input type="checkbox" name="partial_match" value="1"><br><br>
		Kod koji treba ubaciti u globalni opseg:<br><textarea name="global_scope" rows="10" cols="50"></textarea><br>
		Aktivan: <input type="checkbox" name="aktivan" value="1" CHECKED><br><br>
		Javni test (vidljiv studentima): <input type="checkbox" name="sakriven" value="1" CHECKED><br><br>
		<input type="submit" value="Dodaj">
		<input type="button" value="Nazad" onclick="javascript:history.go(-1);">
		</form>
		<?php 
        return 0;
    }
    if ($_POST['subakcija'] == "kopiraj_at" && check_csrf_token()) {
        $stara_zadaca = intval($_REQUEST['stara_zadaca']);
        $q190 = myquery("SELECT zadatak, kod, rezultat, alt_rezultat, fuzzy, global_scope, pozicija_globala, stdin, partial_match FROM autotest WHERE zadaca={$stara_zadaca}");
        while ($r190 = mysql_fetch_row($q190)) {
            $q195 = myquery("INSERT INTO autotest SET zadaca={$zadaca}, zadatak={$r190['0']}, kod='" . mysql_real_escape_string($r190[1]) . "', rezultat='" . mysql_real_escape_string($r190[2]) . "', alt_rezultat='" . mysql_real_escape_string($r190[3]) . "', fuzzy={$r190['4']}, global_scope='" . mysql_real_escape_string($r190[5]) . "', pozicija_globala='{$r190['6']}', stdin='" . mysql_real_escape_string($r190[7]) . "', partial_match={$r190['8']}");
        }
        nicemessage("Iskopirani testovi sa stare zadaće.");
        zamgerlog("iskopirani autotestovi sa zadace z{$stara_zadaca} na zadacu z{$zadaca})", 2);
        zamgerlog2("iskopirani autotestovi", $stara_zadaca, $zadaca);
    }
    $q200 = myquery("SELECT naziv, zadataka, predmet, akademska_godina FROM zadaca WHERE id={$zadaca}");
    if (mysql_num_rows($q200) < 1) {
        niceerror("Nepoznata zadaća.");
        return;
    }
    $naziv_zadace = mysql_result($q200, 0, 0);
    $broj_zadataka = mysql_result($q200, 0, 1);
    $predmet = mysql_result($q200, 0, 2);
    $ag = mysql_result($q200, 0, 3);
    ?>
	<h2>Autotestovi, <?php 
    echo $naziv_zadace;
    ?>
</h2>
	<p><?php 
    echo $backLink;
    ?>
</p>
	<?php 
    $q205 = myquery("SELECT distinct z.id, z.naziv, ag.naziv FROM zadaca as z, autotest as a, akademska_godina as ag WHERE z.predmet={$predmet} AND z.akademska_godina<{$ag} AND z.akademska_godina=ag.id AND a.zadaca=z.id ORDER BY ag.id desc, z.id");
    if (mysql_num_rows($q205) > 0) {
        ?>
		<h3>Kopiraj testove sa ranijih godina</h3>
		<?php 
        echo genform("POST");
        ?>
		<input type="hidden" name="subakcija" value="kopiraj_at">
		<select name="stara_zadaca">
		<?php 
    }
    $found = 0;
    while ($r205 = mysql_fetch_row($q205)) {
        print "<option value=\"{$r205['0']}\"";
        if ($r205[1] == $naziv_zadace && $found == 0) {
            $found = 1;
            print " CHECKED";
        }
        print ">{$r205['1']} ({$r205['2']})</option>\n";
    }
    if (mysql_num_rows($q205) > 0) {
        print "</select> <input type=\"submit\" value=\" Kreni \"></form>\n";
    }
    for ($zadatak = 1; $zadatak <= $broj_zadataka; $zadatak++) {
        print "<h3>Zadatak {$zadatak}</h3>\n";
        print "<p>Prototipovi funkcija koje moraju postojati u zadatku:\n";
        $q210 = myquery("SELECT id,specifikacija FROM autotest_replace WHERE zadaca={$zadaca} AND zadatak={$zadatak} AND tip='funkcija' AND zamijeni=''");
        while ($r210 = mysql_fetch_row($q210)) {
            print "<br>\n* {$r210['1']} (<a href=\"{$linkPrefix}&subakcija=promijeni_uslov&id={$r210['0']}&zadatak={$zadatak}\">promijeni</a>) (<a href=\"{$linkPrefix}&subakcija=obrisi_uslov&id={$r210['0']}&zadatak={$zadatak}\">obriši</a>)";
        }
        if (mysql_num_rows($q210) < 1) {
            print "<br>\n* nema";
        }
        print "</p>\n<p><a href=\"{$linkPrefix}&subakcija=dodaj_uslov&id={$r210['0']}&zadatak={$zadatak}\">Dodaj zahtijevanu funkciju</a></p>\n";
        ?>
<p><b>Autotestovi:</b></p>
		<table border="1" cellspacing="0" cellpadding="5">
		<tr bgcolor="#CCCCCC"><td>R.br.</td><td>Kod</td><td>Ulaz</td><td>Rezultat</td><td>Alternativni rezultat</td><td>Fuzzy matching?</td><td>Naredbe u globalnom opsegu</td><td>Akcije</td></tr>
		<?php 
        $q220 = myquery("SELECT id, kod, rezultat, alt_rezultat, fuzzy, global_scope, stdin, partial_match FROM autotest WHERE zadaca={$zadaca} AND zadatak={$zadatak}");
        if (mysql_num_rows($q220) < 1) {
            ?>
			<tr><td colspan="8">nije definisan nijedan autotest</td></tr>
			<?php 
        }
        $rbr = 1;
        while ($r220 = mysql_fetch_row($q220)) {
            $kod = htmlentities($r220[1]);
            $altrez = $r220[3];
            if ($altrez == "") {
                $altrez = "&nbsp;";
            }
            $global_kod = htmlentities($r220[5]);
            if ($r220[4] == 0) {
                $fuzzy = "NE";
            } else {
                $fuzzy = "L" . $r220[4];
            }
            if ($r220[7] == 1) {
                if ($fuzzy == "NE") {
                    $fuzzy = "substr";
                } else {
                    $fuzzy .= " substr";
                }
            }
            $stdin = htmlentities($r220[6]);
            ?>
			<tr>
				<td><?php 
            echo $rbr++;
            ?>
</td>
				<td><pre><?php 
            echo $kod;
            ?>
</pre></td>
				<td><pre><?php 
            echo $stdin;
            ?>
</pre></td>
				<td><?php 
            echo $r220[2];
            ?>
</td>
				<td><?php 
            echo $altrez;
            ?>
</td>
				<td><?php 
            echo $fuzzy;
            ?>
</td>
				<td><pre><?php 
            echo $global_kod;
            ?>
</pre></td>
				<td>(<a href="<?php 
            echo $linkPrefix;
            ?>
&subakcija=promijeni_at&id=<?php 
            echo $r220[0];
            ?>
&zadatak=<?php 
            echo $zadatak;
            ?>
">promijeni</a>) (<a href="<?php 
            echo $linkPrefix;
            ?>
&subakcija=obrisi_at&id=<?php 
            echo $r220[0];
            ?>
&zadatak=<?php 
            echo $zadatak;
            ?>
">obriši</a>)</td>
			</tr>
			<?php 
        }
        print "</table>\n";
        print "</p>\n<p><a href=\"{$linkPrefix}&subakcija=dodaj_at&id={$r210['0']}&zadatak={$zadatak}\">Dodaj autotest</a></p>\n";
    }
}
Exemplo n.º 9
0
function isSetOr(&$var, $or = 'null', $escape = false)
{
    $ret = $var === null ? $or : $var;
    if ($escape && $ret != 'null') {
        return my_escape($ret);
    }
    return $ret;
}
Exemplo n.º 10
0
$podnaslov = "Unos radnog mjesta";
$operacija = "dodavanje";
// Dodavanje
if (($_REQUEST['operacija'] == "dodavanje" || $_REQUEST['operacija'] == "izmjena_potvrda") && check_csrf_token()) {
    $id = intval($_REQUEST['id']);
    $pocetak_dan = intval($_REQUEST['pocetakday']);
    $pocetak_mjesec = intval($_REQUEST['pocetakmonth']);
    $pocetak_godina = intval($_REQUEST['pocetakyear']);
    $kraj_dan = intval($_REQUEST['krajday']);
    $kraj_mjesec = intval($_REQUEST['krajmonth']);
    $kraj_godina = intval($_REQUEST['krajyear']);
    $poslodavac = my_escape($_REQUEST['poslodavac']);
    $adresa_poslodavca = my_escape($_REQUEST['adresa_poslodavca']);
    $radno_mjesto = my_escape($_REQUEST['radno_mjesto']);
    $radno_mjesto_en = my_escape($_REQUEST['radno_mjesto_en']);
    $opis_radnog_mjesta = my_escape($_REQUEST['opis_radnog_mjesta']);
    $pocetak = mktime(0, 0, 0, $pocetak_mjesec, $pocetak_dan, $pocetak_godina);
    $kraj = mktime(0, 0, 0, $kraj_mjesec, $kraj_dan, $kraj_godina);
    // Validacija
    if ($kraj <= $pocetak) {
        niceerror("Datum kraja je prije datuma početka");
    } else {
        if (!preg_match("/\\w/", $poslodavac) || !preg_match("/\\w/", $radno_mjesto) || !preg_match("/\\w/", $radno_mjesto_en)) {
            niceerror("Nisu unesena sva obavezna polja");
        } else {
            if ($_REQUEST['operacija'] == "dodavanje") {
                $q10 = myquery("INSERT INTO hr_radno_iskustvo SET osoba={$osoba}, datum_pocetka=FROM_UNIXTIME({$pocetak}), datum_kraja=FROM_UNIXTIME({$kraj}), poslodavac='{$poslodavac}', adresa_poslodavca='{$adresa_poslodavca}', radno_mjesto='{$radno_mjesto}', radno_mjesto_en='{$radno_mjesto_en}', opis_radnog_mjesta='{$opis_radnog_mjesta}'");
                zamgerlog("dodano radno iskustvo", 2);
            } else {
                $q10 = myquery("UPDATE hr_radno_iskustvo SET osoba={$osoba}, datum_pocetka=FROM_UNIXTIME({$pocetak}), datum_kraja=FROM_UNIXTIME({$kraj}), poslodavac='{$poslodavac}', adresa_poslodavca='{$adresa_poslodavca}', radno_mjesto='{$radno_mjesto}', radno_mjesto_en='{$radno_mjesto_en}', opis_radnog_mjesta='{$opis_radnog_mjesta}' WHERE id={$id}");
                zamgerlog("izmijenjeno radno iskustvo", 2);
Exemplo n.º 11
0
			if (newmail.style.visibility=='visible')
				newmail.style.visibility='hidden';
			else
				newmail.style.visibility='visible';
			flashes++;
			if (flashes<=10) setTimeout("newmail_flash()",500);
		}
		</script>
		<?php 
    }
}
// Standardne greske
if ($greska != "") {
    niceerror($greska);
    if ($sta == "") {
        zamgerlog("index.php greska: {$greska} {$login} " . my_escape($_REQUEST['sta']), 3);
    } else {
        zamgerlog("index.php greska: {$greska} {$login} {$sta}", 3);
    }
}
// Poruka greške za modul
if ($found != 1 && $sta != "") {
    niceerror("Modul {$sta} još uvijek nije napravljen.");
    zamgerlog("pristup nepostojecom modulu {$sta}", 3);
    // Ne želimo da zamgerlog2 funkcija doda u bazu modul sa invalidnim imenom
    // između ostalog i zbog mogućeg SQL injectiona
    $oldsta = $sta;
    $sta = "";
    zamgerlog2("nepostojeci modul", 0, 0, 0, $oldsta);
}
// Default moduli za uloge, u slučaju da modul nije pronađen
Exemplo n.º 12
0
function my_form_escape($ar)
{
    return my_escape($ar);
}
Exemplo n.º 13
0
function studentska_raspored1()
{
    ?>
<link href="css/raspored1.css" rel="stylesheet" type="text/css">
<?php 
    global $userid, $user_siteadmin, $user_studentska;
    // Provjera privilegija
    if (!$user_studentska && !$user_siteadmin) {
        zamgerlog("nije studentska", 3);
        // 3: error
        zamgerlog2("nije studentska");
        biguglyerror("Pristup nije dozvoljen.");
        return;
    }
    ?>

<script language="JavaScript" type="text/javascript">
	function daj_uputstvo(){
		var x=document.getElementById('uputstvo_za_mas_unos_sala');
		var slika=document.getElementById('slika_za_mas_unos_sala');
		if(x.style.display=="none"){
			 x.style.display="inline";
			 slika.src="images/minus.png";
		}
		else {
			x.style.display="none";
			slika.src="images/plus.png";
		}
	}

	function prikaziGrupe() {
		document.getElementById('akcija_novi_cas').value="unos_novog_casa_predfaza";
		document.forma_za_unos_casa.submit();
	}
	
	function dodajCasSaKonfliktima() {
		document.getElementById('cas_sa_konfliktima').value="1";
		document.forma_za_unos_casa.submit();
	}
					
	function brisanje_casa(id_casa) {
		var a = confirm("Obrisati čas! Da li ste sigurni?");
		if (a) {
			document.getElementById('id_casa_za_brisanje').value=id_casa;
			document.brisanjecasa.submit();
		}
	}

	function prikazKonflikata(){
		var x=document.getElementById('prikaz_konflikata');
		var slika=document.getElementById('slika_konflikti');
		if(x.style.display=="none"){
			 x.style.display="inline";
			 slika.src="images/minus.png";
		}
		else {
			x.style.display="none";
			slika.src="images/plus.png";
		}
	}

	function brisanje_rasporeda(id_rasporeda) {
		var a = confirm("Obrisati raspored i kompletan sadržaj! Da li ste sigurni?");
		if (a) {
			document.getElementById('id_rasporeda_za_brisanje').value=id_rasporeda;
			document.brisanjerasporeda.submit();
		}
	}

	function kopiranjeSvihRasporeda() {
		var a = confirm("Ovom akcijom brišete eventualno postojeći sadržaj destinacijskog rasporeda!!");
		if (a) {
			document.kopiranjerasporeda.submit();
		}
	}
	
</script>

<?php 
    function prikaziKonflikte($id_stavke_rasporeda, $ispis = 0)
    {
        $q0 = myquery("select r.akademska_godina,r.semestar from raspored r, raspored_stavka rs where r.id=rs.raspored and rs.id={$id_stavke_rasporeda}");
        $akademska_godina = mysql_result($q0, 0, 0);
        $semestar = mysql_result($q0, 0, 1);
        $semestar_je_neparan = $semestar % 2;
        $q1 = myquery("select predmet,vrijeme_pocetak,vrijeme_kraj,tip,labgrupa,dan_u_sedmici,dupla from raspored_stavka where id={$id_stavke_rasporeda}");
        $predmet = mysql_result($q1, 0, 0);
        $pocetak = mysql_result($q1, 0, 1);
        $kraj = mysql_result($q1, 0, 2);
        $tip = mysql_result($q1, 0, 3);
        $labgrupa = mysql_result($q1, 0, 4);
        $dan = mysql_result($q1, 0, 5);
        $dupla = mysql_result($q1, 0, 6);
        if ($labgrupa != 0) {
            if ($labgrupa != -1) {
                $q4 = myquery("select naziv from labgrupa where id={$labgrupa}");
                $labgrupa_naziv = mysql_result($q4, 0, 0);
            }
        }
        $interval = $kraj - $pocetak;
        $konflikt = array();
        $konflikt['student'] = array();
        $konflikt['predmet'] = array();
        $konflikt['pocetak'] = array();
        $konflikt['kraj'] = array();
        $q2 = myquery("select rs.sala,rs.vrijeme_pocetak,rs.vrijeme_kraj,rs.predmet,rs.tip,rs.labgrupa,r.semestar,rs.id \r\n\tfrom raspored_stavka rs,raspored r where rs.dan_u_sedmici={$dan} and rs.raspored=r.id and r.akademska_godina={$akademska_godina} \r\n\tand r.semestar mod 2 = {$semestar_je_neparan} and rs.dupla=0 and (rs.isjeckana=0 or rs.isjeckana=2) and rs.labgrupa != -1");
        for ($f = 0; $f < mysql_num_rows($q2); $f++) {
            $sala_i = mysql_result($q2, $f, 0);
            $vrijeme_pocetak_i = mysql_result($q2, $f, 1);
            $vrijeme_kraj_i = mysql_result($q2, $f, 2);
            $predmet_i = mysql_result($q2, $f, 3);
            $tip_i = mysql_result($q2, $f, 4);
            $labgrupa_i = mysql_result($q2, $f, 5);
            $semestar_i = mysql_result($q2, $f, 6);
            $id_stavke_i = mysql_result($q2, $f, 7);
            if ($id_stavke_i == $id_stavke_rasporeda || $id_stavke_i == $dupla) {
                continue;
            }
            if ($tip_i == "P") {
                $labgrupa_i = 0;
            }
            //ukoliko postoji preklapanje termina (sada gledamo sve rasporede) tačan je uslov ispod
            if ($vrijeme_pocetak_i >= $pocetak && $vrijeme_pocetak_i < $kraj || $vrijeme_kraj_i > $pocetak && $vrijeme_kraj_i <= $kraj) {
                // provjera preklapanja studenata u terminu
                if ($tip == "P") {
                    $q_prvi = myquery("select sp.student from student_predmet sp,ponudakursa pk where sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$akademska_godina} and pk.semestar={$semestar}");
                } else {
                    $q_prvi = myquery("select student from student_labgrupa where labgrupa={$labgrupa}");
                }
                if ($labgrupa_i == 0) {
                    $q_drugi = myquery("select sp.student from student_predmet sp,ponudakursa pk where sp.predmet=pk.id and pk.predmet={$predmet_i} and pk.akademska_godina={$akademska_godina} and pk.semestar={$semestar_i}");
                } else {
                    $q_drugi = myquery("select student from student_labgrupa where labgrupa={$labgrupa_i}");
                }
                for ($p = 0; $p < mysql_num_rows($q_prvi); $p++) {
                    $student_p = mysql_result($q_prvi, $p, 0);
                    for ($d = 0; $d < mysql_num_rows($q_drugi); $d++) {
                        $student_d = mysql_result($q_drugi, $d, 0);
                        if ($student_p == $student_d) {
                            // pronadjen je student u konfliktu i upisujemo ga u niz konflikata
                            $konflikt['student'][] = $student_p;
                            $konflikt['predmet'][] = $predmet_i;
                            $konflikt['pocetak'][] = $vrijeme_pocetak_i;
                            $konflikt['kraj'][] = $vrijeme_kraj_i;
                        }
                    }
                }
            }
        }
        $broj_konflikata = count($konflikt['student']);
        if ($ispis == 1) {
            print "<p>Prikaz konflikata:</p>";
            print "<ul>";
            for ($i = 0; $i < count($konflikt['student']); $i++) {
                $student = $konflikt['student'][$i];
                $predmet = $konflikt['predmet'][$i];
                $pocetak = $konflikt['pocetak'][$i];
                $kraj = $konflikt['kraj'][$i];
                $vrijemePocS = floor(($pocetak - 1) / 4 + 8);
                $vrijemePocMin = $pocetak % 4;
                if ($vrijemePocMin == 1) {
                    $vrijemePocM = "00";
                } elseif ($vrijemePocMin == 2) {
                    $vrijemePocM = "15";
                } elseif ($vrijemePocMin == 3) {
                    $vrijemePocM = "30";
                } elseif ($vrijemePocMin == 0) {
                    $vrijemePocM = "45";
                }
                $vrijemeP = "{$vrijemePocS}:{$vrijemePocM}";
                $vrijemeKrajS = floor(($kraj - 1) / 4 + 8);
                $vrijemeKrajMin = $kraj % 4;
                if ($vrijemeKrajMin == 1) {
                    $vrijemeKrajM = "00";
                } elseif ($vrijemeKrajMin == 2) {
                    $vrijemeKrajM = "15";
                } elseif ($vrijemeKrajMin == 3) {
                    $vrijemeKrajM = "30";
                } elseif ($vrijemeKrajMin == 0) {
                    $vrijemeKrajM = "45";
                }
                $vrijemeK = "{$vrijemeKrajS}:{$vrijemeKrajM}";
                $q1 = myquery("select ime, prezime from osoba where id={$student}");
                $ime = mysql_result($q1, 0, 0);
                $prezime = mysql_result($q1, 0, 1);
                $q2 = myquery("select naziv from predmet where id={$predmet}");
                $naziv_predmeta = mysql_result($q2, 0, 0);
                print "<li><p><b>{$ime} {$prezime}</b> ima predmet <b>{$naziv_predmeta}</b> u terminu <b>{$vrijemeP}-{$vrijemeK}</b></p></li>";
            }
            print "</ul>";
        }
        return $broj_konflikata;
    }
    ?>


<center>

<table border="0"><tr><td>
<?php 
    // uslov ispod se koristi ako prikazujemo stranicu za rad sa salama
    if (isset($_REQUEST['edit_sala']) && $_REQUEST['edit_sala'] == 1) {
        $greska = 0;
        //uslov ispod je ispunjen ako je prihvaćena forma za unos nove sale
        if ($_POST['akcija'] == 'unos_nove_sale' && check_csrf_token()) {
            if (empty($_POST['ime_sale'])) {
                $greska = 1;
                $greska_prazno_ime_sale = 1;
            } else {
                // ako ime sale nije prazno izvršava se sljedeći kod
                $ime_sale = my_escape($_POST['ime_sale']);
                $q0 = myquery("select naziv from raspored_sala");
                for ($i = 0; $i < mysql_num_rows($q0); $i++) {
                    if (mysql_result($q0, $i, 0) == $ime_sale) {
                        $greska = 1;
                        $greska_postoji_sala = 1;
                    }
                }
            }
            $tip_sale = my_escape($_POST['tip_sale']);
            if (empty($_POST['kapacitet'])) {
                $greska = 1;
                $greska_prazan_kapacitet = 1;
            } elseif (!is_numeric($_POST['kapacitet'])) {
                $greska = 1;
                $greska_kapacitet_nije_broj = 1;
            } else {
                // ako je kapacitet ispravno unešen
                $kapacitet = intval($_POST['kapacitet']);
            }
            if ($greska == 0) {
                // ako nema greski unosimo novu salu u bazu
                $tip_sale = my_escape($_POST['tip_sale']);
                $q0 = myquery("select * from raspored_sala");
                if (mysql_num_rows($q0) > 0) {
                    $q1 = myquery("select max(id) from raspored_sala");
                    $id_nove_sale = mysql_result($q1, 0, 0) + 1;
                } else {
                    $id_nove_sale = 1;
                }
                $q0 = myquery("insert into raspored_sala set id={$id_nove_sale}, naziv='{$ime_sale}', kapacitet={$kapacitet}, tip='{$tip_sale}'");
                $uspjesno_unesena_sala = 1;
                zamgerlog("upisana nova sala {$ime_sale}", 2);
                // nivo 2 je izmjena podataka u bazi
                zamgerlog2("upisana nova sala", $id_nove_sale, 0, 0, $ime_sale);
            }
        } elseif ($_POST['akcija'] == 'editovanje_sale' && check_csrf_token()) {
            $id_sale_za_edit = intval($_POST['id_sale_za_edit']);
            $q0 = myquery("select naziv from raspored_sala where id={$id_sale_za_edit}");
            $stari_naziv_sale = mysql_result($q0, 0, 0);
            if (empty($_POST['edit_ime_sale'])) {
                $greska = 1;
                $greska_prazno_ime_sale = 1;
            } else {
                // ako ime sale nije prazno izvršava se sljedeći kod
                $ime_sale = my_escape($_POST['edit_ime_sale']);
                $q1 = myquery("select naziv from raspored_sala");
                for ($i = 0; $i < mysql_num_rows($q1); $i++) {
                    if (mysql_result($q1, $i, 0) == $ime_sale && $ime_sale != $stari_naziv_sale) {
                        $greska = 1;
                        $greska_postoji_sala = 1;
                    }
                }
            }
            $tip_sale = my_escape($_POST['edit_tip_sale']);
            if (empty($_POST['edit_kapacitet'])) {
                $greska = 1;
                $greska_prazan_kapacitet = 1;
            } elseif (!is_numeric($_POST['edit_kapacitet'])) {
                $greska = 1;
                $greska_kapacitet_nije_broj = 1;
            } else {
                // ako je kapacitet ispravno unešen
                $kapacitet = intval($_POST['edit_kapacitet']);
            }
            if ($greska == 0) {
                // ako nema greski unosimo novu salu u bazu
                $tip_sale = my_escape($_POST['edit_tip_sale']);
                $q1 = myquery("update raspored_sala set naziv='{$ime_sale}', kapacitet={$kapacitet}, tip='{$tip_sale}' where id={$id_sale_za_edit}");
                $uspjesno_editovana_sala = 1;
                zamgerlog("editovana sala {$stari_naziv_sale}", 2);
                // nivo 2 je izmjena podataka u bazi
                zamgerlog2("editovana sala", $id_sale_za_edit);
            }
        }
        $greska_masovnog_unosa = 0;
        // uslov ispod je ispunjen ako je prihvaćena forma za masovni unos sala
        if ($_POST['akcija'] == 'masovni_unos_sala' && check_csrf_token()) {
            $redovi = explode("\n", $_POST['mas_unos_sala']);
            if (trim($_POST['mas_unos_sala']) == '') {
                $greska_masovnog_unosa = 1;
                $greska_prazan_prostor_za_mas_unos_sala = 1;
            }
            $greska_u_redu = array();
            $greska_prazni_parametri_u_redu = array();
            $greska_nevalja_tip_sale_u_redu = array();
            $greska_nevalja_kapacitet_u_redu = array();
            $greska_postoji_sala_u_redu = array();
            $i = 0;
            foreach ($redovi as $red) {
                $i++;
                $red = trim($red);
                if (strlen($red) < 1) {
                    continue;
                }
                // prazan red
                if ($_POST['separator'] == 1) {
                    list($ime_sale, $tip_sale, $kapacitet) = explode(",", $red);
                    $ime_sale = trim($ime_sale);
                    $tip_sale = trim($tip_sale);
                    $kapacitet = trim($kapacitet);
                    $niz = explode(",", $red);
                } elseif ($_POST['separator'] == 2) {
                    list($ime_sale, $tip_sale, $kapacitet) = explode("\t", $red);
                    $ime_sale = trim($ime_sale);
                    $tip_sale = trim($tip_sale);
                    $kapacitet = trim($kapacitet);
                    $niz = explode("\t", $red);
                }
                if (count($niz) != 3) {
                    $greska_masovnog_unosa = 1;
                    $greska_u_redu[] = $i;
                } elseif (count($niz) == 3) {
                    if ($ime_sale == '' || $tip_sale == '' || $kapacitet == '') {
                        $greska_masovnog_unosa = 1;
                        $greska_prazni_parametri_u_redu[] = $i;
                    } else {
                        if ($tip_sale != 'amf' && $tip_sale != 'lab' && $tip_sale != 'kab') {
                            $greska_masovnog_unosa = 1;
                            $greska_nevalja_tip_sale_u_redu[] = $i;
                        }
                        if (!is_numeric($kapacitet)) {
                            $greska_masovnog_unosa = 1;
                            $greska_nevalja_kapacitet_u_redu[] = $i;
                        }
                        $q0 = myquery("select naziv from raspored_sala");
                        for ($j = 0; $j < mysql_num_rows($q0); $j++) {
                            if (mysql_result($q0, $j, 0) == $ime_sale) {
                                $greska_masovnog_unosa = 1;
                                $greska_postoji_sala_u_redu[] = $i;
                            }
                        }
                    }
                }
            }
            if ($greska_masovnog_unosa == 0) {
                $unesene_sale = array();
                foreach ($redovi as $red) {
                    $red = trim($red);
                    if (strlen($red) < 1) {
                        continue;
                    }
                    // prazan red
                    if ($_POST['separator'] == 1) {
                        list($ime_sale, $tip_sale, $kapacitet) = explode(",", $red);
                        $ime_sale = trim($ime_sale);
                    } elseif ($_POST['separator'] == 2) {
                        list($ime_sale, $tip_sale, $kapacitet) = explode("\t", $red);
                        $ime_sale = trim($ime_sale);
                    }
                    $unesene_sale[] = $ime_sale;
                }
                $postoji_dupla = false;
                for ($i = 0; $i < count($unesene_sale); $i++) {
                    $prva = $unesene_sale[$i];
                    for ($j = $i + 1; $j < count($unesene_sale); $j++) {
                        $druga = $unesene_sale[$j];
                        if ($prva == $druga) {
                            $greska_masovnog_unosa = 1;
                            $greska_postoje_duple_sale = 1;
                        }
                    }
                }
            }
            // ako nema grešaka u unosu dodajemo sale
            if ($greska_masovnog_unosa == 0) {
                $unesene_sale = array();
                foreach ($redovi as $red) {
                    $red = trim($red);
                    if (strlen($red) < 1) {
                        continue;
                    }
                    // prazan red
                    if ($_POST['separator'] == 1) {
                        list($ime_sale, $tip_sale, $kapacitet) = explode(",", $red);
                        $ime_sale = trim($ime_sale);
                        $tip_sale = trim($tip_sale);
                        if ($tip_sale == 'amf') {
                            $tip_sale = 'amfiteatar';
                        } elseif ($tip_sale == 'lab') {
                            $tip_sale = 'laboratorija';
                        } elseif ($tip_sale == 'kab') {
                            $tip_sale = 'kabinet';
                        }
                        $kapacitet = trim($kapacitet);
                        $niz = explode(",", $red);
                    } elseif ($_POST['separator'] == 2) {
                        list($ime_sale, $tip_sale, $kapacitet) = explode("\t", $red);
                        $ime_sale = trim($ime_sale);
                        $tip_sale = trim($tip_sale);
                        if ($tip_sale == 'amf') {
                            $tip_sale = 'amfiteatar';
                        } elseif ($tip_sale == 'lab') {
                            $tip_sale = 'laboratorija';
                        } elseif ($tip_sale == 'kab') {
                            $tip_sale = 'kabinet';
                        }
                        $kapacitet = trim($kapacitet);
                        $niz = explode("\t", $red);
                    }
                    $q0 = myquery("select * from raspored_sala");
                    if (mysql_num_rows($q0) > 0) {
                        $q1 = myquery("select max(id) from raspored_sala");
                        $id_nove_sale = mysql_result($q1, 0, 0) + 1;
                    } else {
                        $id_nove_sale = 1;
                    }
                    $q0 = myquery("insert into raspored_sala set id={$id_nove_sale}, naziv='{$ime_sale}', kapacitet={$kapacitet}, tip='{$tip_sale}'");
                    $unesene_sale[] = $ime_sale;
                    zamgerlog("masovni unos sala: Unesena je sala {$ime_sale}", 2);
                    zamgerlog2("upisana nova sala (masovni unos)", $id_nove_sale, 0, 0, $ime_sale);
                }
                $uspjesan_masovni_unos_sala = 1;
            }
        }
        // Obrisi salu
        if ($_POST['akcija'] == "obrisi_salu" && check_csrf_token()) {
            $id_sale_za_brisanje = intval($_POST['id_sale_za_brisanje']);
            $q1 = myquery("select naziv from raspored_sala where id={$id_sale_za_brisanje}");
            $naziv = mysql_result($q1, 0, 0);
            $q2 = myquery("delete from raspored_sala where id={$id_sale_za_brisanje}");
            $uspjesno_obrisana_sala = 1;
            zamgerlog("obrisana sala {$naziv}", 4);
            zamgerlog2("obrisana sala", $id_sale_za_brisanje);
        }
        if (isset($_REQUEST['sala_za_edit'])) {
            ?>
	<div id="prikaz_za_editovanje_sale">
		<?php 
            $id_sale_za_edit = $_REQUEST['sala_za_edit'];
            $q0 = myquery("select naziv,tip,kapacitet from raspored_sala where id={$id_sale_za_edit}");
            $ime_sale = mysql_result($q0, 0, 0);
            $tip_sale = mysql_result($q0, 0, 1);
            $kapacitet = mysql_result($q0, 0, 2);
            if (isset($uspjesno_editovana_sala) && $uspjesno_editovana_sala == 1) {
                nicemessage("Sala je uspješno izmijenjena.");
            }
            print "<p><a href=\"?sta=studentska/raspored1&edit_sala=1\">vrati se nazad na unos sala</a></p>";
            print "<h4>Editovanje sale {$ime_sale}:</h4>";
            print genform("POST", "forma_za_editovanje_sale");
            ?>
		<input type="hidden" name="akcija" value="editovanje_sale">
		<input type="hidden" name="id_sale_za_edit" value="<?php 
            print "{$id_sale_za_edit}";
            ?>
">
		<table cellpadding="3">
		<tr>
			<td align="left" width="100">Ime sale:</td>
			<td>
				<input type="text" name="edit_ime_sale" maxlength="10" size="11" value="
					<?php 
            if ($_POST['edit_ime_sale']) {
                print "{$_POST['edit_ime_sale']}";
            } else {
                print "{$ime_sale}";
            }
            ?>
				">
			</td>
			<?php 
            if ($greska_prazno_ime_sale == 1) {
                print "<td><p class=\"crveno\">niste unijeli ime sale</p></td>";
            }
            ?>
			<?php 
            if ($greska_postoji_sala == 1) {
                print "<td><p class=\"crveno\">postoji sala sa tim imenom</p></td>";
            }
            ?>
 
		</tr>
		<tr>
			<td align="left" width="100">Tip sale:</td>
			<td>
				<select name="edit_tip_sale">
					<option value="amfiteatar">amfiteatar</option>
					<option value="laboratorija" 
							<?php 
            if ($_POST['edit_tip_sale'] == "laboratorija") {
                print "selected=\"selected\"";
            } else {
                if ($tip_sale == "laboratorija") {
                    print "selected=\"selected\"";
                }
            }
            ?>
						>laboratorija
					</option>
					<option value="kabinet"
							<?php 
            if ($_POST['edit_tip_sale'] == "kabinet") {
                print "selected=\"selected\"";
            } else {
                if ($tip_sale == "kabinet") {
                    print "selected=\"selected\"";
                }
            }
            ?>
						>kabinet
					</option>
				</select>
			</td>
		</tr>
		<tr>
			<td align="left" width="100">Kapacitet:</td>
			<td>
				<input type="text" name="edit_kapacitet" maxlength="4" size="11" value="
					<?php 
            if ($_POST['edit_kapacitet']) {
                print "{$_POST['edit_kapacitet']}";
            } else {
                print "{$kapacitet}";
            }
            ?>
				">
			</td>
			<?php 
            if ($greska_prazan_kapacitet == 1) {
                print "<td><p class=\"crveno\">niste unijeli kapacitet</p></td>";
            }
            ?>
			<?php 
            if ($greska_kapacitet_nije_broj == 1) {
                print "<td><p class=\"crveno\">kapacitet treba biti broj</p></td>";
            }
            ?>
		</tr>
		<tr>
			<td></td>
			<td align="right"><input type="submit" value=" Potvrdi promjene "></td>
		</tr>
		</table>
		</form>
	</div>
	<?php 
        } else {
            ?>
	
	<div id="normalni_prikaz">
	<?php 
            print "<p><a href=\"?sta=studentska/raspored1\">vrati se na početnu</a></p>";
            if (isset($uspjesno_unesena_sala) && $uspjesno_unesena_sala == 1) {
                nicemessage("Sala {$ime_sale} je uspješno dodana.");
            }
            if ($uspjesno_obrisana_sala == 1) {
                nicemessage("Sala je uspješno obrisana.");
            }
            print "<h4>Dodavanje nove sale:</h4>";
            print genform("POST", "forma_za_unos_sale");
            ?>
	<input type="hidden" name="akcija" value="unos_nove_sale">
	<table cellpadding="3">
	<tr>
		<td align="left" width="100">Ime sale:</td>
		<td>
		<input type="text" name="ime_sale" maxlength="10" size="11" 
			<?php 
            if ($greska == 1 && isset($_POST['ime_sale'])) {
                print "value=\"{$_POST['ime_sale']}\"";
            }
            ?>
		></td>
		<?php 
            if ($greska_prazno_ime_sale == 1) {
                print "<td><p class=\"crveno\">niste unijeli ime sale</p></td>";
            }
            ?>
		<?php 
            if ($greska_postoji_sala == 1) {
                print "<td><p class=\"crveno\">postoji sala sa tim imenom</p></td>";
            }
            ?>
	</tr>
	<tr>
		<td align="left" width="100">Tip sale:</td>
		<td>
			<select name="tip_sale">
				<option value="amfiteatar">amfiteatar</option>
				<option value="laboratorija" 
					<?php 
            if ($greska == 1 && $_POST['tip_sale'] == "laboratorija") {
                print "selected=\"selected\"";
            }
            ?>
					>laboratorija
				</option>
				<option value="kabinet"
					<?php 
            if ($greska == 1 && $_POST['tip_sale'] == "kabinet") {
                print "selected=\"selected\"";
            }
            ?>
					>kabinet
				</option>
			</select>
		</td>
	</tr>
	<tr>
		<td align="left" width="100">Kapacitet:</td>
		<td><input type="text" name="kapacitet" maxlength="4" size="11" 
			<?php 
            if ($greska == 1 && isset($_POST['kapacitet'])) {
                print "value=\"{$_POST['kapacitet']}\"";
            }
            ?>
		></td>
		<?php 
            if ($greska_prazan_kapacitet == 1) {
                print "<td><p class=\"crveno\">niste unijeli kapacitet</p></td>";
            }
            ?>
		<?php 
            if ($greska_kapacitet_nije_broj == 1) {
                print "<td><p class=\"crveno\">kapacitet treba biti broj</p></td>";
            }
            ?>
	</tr>
	<tr>
		<td></td>
		<td align="right"><input type="submit" value=" Dodaj "></td>
	</tr>
	</table>
	</form>
	<hr>
	
	
	<h4>Masovni unos sala:</h4>
	<?php 
            if (count($greska_u_redu) > 0) {
                print "<p class=\"crveno\">GREŠKA: Nema potreban broj parametara u redu {$greska_u_redu['0']}";
                if (count($greska_u_redu) == 1) {
                    print ".</p>";
                } else {
                    for ($i = 1; $i < count($greska_u_redu); $i++) {
                        if ($i == count($greska_u_redu) - 1) {
                            print " i {$greska_u_redu[$i]}.</p>";
                        } else {
                            print ", {$greska_u_redu[$i]}";
                        }
                    }
                }
            }
            if (count($greska_prazni_parametri_u_redu) > 0) {
                print "<p class=\"crveno\">GREŠKA: Postoje prazni parametri u redu {$greska_prazni_parametri_u_redu['0']}";
                if (count($greska_prazni_parametri_u_redu) == 1) {
                    print ".</p>";
                } else {
                    for ($i = 1; $i < count($greska_prazni_parametri_u_redu); $i++) {
                        if ($i == count($greska_prazni_parametri_u_redu) - 1) {
                            print " i {$greska_prazni_parametri_u_redu[$i]}.</p>";
                        } else {
                            print ", {$greska_prazni_parametri_u_redu[$i]}";
                        }
                    }
                }
            }
            if (count($greska_nevalja_tip_sale_u_redu) > 0) {
                print "<p class=\"crveno\">GREŠKA: Tip sale treba biti amf,lab ili kab (red {$greska_nevalja_tip_sale_u_redu['0']}";
                if (count($greska_nevalja_tip_sale_u_redu) == 1) {
                    print ").</p>";
                } else {
                    for ($i = 1; $i < count($greska_nevalja_tip_sale_u_redu); $i++) {
                        if ($i == count($greska_nevalja_tip_sale_u_redu) - 1) {
                            print " i {$greska_nevalja_tip_sale_u_redu[$i]} ).</p>";
                        } else {
                            print ", {$greska_nevalja_tip_sale_u_redu[$i]}";
                        }
                    }
                }
            }
            if (count($greska_nevalja_kapacitet_u_redu) > 0) {
                print "<p class=\"crveno\">GREŠKA: Kapacitet treba biti broj (red {$greska_nevalja_kapacitet_u_redu['0']}";
                if (count($greska_nevalja_kapacitet_u_redu) == 1) {
                    print ").</p>";
                } else {
                    for ($i = 1; $i < count($greska_nevalja_kapacitet_u_redu); $i++) {
                        if ($i == count($greska_nevalja_kapacitet_u_redu) - 1) {
                            print " i {$greska_nevalja_kapacitet_u_redu[$i]} ).</p>";
                        } else {
                            print ", {$greska_nevalja_kapacitet_u_redu[$i]}";
                        }
                    }
                }
            }
            if (count($greska_postoji_sala_u_redu) > 0) {
                print "<p class=\"crveno\">GREŠKA: Postoji sala (red {$greska_postoji_sala_u_redu['0']}";
                if (count($greska_postoji_sala_u_redu) == 1) {
                    print ").</p>";
                } else {
                    for ($i = 1; $i < count($greska_postoji_sala_u_redu); $i++) {
                        if ($i == count($greska_postoji_sala_u_redu) - 1) {
                            print " i {$greska_postoji_sala_u_redu[$i]}).</p>";
                        } else {
                            print ", {$greska_postoji_sala_u_redu[$i]}";
                        }
                    }
                }
            }
            if ($greska_masovnog_unosa == 1 && $greska_postoje_duple_sale == 1) {
                print "<p class=\"crveno\">GREŠKA: Unijeli ste sale sa istim imenom!</p>";
            }
            if ($uspjesan_masovni_unos_sala == 1 && count($unesene_sale) > 0) {
                print "<p class=\"crveno\">Uspješno unešena sala {$unesene_sale['0']}";
                if (count($unesene_sale) == 1) {
                    print ".</p>";
                } else {
                    for ($i = 1; $i < count($unesene_sale); $i++) {
                        if ($i == count($unesene_sale) - 1) {
                            print " i {$unesene_sale[$i]}.</p>";
                        } else {
                            print ", {$unesene_sale[$i]}";
                        }
                    }
                }
            }
            if ($greska_prazan_prostor_za_mas_unos_sala == 1) {
                print "<p class=\"crveno\">GREŠKA: Niste unijeli nikakve podatke u prostor za masovni unos.</p>";
            }
            ?>
	
	<a href="#" onclick="daj_uputstvo()"><img id="slika_za_mas_unos_sala" src = "images/plus.png" border="0" align="left" />Uputstvo za masovni unos</a>
	
	<div id="uputstvo_za_mas_unos_sala" style="display:none">
		<p>Unesite ime sale, tip sale (amf,lab ili kab) i kapacitet odvojene zarezom</p>
		<p>Ukoliko unosite podatke iz Excel-a odaberite opciju unos iz excela(odvajanje sa [tab]-om)</p>
		<p>Svaku novu salu dodajte u novom redu</p>
		<p>primjer:</p>
		<p>s01,lab,30</p>
		<p>s02,amf,60</p>
		<p>s03,kab,40</p>
	</div>
	
	<?php 
            echo genform("POST");
            ?>
	<input type="hidden" name="akcija" value="masovni_unos_sala">
	<textarea name="mas_unos_sala" rows="10" cols="40">
	<?php 
            if (isset($_POST['mas_unos_sala'])) {
                print trim($_POST['mas_unos_sala']);
            }
            ?>
	</textarea>
	<br/>
	
	<p>Tip unosa:
	<select name="separator">
		<option value="1">standardan unos (odvajanje zarezom)</option>
		<option value="2">unos iz excela(odvajanje sa [tab]-om)</option>
	</select>
	</p>
	<input type="submit" value=" Dodaj "></form>
	<br></br>
	</div>
	<?php 
        }
        // završava se div koji se prikazuje kada se ne radi o editovanju sale
        ?>

	<script language="JavaScript">
	function brisanje_sale(id_sale) {
		var a = confirm("Obrisati salu! Da li ste sigurni?");
		if (a) {
			document.getElementById('id_sale_za_brisanje').value=id_sale;
			document.brisanjesale.submit();
		}
	}
	</script>
	
	<?php 
        echo genform("POST", "brisanjesale");
        ?>
	<input type="hidden" name="akcija" value="obrisi_salu">
	<input type="hidden" name="id_sale_za_brisanje" id="id_sale_za_brisanje" value=""></form>
	
	<h4>Postojeće sale:</h4>
	
	<table class="sale" border="1" cellspacing="0">
		<?php 
        $q1 = myquery("select id,naziv,tip,kapacitet from raspored_sala order by id");
        if (mysql_num_rows($q1) < 1) {
            print "<p>Nema kreiranih sala</p>";
        } else {
            ?>
			<th>Ime sale</th>
			<th>Tip sale</th>
			<th>Kapacitet</th>
			<th colspan="2">Akcije</th>
			<?php 
            for ($i = 0; $i < mysql_num_rows($q1); $i++) {
                $id = mysql_result($q1, $i, 0);
                $ime_sale = mysql_result($q1, $i, 1);
                $tip_sale = mysql_result($q1, $i, 2);
                $kapacitet = mysql_result($q1, $i, 3);
                print "<tr>";
                print "<td>{$ime_sale}</td>";
                print "<td>{$tip_sale}</td>";
                print "<td>{$kapacitet}</td>";
                print "<td width=\"80\"><a  href=\"?sta=studentska/raspored1&edit_sala=1&sala_za_edit={$id}\"> izmijeni </a></td>";
                print "<td width=\"80\"><a  href=\"javascript:onclick=brisanje_sale('{$id}')\"> obriši </a></td>";
                print "</tr>";
            }
        }
        ?>
	</table>
<?php 
    } else {
        if ($_POST['akcija'] == 'unos_novog_rasporeda' && check_csrf_token()) {
            $akademska_godina = intval($_POST['akademska_godina']);
            $studij = intval($_POST['studij']);
            $semestar = intval($_POST['semestar']);
            $q0 = myquery("select akademska_godina,studij,semestar from raspored");
            $greska_postoji_raspored = 0;
            for ($i = 0; $i < mysql_num_rows($q0); $i++) {
                if (mysql_result($q0, $i, 0) == $akademska_godina && mysql_result($q0, $i, 1) == $studij && mysql_result($q0, $i, 2) == $semestar) {
                    $greska_postoji_raspored = 1;
                }
            }
            if ($greska_postoji_raspored == 0) {
                $q0 = myquery("insert into raspored set id='NULL', akademska_godina={$akademska_godina}, studij={$studij}, semestar={$semestar}");
                $uspjesno_unesen_raspored = 1;
                zamgerlog("unesen novi raspored", 2);
                zamgerlog2("unesen novi raspored", $akademska_godina, $studij, $semestar);
            }
        }
        // Obrisi raspored
        if ($_POST['akcija'] == "obrisi_raspored" && check_csrf_token()) {
            $id_rasporeda_za_brisanje = intval($_POST['id_rasporeda_za_brisanje']);
            $q1 = myquery("select studij,akademska_godina,semestar from raspored where id={$id_rasporeda_za_brisanje}");
            $studij = mysql_result($q1, 0, 0);
            $akademska_godina = mysql_result($q1, 0, 1);
            $semestar = mysql_result($q1, 0, 2);
            $q2 = myquery("select naziv from studij where id={$studij}");
            $naziv_studija = mysql_result($q2, 0, 0);
            $q3 = myquery("select naziv from akademska_godina where id={$akademska_godina}");
            $naziv_akademske_godine = mysql_result($q3, 0, 0);
            $q3 = myquery("delete from raspored where id={$id_rasporeda_za_brisanje}");
            $q4 = myquery("delete from raspored_stavka where raspored={$id_rasporeda_za_brisanje}");
            $uspjesno_obrisan_raspored = 1;
            zamgerlog("obrisan raspored za akademsku {$naziv_akademske_godine} godinu, studij {$naziv_studija}, semestar {$semestar}", 4);
            // nivo 4: audit
            zamgerlog2("obrisan raspored", $id_rasporeda_za_brisanje);
        }
        //kopiranje rasporeda iz jedne akademske godine u drugu
        if ($_POST['akcija'] == "kopiraj_raspored" && check_csrf_token()) {
            $izvor = intval($_POST['izvor']);
            $odrediste = intval($_POST['odrediste']);
            $greska_kopiranja_rasporeda = false;
            if ($izvor == $odrediste) {
                $greska_kopiranja_rasporeda = true;
                niceerror("Izvor i destinacija ne mogu biti isti!");
            }
            if ($greska_kopiranja_rasporeda == false) {
                $q0 = myquery("select naziv from akademska_godina where id={$odrediste}");
                $naziv_akademske_godine = mysql_result($q0, 0, 0);
                $q1 = myquery("delete from raspored where akademska_godina={$odrediste}");
                $q2 = myquery("select id from raspored where akademska_godina={$odrediste}");
                for ($i = 0; $i < mysql_num_rows($q2); $i++) {
                    $id_odr = mysql_result($q2, $i, 0);
                    $q3 = myquery("delete from raspored_stavka rs where raspored={$id_odr}");
                }
                zamgerlog("obrisani svi rasporedi u akademskoj {$naziv_akademske_godine} godini", 4);
                zamgerlog2("obrisani svi rasporedi u akademskoj godini", $odrediste);
                $q4 = myquery("select studij,semestar,id from raspored where akademska_godina={$izvor}");
                $broj_redova = mysql_num_rows($q4);
                for ($i = 0; $i < $broj_redova; $i++) {
                    $studij = mysql_result($q4, $i, 0);
                    $semestar = mysql_result($q4, $i, 1);
                    $id_rasp_izvora = mysql_result($q4, $i, 2);
                    $q5 = myquery("insert into raspored set id='NULL', akademska_godina={$odrediste}, studij={$studij}, semestar={$semestar}");
                    $q6 = myquery("select rs.dan_u_sedmici,rs.predmet,rs.vrijeme_pocetak,rs.vrijeme_kraj,rs.sala,rs.tip,rs.labgrupa,rs.dupla,rs.id\r\n\t\t\t\tfrom raspored_stavka rs,raspored r where rs.raspored=r.id and r.id={$id_rasp_izvora} and rs.dupla=0 and (rs.isjeckana=0 or rs.isjeckana=2) and rs.labgrupa != -1 ");
                    $q7 = myquery("select max(id) from raspored");
                    $id_rasp_odredista = mysql_result($q7, 0, 0);
                    $q8 = myquery("select naziv from akademska_godina where id={$izvor}");
                    $q9 = myquery("select naziv from akademska_godina where id={$odrediste}");
                    $naziv_izvora = mysql_result($q8, 0, 0);
                    $naziv_odredista = mysql_result($q9, 0, 0);
                    for ($j = 0; $j < mysql_num_rows($q6); $j++) {
                        $dan = mysql_result($q6, $j, 0);
                        $predmet = mysql_result($q6, $j, 1);
                        $pocetak = mysql_result($q6, $j, 2);
                        $kraj = mysql_result($q6, $j, 3);
                        $sala = mysql_result($q6, $j, 4);
                        $tip = mysql_result($q6, $j, 5);
                        $labgrupa = mysql_result($q6, $j, 6);
                        if ($labgrupa != 0) {
                            $q71 = myquery("select naziv,virtualna from labgrupa where akademska_godina={$izvor} and predmet={$predmet} and id={$labgrupa}");
                            $naziv_grupe = mysql_result($q71, 0, 0);
                            $virtualna = mysql_result($q71, 0, 1);
                            $novi_naziv = $naziv_grupe . '_' . $izvor;
                            $q72 = myquery("select naziv from labgrupa where predmet={$predmet} and akademska_godina={$odrediste}");
                            $postoji_labgrupa = false;
                            for ($k = 0; $k < mysql_num_rows($q72); $k++) {
                                $lab_naziv = mysql_result($q72, $k, 0);
                                if ($lab_naziv == $novi_naziv) {
                                    $postoji_labgrupa = true;
                                }
                            }
                            if ($postoji_labgrupa == false) {
                                $q73 = myquery("insert into labgrupa set id='NULL',naziv='{$novi_naziv}',predmet={$predmet},akademska_godina={$odrediste},virtualna={$virtualna}");
                                zamgerlog("uspjesno unesena labgrupa", 2);
                                zamgerlog2("kreirana labgrupa", mysql_insert_id(), $predmet, $odrediste, $novi_naziv);
                                $q74 = myquery("select max(id) from labgrupa");
                            } else {
                                $q74 = myquery("select id from labgrupa where naziv='{$novi_naziv}'");
                            }
                        }
                        $labgrupa = mysql_result($q74, 0, 0);
                        $dupla = mysql_result($q6, $j, 7);
                        $id_stavke = mysql_result($q6, $j, 8);
                        $q0 = myquery("insert into raspored_stavka set id='NULL', raspored={$id_rasp_odredista}, dan_u_sedmici={$dan}, predmet={$predmet},\r\n\t\t\t\t\t\t\tvrijeme_pocetak={$pocetak},vrijeme_kraj={$kraj},sala={$sala},tip='{$tip}',labgrupa={$labgrupa},dupla={$dupla}");
                        $q1 = myquery("select max(id) from raspored_stavka");
                        $id_nove_stavke = mysql_result($q1, 0, 0);
                        $q2 = myquery("select r.studij,r.semestar from raspored_stavka rs,raspored r where rs.raspored=r.id and rs.dupla={$id_stavke}");
                        for ($k = 0; $k < mysql_num_rows($q2); $k++) {
                            $studij_k = mysql_result($q2, $k, 0);
                            $semestar_k = mysql_result($q2, $k, 1);
                            $q3 = myquery("select id from raspored where semestar={$semestar_k} and studij={$studij_k} and akademska_godina={$odrediste}");
                            $rasp = mysql_result($q3, 0, 0);
                            $q4 = myquery("insert into raspored_stavka set id='NULL', raspored={$rasp}, dan_u_sedmici={$dan}, predmet={$predmet},\r\n\t\t\t\t\t\t\t\tvrijeme_pocetak={$pocetak},vrijeme_kraj={$kraj},sala={$sala},tip='{$tip}',labgrupa={$labgrupa},dupla={$id_nove_stavke}");
                        }
                    }
                }
                zamgerlog("uspješno kopirani svi rasporedi iz {$naziv_izvora} u {$naziv_odredista} akademsku godinu.", 2);
                zamgerlog2("uspješno kopirani svi rasporedi", $izvor, $odrediste);
                nicemessage("Uspješno kopirani svi rasporedi iz {$naziv_izvora} u {$naziv_odredista} akademsku godinu.");
            }
        }
        // ako se klikne na link izmijeni raspored ispunjen je sljedeći uslov i prikazuje se taj html kod
        if (isset($_REQUEST['raspored_za_edit'])) {
            $raspored_za_edit = $_REQUEST['raspored_za_edit'];
            $q1 = myquery("select studij,akademska_godina,semestar from raspored where id={$raspored_za_edit}");
            $studij = mysql_result($q1, 0, 0);
            $akademska_godina = mysql_result($q1, 0, 1);
            $semestar = mysql_result($q1, 0, 2);
            $q2 = myquery("select naziv from studij where id={$studij}");
            $naziv_studija = mysql_result($q2, 0, 0);
            $q3 = myquery("select naziv from akademska_godina where id={$akademska_godina}");
            $naziv_akademske_godine = mysql_result($q3, 0, 0);
            // ukoliko se prihvati forma za unos novog časa ispunjen je uslov ispod
            if ($_POST['akcija'] == 'unos_novog_casa' && check_csrf_token()) {
                $greska_u_dodavanju_casa = 0;
                $cas_sa_konfliktima = intval($_POST['cas_sa_konfliktima']);
                $dan = intval($_POST['dan']);
                $tip = my_escape($_POST['tip']);
                $predmet = intval($_POST['predmet']);
                $sala = intval($_POST['sala']);
                $vrijeme_pocetak_sati = intval($_POST['pocetakSat']);
                $vrijeme_pocetak_minute = intval($_POST['pocetakMin']);
                $vrijeme_kraj_sati = intval($_POST['krajSat']);
                $vrijeme_kraj_minute = intval($_POST['krajMin']);
                $vrijeme_pocetak = $vrijeme_pocetak_sati * 4 + $vrijeme_pocetak_minute;
                $vrijeme_kraj = $vrijeme_kraj_sati * 4 + $vrijeme_kraj_minute;
                $labgrupa = intval($_POST['labgrupa']);
                if ($vrijeme_pocetak_sati != -1 && $vrijeme_pocetak_minute != 0 && $vrijeme_kraj_sati != -1 && $vrijeme_kraj_minute != 0) {
                    if ($vrijeme_pocetak >= $vrijeme_kraj) {
                        $greska_u_dodavanju_casa = 1;
                        $greska_neispravan_interval = 1;
                    }
                }
                if ($dan == 0 || $tip == '0' || $predmet == 0 || $sala == 0 || $vrijeme_pocetak_sati == -1 || $vrijeme_pocetak_minute == 0 || $vrijeme_kraj_sati == -1 || $vrijeme_kraj_minute == 0 || $labgrupa == 0 && $tip != 'P') {
                    $greska_u_dodavanju_casa = 1;
                    $greska_prazni_parametri_u_casu = 1;
                }
                $q0 = myquery("select sala,vrijeme_pocetak,vrijeme_kraj,predmet,tip,labgrupa from raspored_stavka where dan_u_sedmici={$dan} and raspored={$raspored_za_edit} and (isjeckana=0 or isjeckana=2) and labgrupa!= -1");
                if ($vrijeme_kraj > 53) {
                    $greska_u_dodavanju_casa = 1;
                    $greska_nevalja_termin = 1;
                }
                if ($predmet != 0) {
                    $q1 = myquery("select obavezan from ponudakursa where akademska_godina={$akademska_godina} and semestar={$semestar} and predmet={$predmet}");
                    $obavezan_predmet = mysql_result($q1, 0, 0);
                }
                for ($i = 0; $i < mysql_num_rows($q0); $i++) {
                    $sala_i = mysql_result($q0, $i, 0);
                    $vrijeme_pocetak_i = mysql_result($q0, $i, 1);
                    $vrijeme_kraj_i = mysql_result($q0, $i, 2);
                    $predmet_i = mysql_result($q0, $i, 3);
                    $tip_i = mysql_result($q0, $i, 4);
                    $labgrupa_i = mysql_result($q0, $i, 5);
                    if ($predmet != 0) {
                        $q1 = myquery("select obavezan from ponudakursa where akademska_godina={$akademska_godina} and semestar={$semestar} and predmet={$predmet_i}");
                        $obavezan_predmet_i = mysql_result($q1, 0, 0);
                    }
                    //ukoliko postoji preklapanje termina u rasporedu koji se trenutno edituje tačan je uslov ispod
                    if ($vrijeme_pocetak_i >= $vrijeme_pocetak && $vrijeme_pocetak_i < $vrijeme_kraj || $vrijeme_kraj_i > $vrijeme_pocetak && $vrijeme_kraj_i <= $vrijeme_kraj) {
                        if ($obavezan_predmet_i == 1 && $tip_i == 'P') {
                            $greska_u_dodavanju_casa = 1;
                            $greska_preklapanje_sa_obaveznim_predmetom = 1;
                        }
                        if ($obavezan_predmet == 1 && $tip == "P") {
                            $greska_u_dodavanju_casa = 1;
                            $greska_preklapanje_obaveznog_predmeta = 1;
                        }
                        if ($predmet == $predmet_i && $labgrupa == $labgrupa_i) {
                            $greska_u_dodavanju_casa = 1;
                            $greska_isti_predmet_ista_grupa = 1;
                        }
                    }
                }
                $semestar_je_neparan = $semestar % 2;
                $q1 = myquery("select rs.sala,rs.vrijeme_pocetak,rs.vrijeme_kraj,rs.predmet,rs.tip from raspored_stavka rs,raspored r where rs.dan_u_sedmici={$dan} \r\n\t\t\tand rs.raspored=r.id and r.akademska_godina={$akademska_godina} and r.semestar mod 2 = {$semestar_je_neparan} and rs.dupla=0 and (rs.isjeckana=0 or rs.isjeckana=2) and rs.labgrupa != -1 ");
                for ($i = 0; $i < mysql_num_rows($q1); $i++) {
                    $sala_i = mysql_result($q1, $i, 0);
                    $vrijeme_pocetak_i = mysql_result($q1, $i, 1);
                    $vrijeme_kraj_i = mysql_result($q1, $i, 2);
                    $predmet_i = mysql_result($q1, $i, 3);
                    //ukoliko postoji preklapanje termina (sada gledamo sve rasporede) tačan je uslov ispod
                    if ($vrijeme_pocetak_i >= $vrijeme_pocetak && $vrijeme_pocetak_i < $vrijeme_kraj || $vrijeme_kraj_i > $vrijeme_pocetak && $vrijeme_kraj_i <= $vrijeme_kraj) {
                        if ($sala == $sala_i) {
                            $greska_duplikat_sale = 1;
                            $greska_u_dodavanju_casa = 1;
                            break;
                        }
                    }
                }
                if ($greska_u_dodavanju_casa == 0) {
                    $konflikt = array();
                    $konflikt['student'] = array();
                    $konflikt['predmet'] = array();
                    $konflikt['pocetak'] = array();
                    $konflikt['kraj'] = array();
                    $q1 = myquery("select rs.sala,rs.vrijeme_pocetak,rs.vrijeme_kraj,rs.predmet,rs.tip,rs.labgrupa,r.semestar from raspored_stavka rs,\r\n\t\t\t\traspored r where rs.dan_u_sedmici={$dan} and rs.raspored=r.id and r.akademska_godina={$akademska_godina} and r.semestar mod 2 = {$semestar_je_neparan} \r\n\t\t\t\tand rs.dupla=0 and (rs.isjeckana=0 or rs.isjeckana=2) and rs.labgrupa != -1 ");
                    for ($i = 0; $i < mysql_num_rows($q1); $i++) {
                        $sala_i = mysql_result($q1, $i, 0);
                        $vrijeme_pocetak_i = mysql_result($q1, $i, 1);
                        $vrijeme_kraj_i = mysql_result($q1, $i, 2);
                        $predmet_i = mysql_result($q1, $i, 3);
                        $tip_i = mysql_result($q1, $i, 4);
                        $labgrupa_i = mysql_result($q1, $i, 5);
                        $semestar_i = mysql_result($q1, $i, 6);
                        if ($tip_i == "P") {
                            $labgrupa_i = 0;
                        }
                        //ukoliko postoji preklapanje termina (sada gledamo sve rasporede) tačan je uslov ispod
                        if ($vrijeme_pocetak_i >= $vrijeme_pocetak && $vrijeme_pocetak_i < $vrijeme_kraj || $vrijeme_kraj_i > $vrijeme_pocetak && $vrijeme_kraj_i <= $vrijeme_kraj) {
                            // provjera preklapanja studenata u terminu
                            if ($tip == "P") {
                                $q_prvi = myquery("select sp.student from student_predmet sp,ponudakursa pk where sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$akademska_godina} and pk.semestar={$semestar}");
                            } else {
                                $q_prvi = myquery("select student from student_labgrupa where labgrupa={$labgrupa}");
                            }
                            if ($labgrupa_i == 0) {
                                $q_drugi = myquery("select sp.student from student_predmet sp,ponudakursa pk where sp.predmet=pk.id and pk.predmet={$predmet_i} and pk.akademska_godina={$akademska_godina} and pk.semestar={$semestar_i}");
                            } else {
                                $q_drugi = myquery("select student from student_labgrupa where labgrupa={$labgrupa_i}");
                            }
                            for ($p = 0; $p < mysql_num_rows($q_prvi); $p++) {
                                $student_p = mysql_result($q_prvi, $p, 0);
                                for ($d = 0; $d < mysql_num_rows($q_drugi); $d++) {
                                    $student_d = mysql_result($q_drugi, $d, 0);
                                    if ($student_p == $student_d) {
                                        // pronadjen je student u konfliktu i upisujemo ga u niz konflikata
                                        $konflikt['student'][] = $student_p;
                                        $konflikt['predmet'][] = $predmet_i;
                                        $konflikt['pocetak'][] = $vrijeme_pocetak_i;
                                        $konflikt['kraj'][] = $vrijeme_kraj_i;
                                    }
                                }
                            }
                        }
                    }
                }
                if ($greska_u_dodavanju_casa == 0 && count($konflikt['student']) == 0 || count($konflikt['student']) > 0 && $cas_sa_konfliktima == 1) {
                    // vrsi se pretvaranje vremena u jedan broj u intervalu od 1-53 radi lakšeg rada sa prikazom rasporeda
                    $vrijeme_pocetak = $vrijeme_pocetak_sati * 4 + $vrijeme_pocetak_minute;
                    $vrijeme_kraj = $vrijeme_kraj_sati * 4 + $vrijeme_kraj_minute;
                    if ($tip == "P") {
                        $labgrupa = 0;
                    }
                    $q0 = myquery("insert into raspored_stavka set id='NULL', raspored={$raspored_za_edit}, dan_u_sedmici={$dan}, predmet={$predmet},\r\n\t\t\t\t\t\tvrijeme_pocetak={$vrijeme_pocetak},vrijeme_kraj={$vrijeme_kraj},sala={$sala},tip='{$tip}',labgrupa={$labgrupa}");
                    $cas_uspjesno_dodan = 1;
                    zamgerlog("unesen novi cas za akademsku {$naziv_akademske_godine}, studij {$naziv_studija}, semestar {$semestar}", 2);
                    zamgerlog2("dodana stavka u raspored", mysql_insert_id(), $raspored_za_edit);
                    if (count($konflikt['student']) > 0 && $cas_sa_konfliktima == 1) {
                        $cas_dodan_sa_konfliktima = 1;
                    }
                    $q00 = myquery("select max(id) from raspored_stavka");
                    $id_unesene_stavke = mysql_result($q00, 0, 0);
                    $q1 = myquery("select studij,semestar from ponudakursa where predmet={$predmet} and akademska_godina={$akademska_godina} and semestar mod 2 = {$semestar_je_neparan}");
                    for ($i = 0; $i < mysql_num_rows($q1); $i++) {
                        $studij_i = mysql_result($q1, $i, 0);
                        $semestar_i = mysql_result($q1, $i, 1);
                        $postoji_raspored = 0;
                        if ($semestar_i == $semestar && $studij_i == $studij) {
                            $postoji_raspored = 1;
                        } else {
                            $q01 = myquery("select semestar,studij,id from raspored where akademska_godina={$akademska_godina} and semestar mod 2 = {$semestar_je_neparan}");
                            for ($j = 0; $j < mysql_num_rows($q01); $j++) {
                                $studij_j = mysql_result($q01, $j, 1);
                                $semestar_j = mysql_result($q01, $j, 0);
                                $raspored_j = mysql_result($q01, $j, 2);
                                if ($semestar_i == $semestar_j && $studij_i == $studij_j) {
                                    $postoji_raspored = 1;
                                    break;
                                }
                            }
                        }
                        if ($postoji_raspored == 0) {
                            $q02 = myquery("insert into raspored set id='NULL', akademska_godina={$akademska_godina}, studij={$studij_i}, semestar={$semestar_i}");
                            zamgerlog("Kreiran novi raspored za akademsku {$naziv_akademske_godine} godinu", 2);
                        }
                        $q2 = myquery("select id from raspored where akademska_godina={$akademska_godina} and semestar={$semestar_i} and studij={$studij_i}");
                        if (mysql_num_rows($q2) > 0) {
                            $raspored_i = mysql_result($q2, 0, 0);
                            if ($raspored_i != $raspored_za_edit) {
                                $q3 = myquery("insert into raspored_stavka set id='NULL', raspored={$raspored_i}, dan_u_sedmici={$dan}, predmet={$predmet},\r\n\t\t\t\t\t\t\t\t\t\tvrijeme_pocetak={$vrijeme_pocetak},vrijeme_kraj={$vrijeme_kraj},sala={$sala},tip='{$tip}',labgrupa={$labgrupa},dupla={$id_unesene_stavke}");
                                zamgerlog("unesen novi cas za akademsku {$naziv_akademske_godine} godinu", 2);
                                zamgerlog2("dodana stavka u raspored", mysql_insert_id(), $raspored_i);
                            }
                        }
                    }
                }
            }
            $greska_masovnog_unosa_casova = 0;
            // uslov ispod je ispunjen ako je prihvaćena forma za masovni unos sala
            if ($_POST['akcija'] == 'masovni_unos_casova' && check_csrf_token()) {
                $redovi = explode("\n", $_POST['mas_unos_casova']);
                if (trim($_POST['mas_unos_casova']) == '') {
                    $greska_masovnog_unosa_casova = 1;
                    $greska_prazan_prostor_za_mas_unos_casova = 1;
                }
                $greska_u_redu = array();
                $greska_prazni_parametri_u_redu = array();
                $greska_nevalja_tip_casa_u_redu = array();
                $greska_nevalja_dan_u_redu = array();
                $greska_postoji_sala_u_redu = array();
                $greska_ne_postoji_predmet_u_redu = array();
                $greska_ne_postoji_labgrupa_u_redu = array();
                $greska_pogresno_vrijeme_u_redu = array();
                $greska_nevalja_interval_u_redu = array();
                $i = 0;
                foreach ($redovi as $red) {
                    $i++;
                    $red = trim($red);
                    if (strlen($red) < 1) {
                        continue;
                    }
                    // prazan red
                    if ($_POST['separator'] == 1) {
                        list($dan, $predmet, $pocetak, $kraj, $sala, $tip, $labgrupa) = explode(",", $red);
                        $dan = trim($dan);
                        $predmet = trim($predmet);
                        $pocetak = trim($pocetak);
                        $kraj = trim($kraj);
                        $sala = trim($sala);
                        $tip = trim($tip);
                        $labgrupa = trim($labgrupa);
                        $niz = explode(",", $red);
                    } elseif ($_POST['separator'] == 2) {
                        list($dan, $predmet, $pocetak, $kraj, $sala, $tip, $labgrupa) = explode("\t", $red);
                        $dan = trim($dan);
                        $predmet = trim($predmet);
                        $pocetak = trim($pocetak);
                        $kraj = trim($kraj);
                        $sala = trim($sala);
                        $tip = trim($tip);
                        $labgrupa = trim($labgrupa);
                        $niz = explode("\t", $red);
                    }
                    list($pocS, $pocM) = explode(":", $pocetak);
                    list($krajS, $krajM) = explode(":", $kraj);
                    if (count($niz) != 7) {
                        if (count($niz) == 6) {
                            if ($tip != 'P') {
                                $greska_masovnog_unosa_casova = 1;
                                $greska_u_redu[] = $i;
                            }
                        } else {
                            $greska_masovnog_unosa_casova = 1;
                            $greska_u_redu[] = $i;
                        }
                    } else {
                        if ($dan == '' || $predmet == '' || $pocetak == '' || $kraj == '' || $sala == '' || $tip == '' || $labgrupa == '') {
                            $greska_masovnog_unosa_casova = 1;
                            $greska_prazni_parametri_u_redu[] = $i;
                        } else {
                            if (strtoupper($tip) != 'P' && strtoupper($tip) != 'T' && strtoupper($tip) != 'L') {
                                $greska_masovnog_unosa_casova = 1;
                                $greska_nevalja_tip_casa_u_redu[] = $i;
                            }
                            if ($dan != 'pon' && $dan != 'uto' && $dan != 'sri' && $dan != 'cet' && $dan != 'pet' && $dan != 'sub') {
                                $greska_masovnog_unosa_casova = 1;
                                $greska_nevalja_dan_u_redu[] = $i;
                            }
                            $raspored_za_edit = $_REQUEST['raspored_za_edit'];
                            $q1 = myquery("select studij,akademska_godina,semestar from raspored where id={$raspored_za_edit}");
                            $studij = mysql_result($q1, 0, 0);
                            $akademska_godina = mysql_result($q1, 0, 1);
                            $semestar = mysql_result($q1, 0, 2);
                            $q2 = myquery("select p.kratki_naziv from ponudakursa pk,predmet p where p.id=pk.predmet and pk.akademska_godina={$akademska_godina}\r\n\t\t\t\t\t\tand pk.semestar={$semestar} and pk.studij={$studij}");
                            $postoji_predmet = false;
                            for ($j = 0; $j < mysql_num_rows($q2); $j++) {
                                if (mysql_result($q2, $j, 0) == strtoupper($predmet)) {
                                    $postoji_predmet = true;
                                }
                            }
                            if ($postoji_predmet == false) {
                                $greska_masovnog_unosa_casova = 1;
                                $greska_ne_postoji_predmet_u_redu[] = $i;
                            } else {
                                $q0 = myquery("select id from predmet where kratki_naziv='{$predmet}'");
                                $predmet_id = mysql_result($q0, 0, 0);
                                if ($tip != "P") {
                                    $q1 = myquery("select naziv from labgrupa where predmet={$predmet_id}");
                                    $postoji_labgrupa = false;
                                    for ($j = 0; $j < mysql_num_rows($q1); $j++) {
                                        if (mysql_result($q1, $j, 0) == $labgrupa) {
                                            $postoji_labgrupa = true;
                                        }
                                    }
                                    if ($postoji_labgrupa == false) {
                                        $greska_masovnog_unosa_casova = 1;
                                        $greska_ne_postoji_labgrupa_u_redu[] = $i;
                                    }
                                }
                            }
                            if (intval($pocS) < 8 || intval($pocS) > 20 || (intval($krajS) < 8 || intval($krajS) > 21)) {
                                $greska_masovnog_unosa_casova = 1;
                                $greska_pogresno_vrijeme_u_redu[] = $i;
                            } elseif ($pocM != '00' && $pocM != '15' && $pocM != '30' && $pocM != '45' || $krajM != '00' && $krajM != '15' && $krajM != '30' && $krajM != '45') {
                                $greska_masovnog_unosa_casova = 1;
                                $greska_pogresno_vrijeme_u_redu[] = $i;
                            } else {
                                if ($pocM == "00") {
                                    $pocM = 1;
                                } elseif ($pocM == "15") {
                                    $pocM = 2;
                                } elseif ($pocM == "30") {
                                    $pocM = 3;
                                } elseif ($pocM == "45") {
                                    $pocM = 4;
                                }
                                if ($krajM == "00") {
                                    $krajM = 1;
                                } elseif ($krajM == "15") {
                                    $krajM = 2;
                                } elseif ($krajM == "30") {
                                    $krajM = 3;
                                } elseif ($krajM == "45") {
                                    $krajM = 4;
                                }
                                $pocetak_broj = (intval($pocS) - 8) * 4 + $pocM;
                                $kraj_broj = (intval($krajS) - 8) * 4 + $krajM;
                                if ($kraj_broj <= $pocetak_broj) {
                                    $greska_masovnog_unosa_casova = 1;
                                    $greska_nevalja_interval_u_redu[] = $i;
                                }
                            }
                            $q0 = myquery("select id from raspored_sala where naziv='{$sala}'");
                            $sala_id = mysql_result($q0, 0, 0);
                            $dani = array("pon", "uto", "sri", "cet", "pet", "sub");
                            for ($j = 0; $j < count($dani); $j++) {
                                if (strtolower($dan) == $dani[$j]) {
                                    $dan_broj = $j + 1;
                                    break;
                                }
                            }
                            $q2 = myquery("select sala,vrijeme_pocetak,vrijeme_kraj from raspored_stavka where raspored={$raspored_za_edit} and dan_u_sedmici={$dan_broj} and (isjeckana=0 or isjeckana=2)");
                            for ($j = 0; $j < mysql_num_rows($q2); $j++) {
                                $sala_j = mysql_result($q2, $j, 0);
                                $vrijeme_pocetak_j = mysql_result($q2, $j, 1);
                                $vrijeme_kraj_j = mysql_result($q2, $j, 2);
                                if ($vrijeme_pocetak_j >= $pocetak_broj && $vrijeme_pocetak_j < $kraj_broj || $vrijeme_kraj_j > $pocetak_broj && $vrijeme_kraj_j <= $kraj_broj) {
                                    if ($sala_id == $sala_j) {
                                        $greska_masovnog_unosa_casova = 1;
                                        $greska_postoji_sala_u_redu[] = $i;
                                        break;
                                    }
                                }
                            }
                        }
                    }
                }
                // ako nema grešaka u unosu dodajemo sale
                if ($greska_masovnog_unosa_casova == 0) {
                    $i = 0;
                    foreach ($redovi as $red) {
                        $i++;
                        $red = trim($red);
                        if (strlen($red) < 1) {
                            continue;
                        }
                        // prazan red
                        if ($_POST['separator'] == 1) {
                            list($dan, $predmet, $pocetak, $kraj, $sala, $tip, $labgrupa) = explode(",", $red);
                            $dan = trim($dan);
                            $predmet = trim($predmet);
                            $pocetak = trim($pocetak);
                            $kraj = trim($kraj);
                            $sala = trim($sala);
                            $tip = trim($tip);
                            $labgrupa = trim($labgrupa);
                            $niz = explode(",", $red);
                        } elseif ($_POST['separator'] == 2) {
                            list($dan, $predmet, $pocetak, $kraj, $sala, $tip, $labgrupa) = explode("\t", $red);
                            $dan = trim($dan);
                            $predmet = trim($predmet);
                            $pocetak = trim($pocetak);
                            $kraj = trim($kraj);
                            $sala = trim($sala);
                            $tip = trim($tip);
                            $labgrupa = trim($labgrupa);
                            $niz = explode("\t", $red);
                        }
                        list($pocS, $pocM) = explode(":", $pocetak);
                        list($krajS, $krajM) = explode(":", $kraj);
                        if ($pocM == "00") {
                            $pocM = 1;
                        } elseif ($pocM == "15") {
                            $pocM = 2;
                        } elseif ($pocM == "30") {
                            $pocM = 3;
                        } elseif ($pocM == "45") {
                            $pocM = 4;
                        }
                        if ($krajM == "00") {
                            $krajM = 1;
                        } elseif ($krajM == "15") {
                            $krajM = 2;
                        } elseif ($krajM == "30") {
                            $krajM = 3;
                        } elseif ($krajM == "45") {
                            $krajM = 4;
                        }
                        $pocetak_broj = (intval($pocS) - 8) * 4 + $pocM;
                        $kraj_broj = (intval($krajS) - 8) * 4 + $krajM;
                        $q0 = myquery("select id from raspored_sala where naziv='{$sala}'");
                        $sala_id = mysql_result($q0, 0, 0);
                        $dani = array("pon", "uto", "sri", "cet", "pet", "sub");
                        for ($j = 0; $j < count($dani); $j++) {
                            if (strtolower($dan) == $dani[$j]) {
                                $dan_broj = $j + 1;
                                break;
                            }
                        }
                        $q0 = myquery("select id from predmet where kratki_naziv='{$predmet}'");
                        $predmet_id = mysql_result($q0, 0, 0);
                        $tip = strtoupper($tip);
                        if ($tip == "P") {
                            $labgrupa_id = 0;
                        } else {
                            $q0 = myquery("select id from labgrupa where naziv='{$labgrupa}'");
                            $labgrupa_id = mysql_result($q0, 0, 0);
                        }
                        $semestar_je_neparan = $semestar % 2;
                        $q0 = myquery("insert into raspored_stavka set id='NULL', raspored={$raspored_za_edit}, dan_u_sedmici={$dan_broj}, predmet={$predmet_id},\r\n\t\t\t\t\t\tvrijeme_pocetak={$pocetak_broj},vrijeme_kraj={$kraj_broj},sala={$sala_id},tip='{$tip}',labgrupa={$labgrupa_id}");
                        $q00 = myquery("select max(id) from raspored_stavka");
                        $id_unesene_stavke = mysql_result($q00, 0, 0);
                        $q1 = myquery("select studij,semestar from ponudakursa where predmet={$predmet_id} and akademska_godina={$akademska_godina} and semestar mod 2 = {$semestar_je_neparan}");
                        for ($k = 0; $k < mysql_num_rows($q1); $k++) {
                            $studij_i = mysql_result($q1, $k, 0);
                            $semestar_i = mysql_result($q1, $k, 1);
                            $postoji_raspored = 0;
                            if ($semestar_i == $semestar && $studij_i == $studij) {
                                $postoji_raspored = 1;
                            } else {
                                $q01 = myquery("select semestar,studij,id from raspored where akademska_godina={$akademska_godina} and semestar mod 2 = {$semestar_je_neparan}");
                                for ($j = 0; $j < mysql_num_rows($q01); $j++) {
                                    $studij_j = mysql_result($q01, $j, 1);
                                    $semestar_j = mysql_result($q01, $j, 0);
                                    $raspored_j = mysql_result($q01, $j, 2);
                                    if ($semestar_i == $semestar_j && $studij_i == $studij_j) {
                                        $postoji_raspored = 1;
                                        break;
                                    }
                                }
                            }
                            if ($postoji_raspored == 0) {
                                $q02 = myquery("insert into raspored set id='NULL', akademska_godina={$akademska_godina}, studij={$studij_i}, semestar={$semestar_i}");
                            }
                            $q2 = myquery("select id from raspored where akademska_godina={$akademska_godina} and semestar={$semestar_i} and studij={$studij_i}");
                            if (mysql_num_rows($q2) > 0) {
                                $raspored_i = mysql_result($q2, 0, 0);
                                if ($raspored_i != $raspored_za_edit) {
                                    $q3 = myquery("insert into raspored_stavka set id='NULL', raspored={$raspored_i}, dan_u_sedmici={$dan_broj}, predmet={$predmet_id},\r\n\t\t\t\t\t\t\t\t\t\tvrijeme_pocetak={$pocetak_broj},vrijeme_kraj={$kraj_broj},sala={$sala_id},tip='{$tip}',labgrupa={$labgrupa_id},dupla={$id_unesene_stavke}");
                                }
                            }
                        }
                    }
                    $uspjesan_masovni_unos_casova = 1;
                    zamgerlog("Izvršen masovni unos časova", 2);
                    zamgerlog2("izvršen masovni unos časova u raspored");
                }
            }
            if ($_POST['akcija'] == "obrisi_cas" && check_csrf_token()) {
                $id_casa_za_brisanje = intval($_POST['id_casa_za_brisanje']);
                $q0 = myquery("select dupla from raspored_stavka where id={$id_casa_za_brisanje}");
                $dupla = mysql_result($q0, 0, 0);
                if ($dupla == 0) {
                    $q1 = myquery("delete from raspored_stavka where id={$id_casa_za_brisanje}");
                    $q2 = myquery("delete from raspored_stavka where dupla={$id_casa_za_brisanje}");
                } else {
                    $q1 = myquery("delete from raspored_stavka where id={$dupla}");
                    $q2 = myquery("delete from raspored_stavka where dupla={$dupla}");
                }
                $uspjesno_obrisan_cas = 1;
                zamgerlog("obrisan cas", 4);
                // nivo 4: audit
                zamgerlog2("obrisana stavka iz rasporeda", $id_casa_za_brisanje);
            }
            print "<a href=\"?sta=studentska/raspored1\">vrati se na početnu</a>";
            print "<h4>Editovanje rasporeda za akademsku {$naziv_akademske_godine} godinu, studij {$naziv_studija}, {$semestar}. semestar:</h4>";
            print "<hr/>";
            // ukoliko nema konflikata ispunjen je uslov ispod
            if (!isset($_REQUEST['konflikt'])) {
                print "<h4>Dodavanje novog časa:</h4>";
                if ($greska_prazni_parametri_u_casu == 1) {
                    print "<p class=\"crveno\">GREŠKA: Niste unijeli neki podatak.</p>";
                }
                if ($greska_neispravan_interval == 1) {
                    print "<p class=\"crveno\">GREŠKA: Interval koji ste unijeli nije ispravan.</p>";
                }
                if ($greska_duplikat_sale == 1) {
                    print "<p class=\"crveno\">GREŠKA: Sala koju ste odabrali je zauzeta u tom terminu.</p>";
                }
                if ($greska_preklapanje_sa_obaveznim_predmetom == 1) {
                    print "<p class=\"crveno\">GREŠKA: Postoji preklapanje sa predavanjem obaveznog predmeta.</p>";
                }
                if ($greska_preklapanje_obaveznog_predmeta == 1) {
                    print "<p class=\"crveno\">GREŠKA: Predavanje obaveznog predmeta se ne može dodati jer je termin zauzet.</p>";
                }
                if ($greska_nevalja_termin == 1) {
                    print "<p class=\"crveno\">GREŠKA: Nastava traje maksimalno do 21 sat.</p>";
                }
                if ($greska_isti_predmet_ista_grupa == 1) {
                    print "<p class=\"crveno\">GREŠKA: Isti predmet i ista grupa u terminu koji se preklapa !</p>";
                }
                if ($cas_uspjesno_dodan == 1) {
                    nicemessage("Čas je usješno dodan.");
                }
                if ($uspjesno_obrisan_cas == 1) {
                    nicemessage("Čas je usješno obrisan.");
                }
                $broj_konflikata = count($konflikt['student']);
                if ($broj_konflikata > 0 && $cas_dodan_sa_konfliktima != 1) {
                    print "<br>";
                    if ($broj_konflikata == 1) {
                        $varijabla = "konflikt";
                    } elseif ($broj_konflikata == 2 || $broj_konflikata == 3 || $broj_konflikata == 4) {
                        $varijabla = "konflikta";
                    } else {
                        $varijabla = "konflikata";
                    }
                    print "<p class=\"crveno\">Postoji {$broj_konflikata} {$varijabla} pri preklapanju časova.</p>";
                    ?>
				<a href="#" onclick="prikazKonflikata()"><img id="slika_konflikti" src = "images/plus.png" border="0" align="left" />Prikaži konflikte</a>
				<div id="prikaz_konflikata" style="display:none">
					<?php 
                    print "<ul>";
                    for ($i = 0; $i < count($konflikt['student']); $i++) {
                        $student = $konflikt['student'][$i];
                        $predmet = $konflikt['predmet'][$i];
                        $pocetak = $konflikt['pocetak'][$i];
                        $kraj = $konflikt['kraj'][$i];
                        $vrijemePocS = floor(($pocetak - 1) / 4 + 8);
                        $vrijemePocMin = $pocetak % 4;
                        if ($vrijemePocMin == 1) {
                            $vrijemePocM = "00";
                        } elseif ($vrijemePocMin == 2) {
                            $vrijemePocM = "15";
                        } elseif ($vrijemePocMin == 3) {
                            $vrijemePocM = "30";
                        } elseif ($vrijemePocMin == 0) {
                            $vrijemePocM = "45";
                        }
                        $vrijemeP = "{$vrijemePocS}:{$vrijemePocM}";
                        $vrijemeKrajS = floor(($kraj - 1) / 4 + 8);
                        $vrijemeKrajMin = $kraj % 4;
                        if ($vrijemeKrajMin == 1) {
                            $vrijemeKrajM = "00";
                        } elseif ($vrijemeKrajMin == 2) {
                            $vrijemeKrajM = "15";
                        } elseif ($vrijemeKrajMin == 3) {
                            $vrijemeKrajM = "30";
                        } elseif ($vrijemeKrajMin == 0) {
                            $vrijemeKrajM = "45";
                        }
                        $vrijemeK = "{$vrijemeKrajS}:{$vrijemeKrajM}";
                        $q1 = myquery("select ime, prezime from osoba where id={$student}");
                        $ime = mysql_result($q1, 0, 0);
                        $prezime = mysql_result($q1, 0, 1);
                        $q2 = myquery("select naziv from predmet where id={$predmet}");
                        $naziv_predmeta = mysql_result($q2, 0, 0);
                        print "<li><p><b>{$ime} {$prezime}</b> ima predmet <b>{$naziv_predmeta}</b> u terminu <b>{$vrijemeP}-{$vrijemeK}</b></p></li>";
                    }
                    print "</ul>";
                    print "<hr>";
                    ?>
				</div>
				<p>Da li ipak želite dodati čas sa konfliktima: <input type="button" onclick="dodajCasSaKonfliktima()" value=" DA "></p>
				<hr></hr>
				<?php 
                    print "<br></br>";
                }
                $q4 = myquery("select pk.predmet,p.kratki_naziv,pk.obavezan from ponudakursa pk, predmet p where pk.predmet=p.id and pk.studij={$studij} and pk.akademska_godina={$akademska_godina} and pk.semestar={$semestar}");
                print genform("POST", "forma_za_unos_casa");
                $dani = array("Ponedjeljak", "Utorak", "Srijeda", "Četvrtak", "Petak", "Subota");
                $tipovi_nastave = array("P", "T", "L");
                ?>
			<input type="hidden" name="akcija" id="akcija_novi_cas" value="unos_novog_casa">
			<input type="hidden" name="cas_sa_konfliktima" id="cas_sa_konfliktima" value="0">
			<table cellpadding="3" name="cas">
				<tr>
					<td>Dan:</td>
					<td>
						<select name="dan">
							<option value="0">---</option>
							<?php 
                for ($i = 0; $i <= 5; $i++) {
                    $x = $i + 1;
                    print "<option value=\"{$x}\"";
                    if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['dan'] == $x || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['dan'] == $x || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['dan'] == $x) && $cas_dodan_sa_konfliktima != 1) {
                        print " selected=\"selected\"";
                    }
                    print ">{$dani[$i]}</option>";
                }
                ?>
						</select>
					</td>
				</tr>
				<tr>
					<td>Tip:</td>
					<td>
						<select name="tip" id="tip" onchange="javascript:prikaziGrupe()">
							<option value="0">---</option>
							<?php 
                for ($i = 0; $i <= 2; $i++) {
                    print "<option value={$tipovi_nastave[$i]}";
                    if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['tip'] == $tipovi_nastave[$i] || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['tip'] == $tipovi_nastave[$i] || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['tip'] == $tipovi_nastave[$i]) && $cas_dodan_sa_konfliktima != 1) {
                        print " selected=\"selected\"";
                    }
                    if ($tipovi_nastave[$i] == "P") {
                        print ">Predavanje</option>";
                    } elseif ($tipovi_nastave[$i] == "T") {
                        print ">Tutorijal</option>";
                    } elseif ($tipovi_nastave[$i] == "L") {
                        print ">Laboratorijska vježba</option>";
                    }
                }
                ?>
							
						</select>
					</td>
				</tr>
				<tr>
					<td>Predmet:</td>
					<td>
						<select name="predmet" id="predmet" onchange="javascript:prikaziGrupe()">
							<?php 
                if ($_POST['akcija'] != "unos_novog_casa_predfaza" && $_POST['akcija'] != "unos_novog_casa" || $_POST['akcija'] == "unos_novog_casa" && $_POST['predmet'] == 0 || $cas_uspjesno_dodan == 1 || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['predmet'] == 0) {
                    ?>
							<option value="0">---</option>
							<?php 
                }
                for ($i = 0; $i < mysql_num_rows($q4); $i++) {
                    $id_predmeta = mysql_result($q4, $i, 0);
                    $kratki_naziv = mysql_result($q4, $i, 1);
                    $obavezan = mysql_result($q4, $i, 2);
                    print "<option value=\"{$id_predmeta}\"";
                    if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['predmet'] == $id_predmeta || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['predmet'] == $id_predmeta || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['predmet'] == $id_predmeta) && $cas_dodan_sa_konfliktima != 1) {
                        print " selected=\"selected\"";
                    }
                    print ">{$kratki_naziv}";
                    if ($obavezan == 0) {
                        print " (izborni)";
                    }
                    print "</option>";
                }
                ?>
						</select>
					</td>
				</tr>
				<tr>
					<td>Sala:</td>
					<td>
						<select name="sala">
							<option value="0">---</option>
							<?php 
                $q0 = myquery("select id,naziv from raspored_sala order by naziv");
                for ($i = 0; $i < mysql_num_rows($q0); $i++) {
                    $id_sale = mysql_result($q0, $i, 0);
                    $naziv_sale = mysql_result($q0, $i, 1);
                    print "<option value=\"{$id_sale}\"";
                    if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['sala'] == $id_sale || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['sala'] == $id_sale || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['sala'] == $id_sale) && $cas_dodan_sa_konfliktima != 1) {
                        print " selected=\"selected\"";
                    }
                    print ">{$naziv_sale}</option>";
                }
                ?>
						</select>
					</td>
				</tr>
				<tr>
					<td>Vrijeme početka:</td>
					<td>
						<select name="pocetakSat">
							<option value="-1">---</option>
							<?php 
                for ($i = 0; $i <= 12; $i++) {
                    $j = $i + 8;
                    print "<option value=\"{$i}\"";
                    if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['pocetakSat'] == $i || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['pocetakSat'] == $i || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['pocetakSat'] == $i) && $cas_dodan_sa_konfliktima != 1) {
                        print " selected=\"selected\"";
                    }
                    print ">{$j}</option>";
                }
                ?>
						</select>
						:
						<select name="pocetakMin">
							<option value="0">---</option>
							<option value="1"
								<?php 
                if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['pocetakMin'] == 1 || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['pocetakMin'] == 1 || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['pocetakMin'] == 1) && $cas_dodan_sa_konfliktima != 1) {
                    print " selected=\"selected\"";
                }
                ?>
								>00
							</option>
							<option value="2"
								<?php 
                if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['pocetakMin'] == 2 || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['pocetakMin'] == 2 || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['pocetakMin'] == 2) && $cas_dodan_sa_konfliktima != 1) {
                    print " selected=\"selected\"";
                }
                ?>
								>15
							</option>
							<option value="3"
								<?php 
                if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['pocetakMin'] == 3 || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['pocetakMin'] == 3 || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['pocetakMin'] == 3) && $cas_dodan_sa_konfliktima != 1) {
                    print " selected=\"selected\"";
                }
                ?>
								>30
							</option>
							<option value="4"
								<?php 
                if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['pocetakMin'] == 4 || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['pocetakMin'] == 4 || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['pocetakMin'] == 4) && $cas_dodan_sa_konfliktima != 1) {
                    print " selected=\"selected\"";
                }
                ?>
								>45
							</option>
						</select>
					</td>	
				</tr>
				<tr>
					<td>Vrijeme kraja:</td>
					<td>
						<select name="krajSat">
							<option value="-1">---</option>
							<?php 
                for ($i = 0; $i <= 13; $i++) {
                    $j = $i + 8;
                    print "<option value=\"{$i}\"";
                    if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['krajSat'] == $i || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['krajSat'] == $i || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['krajSat'] == $i) && $cas_dodan_sa_konfliktima != 1) {
                        print " selected=\"selected\"";
                    }
                    print ">{$j}</option>";
                }
                ?>
						</select>
						:
						<select name="krajMin">
							<option value="0">---</option>
							<option value="1"
								<?php 
                if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['krajMin'] == 1 || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['krajMin'] == 1 || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['krajMin'] == 1) && $cas_dodan_sa_konfliktima != 1) {
                    print " selected=\"selected\"";
                }
                ?>
								>00
							</option>
							<option value="2"
								<?php 
                if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['krajMin'] == 2 || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['krajMin'] == 2 || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['krajMin'] == 2) && $cas_dodan_sa_konfliktima != 1) {
                    print " selected=\"selected\"";
                }
                ?>
								>15
							</option>
							<option value="3"
								<?php 
                if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['krajMin'] == 3 || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['krajMin'] == 3 || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['krajMin'] == 3) && $cas_dodan_sa_konfliktima != 1) {
                    print " selected=\"selected\"";
                }
                ?>
								>30
							</option>
							<option value="4"
								<?php 
                if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['krajMin'] == 4 || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['krajMin'] == 4 || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['krajMin'] == 4) && $cas_dodan_sa_konfliktima != 1) {
                    print " selected=\"selected\"";
                }
                ?>
								>45
							</option>
						</select>
					</td>	
				</tr>
				<tr>
					<td>Grupa:</td>
					<td>
						<select name="labgrupa" id="labgrupa_za_cas" 
							<?php 
                if ($_POST['akcija'] != "unos_novog_casa_predfaza" && $_POST['akcija'] != "unos_novog_casa") {
                    print " disabled=\"disabled\"";
                } elseif (($_POST['akcija'] == "unos_novog_casa" || $_POST['akcija'] == "unos_novog_casa_predfaza") && intval($_POST['predmet']) == 0) {
                    print " disabled=\"disabled\"";
                } elseif ($_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['tip'] == 'P') {
                    print " disabled=\"disabled\"";
                } elseif ($_POST['akcija'] == "unos_novog_casa" && $_POST['tip'] == 'P' && $greska_u_dodavanju_casa == 1) {
                    print " disabled=\"disabled\"";
                } elseif (($_POST['akcija'] == "unos_novog_casa" || $_POST['akcija'] == "unos_novog_casa_predfaza") && $_POST['tip'] == '0') {
                    print " disabled=\"disabled\"";
                }
                ?>
						>
							<option value="0">---</option>
							<?php 
                if ($_POST['akcija'] == "unos_novog_casa_predfaza" || $_POST['akcija'] == "unos_novog_casa" && intval($_POST['predmet']) != 0) {
                    $id_predmeta = intval($_POST['predmet']);
                    $q0 = myquery("select id,naziv from labgrupa where predmet={$id_predmeta} and akademska_godina={$akademska_godina}");
                    for ($i = 0; $i < mysql_num_rows($q0); $i++) {
                        $id_labgrupe = mysql_result($q0, $i, 0);
                        $naziv_labgrupe = mysql_result($q0, $i, 1);
                        print "<option value=\"{$id_labgrupe}\"";
                        if (($_POST['akcija'] == "unos_novog_casa" && $greska_u_dodavanju_casa == 1 && $_POST['labgrupa'] == $id_labgrupe || $_POST['akcija'] == "unos_novog_casa_predfaza" && $_POST['labgrupa'] == $id_labgrupe || $_POST['akcija'] == "unos_novog_casa" && count($konflikt['student']) > 0 && $_POST['labgrupa'] == $id_labgrupe) && $cas_dodan_sa_konfliktima != 1) {
                            print " selected=\"selected\"";
                        }
                        print ">{$naziv_labgrupe}</option>";
                    }
                }
                ?>
						</select>
					</td>
				</tr>
				<tr>
					<td></td>
					<td align="right"><input type="submit" value=" Dodaj čas"></form></td>
				</tr>
			</table>
			
			
			<h4>Masovni unos časova:</h4>
			<?php 
                if (count($greska_u_redu) > 0 && $greska_masovnog_unosa_casova == 1) {
                    print "<p class=\"crveno\">GREŠKA: Nema potreban broj parametara u redu {$greska_u_redu['0']}";
                    if (count($greska_u_redu) == 1) {
                        print ".</p>";
                    } else {
                        for ($i = 1; $i < count($greska_u_redu); $i++) {
                            if ($i == count($greska_u_redu) - 1) {
                                print " i {$greska_u_redu[$i]}.</p>";
                            } else {
                                print ", {$greska_u_redu[$i]}";
                            }
                        }
                    }
                }
                if (count($greska_prazni_parametri_u_redu) > 0 && $greska_masovnog_unosa_casova == 1) {
                    print "<p class=\"crveno\">GREŠKA: Postoje prazni parametri u redu {$greska_prazni_parametri_u_redu['0']}";
                    if (count($greska_prazni_parametri_u_redu) == 1) {
                        print ".</p>";
                    } else {
                        for ($i = 1; $i < count($greska_prazni_parametri_u_redu); $i++) {
                            if ($i == count($greska_prazni_parametri_u_redu) - 1) {
                                print " i {$greska_prazni_parametri_u_redu[$i]}.</p>";
                            } else {
                                print ", {$greska_prazni_parametri_u_redu[$i]}";
                            }
                        }
                    }
                }
                if (count($greska_nevalja_tip_casa_u_redu) > 0 && $greska_masovnog_unosa_casova == 1) {
                    print "<p class=\"crveno\">GREŠKA: Tip časa nije ispravan  u redu {$greska_nevalja_tip_casa_u_redu['0']}";
                    if (count($greska_nevalja_tip_casa_u_redu) == 1) {
                        print ".</p>";
                    } else {
                        for ($i = 1; $i < count($greska_nevalja_tip_casa_u_redu); $i++) {
                            if ($i == count($greska_nevalja_tip_casa_u_redu) - 1) {
                                print " i {$greska_nevalja_tip_casa_u_redu[$i]}.</p>";
                            } else {
                                print ", {$greska_nevalja_tip_casa_u_redu[$i]}";
                            }
                        }
                    }
                }
                if (count($greska_nevalja_dan_u_redu) > 0 && $greska_masovnog_unosa_casova == 1) {
                    print "<p class=\"crveno\">GREŠKA: Dan nije ispravan u redu {$greska_nevalja_dan_u_redu['0']}";
                    if (count($greska_nevalja_dan_u_redu) == 1) {
                        print ".</p>";
                    } else {
                        for ($i = 1; $i < count($greska_nevalja_dan_u_redu); $i++) {
                            if ($i == count($greska_nevalja_dan_u_redu) - 1) {
                                print " i {$greska_nevalja_dan_u_redu[$i]}.</p>";
                            } else {
                                print ", {$greska_nevalja_dan_u_redu[$i]}";
                            }
                        }
                    }
                }
                if (count($greska_postoji_sala_u_redu) > 0 && $greska_masovnog_unosa_casova == 1) {
                    print "<p class=\"crveno\">GREŠKA: Sala zauzeta u datom terminu u redu {$greska_postoji_sala_u_redu['0']}";
                    if (count($greska_postoji_sala_u_redu) == 1) {
                        print ".</p>";
                    } else {
                        for ($i = 1; $i < count($greska_postoji_sala_u_redu); $i++) {
                            if ($i == count($greska_postoji_sala_u_redu) - 1) {
                                print " i {$greska_postoji_sala_u_redu[$i]}.</p>";
                            } else {
                                print ", {$greska_postoji_sala_u_redu[$i]}";
                            }
                        }
                    }
                }
                if (count($greska_ne_postoji_labgrupa_u_redu) > 0 && $greska_masovnog_unosa_casova == 1) {
                    print "<p class=\"crveno\">GREŠKA: Ne postoji grupa u redu {$greska_ne_postoji_labgrupa_u_redu['0']}";
                    if (count($greska_ne_postoji_labgrupa_u_redu) == 1) {
                        print ".</p>";
                    } else {
                        for ($i = 1; $i < count($greska_ne_postoji_labgrupa_u_redu); $i++) {
                            if ($i == count($greska_ne_postoji_labgrupa_u_redu) - 1) {
                                print " i {$greska_ne_postoji_labgrupa_u_redu[$i]}.</p>";
                            } else {
                                print ", {$greska_ne_postoji_labgrupa_u_redu[$i]}";
                            }
                        }
                    }
                }
                if (count($greska_ne_postoji_predmet_u_redu) > 0 && $greska_masovnog_unosa_casova == 1) {
                    print "<p class=\"crveno\">GREŠKA: Ne postoji predmet u redu {$greska_ne_postoji_predmet_u_redu['0']}";
                    if (count($greska_ne_postoji_predmet_u_redu) == 1) {
                        print ".</p>";
                    } else {
                        for ($i = 1; $i < count($greska_ne_postoji_predmet_u_redu); $i++) {
                            if ($i == count($greska_ne_postoji_predmet_u_redu) - 1) {
                                print " i {$greska_ne_postoji_predmet_u_redu[$i]}.</p>";
                            } else {
                                print ", {$greska_ne_postoji_predmet_u_redu[$i]}";
                            }
                        }
                    }
                }
                if (count($greska_pogresno_vrijeme_u_redu) > 0 && $greska_masovnog_unosa_casova == 1) {
                    print "<p class=\"crveno\">GREŠKA: Vrijeme nije ispravno unešeno u redu {$greska_pogresno_vrijeme_u_redu['0']}";
                    if (count($greska_pogresno_vrijeme_u_redu) == 1) {
                        print ".</p>";
                    } else {
                        for ($i = 1; $i < count($greska_pogresno_vrijeme_u_redu); $i++) {
                            if ($i == count($greska_pogresno_vrijeme_u_redu) - 1) {
                                print " i {$greska_pogresno_vrijeme_u_redu[$i]}.</p>";
                            } else {
                                print ", {$greska_pogresno_vrijeme_u_redu[$i]}";
                            }
                        }
                    }
                }
                if (count($greska_nevalja_interval_u_redu) > 0 && $greska_masovnog_unosa_casova == 1) {
                    print "<p class=\"crveno\">GREŠKA: Interval nije ispravan u redu {$greska_nevalja_interval_u_redu['0']}";
                    if (count($greska_nevalja_interval_u_redu) == 1) {
                        print ".</p>";
                    } else {
                        for ($i = 1; $i < count($greska_nevalja_interval_u_redu); $i++) {
                            if ($i == count($greska_nevalja_interval_u_redu) - 1) {
                                print " i {$greska_nevalja_interval_u_redu[$i]}.</p>";
                            } else {
                                print ", {$greska_nevalja_interval_u_redu[$i]}";
                            }
                        }
                    }
                }
                if ($greska_prazan_prostor_za_mas_unos_casova == 1) {
                    print "<p class=\"crveno\">GREŠKA: Niste unijeli nikakve podatke u prostor za masovni unos.</p>";
                }
                if ($uspjesan_masovni_unos_casova == 1) {
                    nicemessage("Uspješno unešeni časovi!");
                }
                ?>
			
			<a href="#" onclick="daj_stablo('uputstvo_za_mas_unos_casova')"><img id="img-uputstvo_za_mas_unos_casova" src = "images/plus.png" border="0" align="left" />Uputstvo za masovni unos</a>
			<div id="uputstvo_za_mas_unos_casova" style="display:none">
				<p>Unesite sljedeće podatke odvojene zarezom (ili [tab]-om ):</p> 
				<ul>
				<li><p><span class="plavo_bold">dan u sedmici: </span> (pon, uto, sri, cet, pet, sub)</p></li>
				<li><p><span class="plavo_bold">predmet: </span> unesite skraćeni naziv predmeta, npr im za inžinjersku matematiku</p></li>
				<li><p><span class="plavo_bold">vrijeme početka: </span> unesite vrijeme u intervalu 8:00 do 20:45</p></li>
				<li><p><span class="plavo_bold">vrijeme kraja: </span> unesite vrijeme u intervalu 8:15 do 21:00</p></li>
				<li><p><span class="plavo_bold">ime sale </span></p></li>
				<li>
					<p><span class="plavo_bold">tip časa: </span></p>
					<ul>
						<li><p><span class="plavo_bold">P: </span> za predavanje</p></li>
						<li><p><span class="plavo_bold">T: </span> za tutorijal</p></li>
						<li><p><span class="plavo_bold">L: </span> za laboratorijsku vježbu</p></li>
					</ul>
				</li>
				<li><p><span class="plavo_bold">ime grupe: </span>za predavanje ovaj parametar je prazan</p></li>
				</ul>
				<p>Ukoliko unosite podatke iz Excel-a odaberite opciju unos iz excela(odvajanje sa [tab]-om)</p>
				<p>Svaki novi čas dodajte u novom redu</p>
				<p>primjer:</p>
				<p>pon, im, 8:15, 9:30, s01, P</p>
				<p>pon, if, 9:30, 10:30, s02, T, g1</p>
			</div>
			<?php 
                echo genform("POST");
                ?>
			<input type="hidden" name="akcija" value="masovni_unos_casova">
			<textarea name="mas_unos_casova" rows="10" cols="40">
			<?php 
                if (isset($_POST['mas_unos_casova'])) {
                    print trim($_POST['mas_unos_casova']);
                }
                ?>
			</textarea>
			<br/>
			<p>Tip unosa:
			<select name="separator">
				<option value="1">standardan unos (odvajanje zarezom)</option>
				<option value="2">unos iz excela(odvajanje sa [tab]-om)</option>
			</select>
			</p>
			<input type="submit" value=" Dodaj "></form>
			<br></br>
			
			
			<?php 
                echo genform("POST", "brisanjecasa");
                ?>
			<input type="hidden" name="akcija" value="obrisi_cas">
			<input type="hidden" name="id_casa_za_brisanje" id="id_casa_za_brisanje" value=""></form>
			
			
			
			<h4>Izgled rasporeda:</h4>
			<table class="raspored" border="1" cellspacing="0">
				<tr>
					<th>
						<p>Sat/</p>
						<p>Dan</p>
					</th>
					<?php 
                for ($i = 8; $i <= 20; $i++) {
                    $j = $i + 1;
                    ?>
						<th>
							<p class="bold"><?php 
                    print "{$i}";
                    ?>
</p>
							<p><?php 
                    print "00";
                    ?>
</p>
						</th>
						<th>
							<p><br></p>
							<p><?php 
                    print "15";
                    ?>
</p>
						</th>
						<th>
							<p><br></p>
							<p><?php 
                    print "30";
                    ?>
</p>
						</th>
						<th>
							<p><br></p>
							<p><?php 
                    print "45";
                    ?>
</p>
						</th>
					<?php 
                }
                ?>
				</tr>
				<?php 
                // petlja za 6 dana u sedmici
                for ($i = 1; $i <= 6; $i++) {
                    print "<tr>";
                    $q0 = myquery("select vrijeme_pocetak,vrijeme_kraj from raspored_stavka where dan_u_sedmici={$i} and raspored={$raspored_za_edit} and (isjeckana=0 or isjeckana=2) and labgrupa!= -1");
                    // sada je potrebno naći maksimalni broj preklapanja termina da bi znali koliki je rowspan potreban za dan $i
                    // poredimo svaki interval casa sa svakim
                    $broj_preklapanja = array();
                    for ($j = 0; $j < 53; $j++) {
                        $broj_preklapanja[] = 0;
                    }
                    for ($j = 0; $j < mysql_num_rows($q0); $j++) {
                        $pocetak = mysql_result($q0, $j, 0);
                        $kraj = mysql_result($q0, $j, 1);
                        for ($k = $pocetak; $k < $kraj; $k++) {
                            $broj_preklapanja[$k]++;
                        }
                    }
                    $max_broj_preklapanja = max($broj_preklapanja);
                    if ($i == 1) {
                        $dan_tekst = "PON";
                    } elseif ($i == 2) {
                        $dan_tekst = "UTO";
                    } elseif ($i == 3) {
                        $dan_tekst = "SRI";
                    } elseif ($i == 4) {
                        $dan_tekst = "ČET";
                    } elseif ($i == 5) {
                        $dan_tekst = "PET";
                    } elseif ($i == 6) {
                        $dan_tekst = "SUB";
                    }
                    // sada pravimo dvodimenzionalni niz, koji predstavlja zauzetost termina u određenom redu
                    $zauzet = array();
                    for ($j = 0; $j < $max_broj_preklapanja; $j++) {
                        $zauzet = array();
                    }
                    for ($j = 0; $j < $max_broj_preklapanja; $j++) {
                        for ($k = 0; $k < 53; $k++) {
                            $zauzet[$j][] = 0;
                        }
                    }
                    // zauzet[1][0]=1 znaci da je termin 1 zauzet u drugom redu
                    $q1 = myquery("select id,raspored,predmet,vrijeme_pocetak,vrijeme_kraj,sala,tip,labgrupa from raspored_stavka where dan_u_sedmici={$i} and raspored={$raspored_za_edit} \r\n\t\t\t\t\tand (isjeckana=0 or isjeckana=2) and labgrupa != -1 order by id");
                    $gdje = array();
                    $gdje["id_stavke"] = array();
                    $gdje["red_stavke"] = array();
                    // red u kojem stavka ide
                    // primjer
                    // gdje["id_stavke"][0]=5 znaci da je id prve stavke 5
                    // gdje["red_stavke"][0]=3 znaci da stavka 1 ide u 4. red
                    // [0] pretstavlja prvu stavku jer indeksi kreću od nule i druga kolona treba biti ista-- u ovom slucaju [0]
                    for ($j = 0; $j < mysql_num_rows($q1); $j++) {
                        $id_stavke = mysql_result($q1, $j, 0);
                        $gdje["id_stavke"][$j] = $id_stavke;
                        // i ovo vise ne diramo jer znamo koji je id stavke na osnovu nepoznate $j
                        $gdje["red_stavke"][$j] = 0;
                        // postavljamo na nulu jer još ne znamo gdje ide određena stavka
                    }
                    for ($j = 0; $j < mysql_num_rows($q1); $j++) {
                        $id_stavke = mysql_result($q1, $j, 0);
                        $pocetak = mysql_result($q1, $j, 3);
                        $kraj = mysql_result($q1, $j, 4);
                        for ($k = 0; $k < $max_broj_preklapanja; $k++) {
                            $zauzet_red = 0;
                            while ($pocetak != $kraj) {
                                if ($zauzet[$k][$pocetak - 1] == 1) {
                                    $zauzet_red = 1;
                                    // ako je uslov ispunjen nađen je barem jedan zauzet red
                                    break;
                                }
                                $pocetak++;
                            }
                            if ($zauzet_red == 0) {
                                // ako nije zauzet termin u tom redu dodajemo termin u taj red i prekidamo petlju
                                $gdje["red_stavke"][$j] = $k;
                                // $stavka $j ide u red $k
                                //sada proglasavamo termin zauzetim u tom redu $k+1
                                $pocetak = mysql_result($q1, $j, 3);
                                while ($pocetak != $kraj) {
                                    $zauzet[$k][$pocetak - 1] = 1;
                                    // termin $pocetak se zauzima u redu $k+1
                                    $pocetak++;
                                }
                            }
                            if ($zauzet_red == 0) {
                                break;
                            }
                        }
                    }
                    print "<td rowspan=\"{$max_broj_preklapanja}\">{$dan_tekst}</td>";
                    for ($j = 0; $j < $max_broj_preklapanja; $j++) {
                        if ($j > 0) {
                            print "</tr><tr>";
                        }
                        $zadnji = 1;
                        for ($m = 1; $m <= 52; $m++) {
                            for ($k = 0; $k < mysql_num_rows($q1); $k++) {
                                $id_stavke = mysql_result($q1, $k, 0);
                                $q00 = myquery("select r.akademska_godina,r.semestar from raspored r, raspored_stavka rs where r.id=rs.raspored and (rs.isjeckana=0 or rs.isjeckana=2) and rs.id={$id_stavke}");
                                $akademska_godina = mysql_result($q00, 0, 0);
                                $semestar = mysql_result($q00, 0, 1);
                                $semestar_je_neparan = $semestar % 2;
                                $predmet = mysql_result($q1, $k, 2);
                                $q2 = myquery("select kratki_naziv from predmet where id={$predmet}");
                                $predmet_naziv = mysql_result($q2, 0, 0);
                                $pocetak = mysql_result($q1, $k, 3);
                                $kraj = mysql_result($q1, $k, 4);
                                $sala = mysql_result($q1, $k, 5);
                                $q3 = myquery("select naziv from raspored_sala where id={$sala}");
                                $sala_naziv = mysql_result($q3, 0, 0);
                                $tip = mysql_result($q1, $k, 6);
                                $labgrupa = mysql_result($q1, $k, 7);
                                if ($labgrupa != 0) {
                                    if ($labgrupa != -1) {
                                        $q4 = myquery("select naziv from labgrupa where id={$labgrupa}");
                                        $labgrupa_naziv = mysql_result($q4, 0, 0);
                                    }
                                }
                                $interval = $kraj - $pocetak;
                                if ($gdje["red_stavke"][$k] == $j && $pocetak == $m) {
                                    for ($n = $zadnji; $n < $pocetak; $n++) {
                                        print "<td></td>";
                                    }
                                    $zadnji = $kraj;
                                    $vrijemePocS = floor(($pocetak - 1) / 4 + 8);
                                    $vrijemePocMin = $pocetak % 4;
                                    if ($vrijemePocMin == 1) {
                                        $vrijemePocM = "00";
                                    } elseif ($vrijemePocMin == 2) {
                                        $vrijemePocM = "15";
                                    } elseif ($vrijemePocMin == 3) {
                                        $vrijemePocM = "30";
                                    } elseif ($vrijemePocMin == 0) {
                                        $vrijemePocM = "45";
                                    }
                                    $vrijemeP = "{$vrijemePocS}:{$vrijemePocM}";
                                    $vrijemeKrajS = floor(($kraj - 1) / 4 + 8);
                                    $vrijemeKrajMin = $kraj % 4;
                                    if ($vrijemeKrajMin == 1) {
                                        $vrijemeKrajM = "00";
                                    } elseif ($vrijemeKrajMin == 2) {
                                        $vrijemeKrajM = "15";
                                    } elseif ($vrijemeKrajMin == 3) {
                                        $vrijemeKrajM = "30";
                                    } elseif ($vrijemeKrajMin == 0) {
                                        $vrijemeKrajM = "45";
                                    }
                                    $vrijemeK = "{$vrijemeKrajS}:{$vrijemeKrajM}";
                                    $q3 = myquery("select obavezan from ponudakursa where predmet={$predmet}");
                                    if (mysql_num_rows($q3) > 0) {
                                        $obavezan = mysql_result($q3, 0, 0);
                                    }
                                    $broj_konflikata = prikaziKonflikte($id_stavke, 0);
                                    if ($labgrupa_naziv == "(Svi studenti)") {
                                        $labgrupa_naziv = "---";
                                    }
                                    print "\r\n\t\t\t\t\t\t\t\t\t\t<td colspan=\"{$interval}\">\r\n\t\t\t\t\t\t\t\t\t\t\t<table class=\"cas\" align=\"center\">";
                                    if ($broj_konflikata > 0) {
                                        print "\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<td><a href=\"?sta=studentska/raspored1&raspored_za_edit={$raspored_za_edit}&konflikt={$id_stavke}\"><img src=\"images/16x16/log_error.png\" width=\"16\" height=\"16\" border=\"0\">{$broj_konflikata}</a></td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</tr>";
                                    }
                                    print "\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td><p class=\"bold\">{$tip}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td><p class=\"plavo\">{$predmet_naziv}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>";
                                    if ($tip != 'P') {
                                        print "\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td><p class=\"bold\">{$labgrupa_naziv}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>";
                                    } else {
                                        print "\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td><p>---</p></td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>";
                                    }
                                    print "\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td><p class=\"plavo\">{$sala_naziv}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td><p class=\"mala_slova\">{$vrijemeP}-{$vrijemeK}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<td><p><a  href=\"javascript:onclick=brisanje_casa('{$id_stavke}')\"> obriši čas </a></p></td>\r\n\t\t\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t\t\t</td>";
                                }
                            }
                        }
                    }
                    print "</tr>";
                }
                ?>
				
			</table>	
		<?php 
            } else {
                print "<p><a href=\"?sta=studentska/raspored1&raspored_za_edit={$raspored_za_edit}\">Vrati se nazad</a></p>";
                $id_stavke_sa_konfliktima = $_REQUEST['konflikt'];
                prikaziKonflikte($id_stavke_sa_konfliktima, 1);
            }
        } else {
            if ($uspjesno_unesen_raspored == 1) {
                nicemessage("Uspješno je unesen novi raspored.");
            }
            if ($uspjesno_obrisan_raspored == 1) {
                nicemessage("Raspored je uspješno obrisan.");
            }
            print "<p><a href=\"?sta=studentska/raspored1&edit_sala=1\">Administracija sala</a></p>";
            print "<hr></hr><h4>Dodavanje novog rasporeda:</h4>";
            print genform("POST", "forma_za_unos_rasporeda");
            ?>
		<input type="hidden" name="akcija" value="unos_novog_rasporeda">
		<?php 
            if ($greska_postoji_raspored == 1) {
                print "<p class=\"crveno\">Postoji raspored sa tim parametrima.</p>";
            }
            ?>
		<table id="raspored" cellpadding="3">
		<tr>
			<td align="left" width="120">Akademska godina:</td>
			<td>
				<select name="akademska_godina">
				<?php 
            $q0 = mysql_query("select id,naziv,aktuelna from akademska_godina order by naziv desc");
            while ($r0 = mysql_fetch_row($q0)) {
                print "<option value=\"{$r0['0']}\"";
                if ($greska_postoji_raspored == 1) {
                    if ($_POST['akademska_godina'] == $r0[0]) {
                        print " selected";
                    }
                } else {
                    if ($r0[2] == 1) {
                        print " selected";
                    }
                }
                print ">{$r0['1']}</option>\n";
            }
            ?>
				</select>
			</td>
		</tr>
		<tr>
			<td align="left" width="120">Studij:</td>
			<td>
				<select name="studij" id="studij">
				<?php 
            $q0 = mysql_query("select id,naziv from studij");
            while ($r0 = mysql_fetch_row($q0)) {
                print "<option value=\"{$r0['0']}\"";
                if ($greska_postoji_raspored == 1 && $r0[0] == $_POST['studij']) {
                    print " selected";
                }
                print ">{$r0['1']}</option>\n";
            }
            ?>
				</select>
			</td>
		</tr>
		<tr>
			<td align="left" width="120">Semestar:</td>
			<td>
	           	<select name="semestar">
	           		<?php 
            for ($i = 1; $i <= 6; $i++) {
                ?>
		           		<option value="<?php 
                echo $i;
                ?>
" <?php 
                if ($greska_postoji_raspored == 1 && $_POST['semestar'] == $i) {
                    print " selected";
                }
                ?>
><?php 
                echo $i;
                ?>
</option>

	                <?php 
            }
            ?>
	           	</select>	
			</td>
			<?php 
            if ($greska_prazan_kapacitet == 1) {
                print "<td><p class=\"crveno\">niste unijeli kapacitet</p></td>";
            }
            ?>
			<?php 
            if ($greska_kapacitet_nije_broj == 1) {
                print "<td><p class=\"crveno\">kapacitet treba biti broj</p></td>";
            }
            ?>
		</tr>
		<tr>
			<td></td>
			<td align="right"><input type="submit" value=" Dodaj "></td>
		</tr>
		</table>
		</form>
		<?php 
            echo genform("POST", "brisanjerasporeda");
            ?>
		<input type="hidden" name="akcija" value="obrisi_raspored">
		<input type="hidden" name="id_rasporeda_za_brisanje" id="id_rasporeda_za_brisanje" value=""></form>
		
		<hr></hr>
		<h4>Postojeći rasporedi:</h4>
		<table class="sale" border="1" cellspacing="0">
			<?php 
            $q1 = myquery("select id,studij,akademska_godina,semestar from raspored order by akademska_godina,studij,semestar");
            if (mysql_num_rows($q1) < 1) {
                print "<p>Nema kreiranih rasporeda</p>";
            } else {
                ?>
				<th>Studij</th>
				<th>Akademska godina</th>
				<th>Semestar</th>
				<th colspan="2">Akcije</th>
				<?php 
                for ($i = 0; $i < mysql_num_rows($q1); $i++) {
                    $id_rasporeda = mysql_result($q1, $i, 0);
                    $studij = mysql_result($q1, $i, 1);
                    $akademska_godina = mysql_result($q1, $i, 2);
                    $semestar = mysql_result($q1, $i, 3);
                    $q2 = myquery("select naziv from studij where id={$studij}");
                    $naziv_studija = mysql_result($q2, 0, 0);
                    $q3 = myquery("select naziv from akademska_godina where id={$akademska_godina}");
                    $naziv_akademske_godine = mysql_result($q3, 0, 0);
                    print "<tr>";
                    print "<td>{$naziv_studija}</td>";
                    print "<td>{$naziv_akademske_godine}</td>";
                    print "<td>{$semestar}</td>";
                    print "<td width=\"80\"><a  href=\"?sta=studentska/raspored1&raspored_za_edit={$id_rasporeda}\"> izmijeni </a></td>";
                    print "<td width=\"80\"><a  href=\"javascript:onclick=brisanje_rasporeda('{$id_rasporeda}')\"> obriši </a></td>";
                    print "</tr>";
                }
            }
            ?>
		</table>
		<br></br>
		<hr></hr>
		<h4>Kopiranje rasporeda:</h4>
		<?php 
            echo genform("POST", "kopiranjerasporeda");
            ?>
		<input type="hidden" name="akcija" value="kopiraj_raspored">
		<?php 
            $q01 = myquery("select id,naziv from akademska_godina order by id");
            print "<p>Kopiraj sve rasporede iz";
            print "<select name=\"izvor\">";
            for ($i = 0; $i < mysql_num_rows($q01); $i++) {
                $id = mysql_result($q01, $i, 0);
                $naziv = mysql_result($q01, $i, 1);
                print "<option value=\"{$id}\">{$naziv}</option>";
            }
            print "</select>";
            print "     u     ";
            print "<select name=\"odrediste\">";
            for ($i = 0; $i < mysql_num_rows($q01); $i++) {
                $id = mysql_result($q01, $i, 0);
                $naziv = mysql_result($q01, $i, 1);
                print "<option value=\"{$id}\">{$naziv}</option>";
            }
            print "</select>";
            print " akademsku godinu? ";
            print "<input type=\"submit\" value=\" OK \" onclick=\"javascript:kopiranjeSvihRasporeda()\"></p>";
        }
        // kraj stranice za rad sa rasporedom
    }
    ?>
</td></tr>
</table>
</center>
<?php 
}
Exemplo n.º 14
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 
    }
}
Exemplo n.º 15
0
function common_pdfraspored()
{
    ?>
<LINK href="css/raspored1.css" rel="stylesheet" type="text/css">
<?php 
    function ob_file_callback($buffer)
    {
        global $sadrzaj_bafera_za_pdf;
        $sadrzaj_bafera_za_pdf = $buffer;
    }
    global $string_pdf, $string, $sadrzaj_bafera_za_pdf, $userid;
    ob_start('ob_file_callback');
    $tip = my_escape($_GET['tip']);
    if ($tip == "student") {
        // Aktuelna akademska godina
        $q0 = myquery("select id,naziv from akademska_godina where aktuelna=1");
        $ag = mysql_result($q0, 0, 0);
        // Studij koji student trenutno sluša
        $q1 = myquery("select studij,semestar from student_studij where student={$userid} and akademska_godina={$ag} order by semestar desc limit 1");
        $semestar = mysql_result($q1, 0, 1);
        $semestar_neparan = $semestar % 2;
        $studij = mysql_result($q1, 0, 0);
        $q0 = myquery("select id from raspored where akademska_godina={$ag} and studij={$studij} and semestar={$semestar}");
        $id_rasporeda = mysql_result($q0, 0, 0);
        ?>
		<table border="1" cellspacing="0" align="center">
			<tr>
				<th>
					<p>Sat/</p>
					<p>Dan</p>
				</th>
				<?php 
        for ($i = 8; $i <= 20; $i++) {
            $j = $i + 1;
            ?>
					<th>
						<p><?php 
            print "{$i}";
            ?>
</p>
						<p><?php 
            print "00";
            ?>
</p>
					</th>
					<th>
						<p></p>
						<p><?php 
            print "15";
            ?>
</p>
					</th>
					<th>
						<p></p>
						<p><?php 
            print "30";
            ?>
</p>
					</th>
					<th>
						<p></p>
						<p><?php 
            print "45";
            ?>
</p>
					</th>
				<?php 
        }
        ?>
			</tr>
			<?php 
        // petlja za 6 dana u sedmici
        for ($i = 1; $i <= 6; $i++) {
            print "<tr>";
            $q0 = myquery("select rs.vrijeme_pocetak,rs.vrijeme_kraj from raspored_stavka rs,student_predmet sp,ponudakursa pk,predmet p,raspored r \r\n\t\t\t\twhere rs.dan_u_sedmici={$i} and sp.predmet=pk.id and pk.predmet=p.id and rs.predmet=p.id and rs.raspored=r.id  and r.akademska_godina={$ag} \r\n\t\t\t\tand sp.student={$userid} and pk.akademska_godina={$ag} and pk.semestar mod 2={$semestar_neparan} and rs.dupla=0 \r\n\t\t\t\tand (rs.isjeckana=0 or rs.isjeckana=2) and rs.labgrupa != -1");
            // sada je potrebno naći maksimalni broj preklapanja termina da bi znali koliki je rowspan potreban za dan $i
            // poredimo svaki interval casa sa svakim
            $broj_preklapanja = array();
            for ($j = 0; $j < 53; $j++) {
                $broj_preklapanja[] = 0;
            }
            for ($j = 0; $j < mysql_num_rows($q0); $j++) {
                $pocetak = mysql_result($q0, $j, 0);
                $kraj = mysql_result($q0, $j, 1);
                for ($k = $pocetak; $k < $kraj; $k++) {
                    $broj_preklapanja[$k]++;
                }
            }
            $max_broj_preklapanja = max($broj_preklapanja);
            if ($i == 1) {
                $dan_tekst = "PON";
            } elseif ($i == 2) {
                $dan_tekst = "UTO";
            } elseif ($i == 3) {
                $dan_tekst = "SRI";
            } elseif ($i == 4) {
                $dan_tekst = "ČET";
            } elseif ($i == 5) {
                $dan_tekst = "PET";
            } elseif ($i == 6) {
                $dan_tekst = "SUB";
            }
            // sada pravimo dvodimenzionalni niz, koji predstavlja zauzetost termina u određenom redu
            $zauzet = array();
            for ($j = 0; $j < $max_broj_preklapanja; $j++) {
                $zauzet = array();
            }
            for ($j = 0; $j < $max_broj_preklapanja; $j++) {
                for ($k = 0; $k <= 52; $k++) {
                    $zauzet[$j][] = 0;
                }
            }
            // zauzet[1][0]=1 znaci da je termin 1 zauzet u drugom redu
            $q1 = myquery("select rs.id,rs.raspored,rs.predmet,rs.vrijeme_pocetak,rs.vrijeme_kraj,rs.sala,rs.tip,rs.labgrupa,sp.predmet \r\n\t\t\t\t\tfrom raspored_stavka rs,student_predmet sp,ponudakursa pk,predmet p,raspored r where rs.dan_u_sedmici={$i} and sp.predmet=pk.id and pk.predmet=p.id \r\n\t\t\t\t\tand rs.raspored=r.id and rs.predmet=p.id and sp.student={$userid} and r.akademska_godina={$ag} and pk.akademska_godina={$ag} and pk.semestar mod 2={$semestar_neparan} \r\n\t\t\t\t\tand rs.dupla=0 and (rs.isjeckana=0 or rs.isjeckana=2) and rs.labgrupa != -1 order by rs.id");
            $gdje = array();
            $gdje["id_stavke"] = array();
            $gdje["red_stavke"] = array();
            // red u kojem stavka ide
            // primjer
            // gdje["id_stavke"][0]=5 znaci da je id prve stavke 5
            // gdje["red_stavke"][0]=3 znaci da stavka 1 ide u 4. red
            // [0] pretstavlja prvu stavku jer indeksi kreću od nule i druga kolona treba biti ista-- u ovom slucaju [0]
            for ($j = 0; $j < mysql_num_rows($q1); $j++) {
                $id_stavke = mysql_result($q1, $j, 0);
                $gdje["id_stavke"][$j] = $id_stavke;
                // i ovo vise ne diramo jer znamo koji je id stavke na osnovu nepoznate $j
                $gdje["red_stavke"][$j] = 0;
                // postavljamo na nulu jer još ne znamo gdje ide određena stavka
            }
            for ($j = 0; $j < mysql_num_rows($q1); $j++) {
                $id_stavke = mysql_result($q1, $j, 0);
                $pocetak = mysql_result($q1, $j, 3);
                $kraj = mysql_result($q1, $j, 4);
                for ($k = 0; $k < $max_broj_preklapanja; $k++) {
                    $zauzet_red = 0;
                    while ($pocetak != $kraj) {
                        if ($zauzet[$k][$pocetak - 1] == 1) {
                            $zauzet_red = 1;
                            // ako je uslov ispunjen nađen je barem jedan zauzet red
                            break;
                        }
                        $pocetak++;
                    }
                    if ($zauzet_red == 0) {
                        // ako nije zauzet termin u tom redu dodajemo termin u taj red i prekidamo petlju
                        $gdje["red_stavke"][$j] = $k;
                        // $stavka $j ide u red $k
                        //sada proglasavamo termin zauzetim u tom redu $k+1
                        $pocetak = mysql_result($q1, $j, 3);
                        while ($pocetak != $kraj) {
                            $zauzet[$k][$pocetak - 1] = 1;
                            // termin $pocetak se zauzima u redu $k+1
                            $pocetak++;
                        }
                    }
                    if ($zauzet_red == 0) {
                        break;
                    }
                }
            }
            print "<td rowspan=\"{$max_broj_preklapanja}\">{$dan_tekst}</td>";
            for ($j = 0; $j < $max_broj_preklapanja; $j++) {
                if ($j > 0) {
                    print "</tr><tr>";
                }
                $zadnji = 1;
                $zadnji_m = 0;
                for ($m = 1; $m <= 52; $m++) {
                    if ($viska_cas == 1) {
                        $viska_cas = 0;
                        $m = $zadnji_m - 1;
                        continue;
                    }
                    for ($k = 0; $k < mysql_num_rows($q1); $k++) {
                        $id_stavke = mysql_result($q1, $k, 0);
                        $predmet = mysql_result($q1, $k, 2);
                        $q2 = myquery("select kratki_naziv from predmet where id={$predmet}");
                        $predmet_naziv = mysql_result($q2, 0, 0);
                        $pocetak = mysql_result($q1, $k, 3);
                        $kraj = mysql_result($q1, $k, 4);
                        $sala = mysql_result($q1, $k, 5);
                        $q3 = myquery("select naziv from raspored_sala where id={$sala}");
                        $sala_naziv = mysql_result($q3, 0, 0);
                        $tip = mysql_result($q1, $k, 6);
                        $labgrupa = mysql_result($q1, $k, 7);
                        $studentov_predmet = mysql_result($q1, $k, 8);
                        if ($labgrupa != 0) {
                            $q4 = myquery("select naziv from labgrupa where id={$labgrupa}");
                            $labgrupa_naziv = mysql_result($q4, 0, 0);
                        }
                        $interval = $kraj - $pocetak;
                        if ($gdje["red_stavke"][$k] == $j && $pocetak == $m) {
                            $vrijemePocS = floor(($pocetak - 1) / 4 + 8);
                            $vrijemePocMin = $pocetak % 4;
                            if ($vrijemePocMin == 1) {
                                $vrijemePocM = "00";
                            } elseif ($vrijemePocMin == 2) {
                                $vrijemePocM = "15";
                            } elseif ($vrijemePocMin == 3) {
                                $vrijemePocM = "30";
                            } elseif ($vrijemePocMin == 0) {
                                $vrijemePocM = "45";
                            }
                            $vrijemeP = "{$vrijemePocS}:{$vrijemePocM}";
                            $vrijemeKrajS = floor(($kraj - 1) / 4 + 8);
                            $vrijemeKrajMin = $kraj % 4;
                            if ($vrijemeKrajMin == 1) {
                                $vrijemeKrajM = "00";
                            } elseif ($vrijemeKrajMin == 2) {
                                $vrijemeKrajM = "15";
                            } elseif ($vrijemeKrajMin == 3) {
                                $vrijemeKrajM = "30";
                            } elseif ($vrijemeKrajMin == 0) {
                                $vrijemeKrajM = "45";
                            }
                            $vrijemeK = "{$vrijemeKrajS}:{$vrijemeKrajM}";
                            $q3 = myquery("select obavezan from ponudakursa where id={$studentov_predmet}");
                            if (mysql_num_rows($q3) > 0) {
                                $obavezan = mysql_result($q3, 0, 0);
                            }
                            if ($tip != 'P' && $labgrupa_naziv != "(Svi studenti)") {
                                $q5 = myquery("select l.naziv from student_labgrupa sl,labgrupa l where sl.labgrupa=l.id and sl.student={$userid} and l.predmet={$predmet}");
                                $brojac = 0;
                                for ($s = 0; $s < mysql_num_rows($q5); $s++) {
                                    $naziv_studentove_labgrupe = mysql_result($q5, $s, 0);
                                    if ($naziv_studentove_labgrupe == "(Svi studenti)") {
                                        continue;
                                    } else {
                                        $brojac = 1;
                                        break;
                                    }
                                }
                                if ($brojac == 1 && $naziv_studentove_labgrupe != $labgrupa_naziv) {
                                    $zadnji_m = $kraj;
                                    $viska_cas = 1;
                                    break;
                                }
                                //if($naziv_studentove_labgrupe=="(Svi studenti)") { $zadnji_m=$kraj; $viska_cas=1; break;}
                                // ako je iskljucena opcija iznad studentu koji nije ni u jednoj grupi se prikazuju termini ostalih grupa
                            }
                            for ($n = $zadnji; $n < $pocetak; $n++) {
                                print "<td></td>";
                            }
                            $zadnji = $kraj;
                            print "\r\n\t\t\t\t\t\t\t\t<td colspan=\"{$interval}\">\r\n\t\t\t\t\t\t\t\t\t<table>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><p>{$tip}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><p>{$predmet_naziv}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><p>{$sala_naziv}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>";
                            if ($tip != 'P') {
                                print "\r\n\t\t\t\t\t\t\t\t\t\t<tr>";
                                if ($labgrupa_naziv == "(Svi studenti)") {
                                    print "<td><p class=\"plavo\">--</p></td>";
                                } else {
                                    print "<td><p>{$labgrupa_naziv}</p></td>";
                                }
                                print "</tr>";
                            } else {
                                print "\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>--</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>";
                            }
                            print "\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><p>{$vrijemeP}-</p></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><p>{$vrijemeK}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t</td>";
                        }
                    }
                }
            }
            print "</tr>";
        }
        ?>
			
		</table>
<?php 
    } else {
        // Da li je aktuelan neparni ili parni semestar?
        $q0 = myquery("select count(*) from student_studij as ss, akademska_godina as ag where ss.akademska_godina=ag.id and ag.aktuelna=1 and ss.semestar mod 2=0");
        if (mysql_result($q0, 0, 0) > 0) {
            $parni = 1;
        } else {
            $parni = 0;
        }
        $brojac = 0;
        $q1 = myquery("SELECT np.predmet, pk.akademska_godina, pk.semestar FROM nastavnik_predmet np, ponudakursa pk, akademska_godina ag where np.nastavnik = {$userid} AND pk.predmet = np.predmet AND pk.akademska_godina = ag.id and np.akademska_godina=ag.id and ag.aktuelna=1");
        while ($r1 = mysql_fetch_array($q1)) {
            $ak_god = $r1['akademska_godina'];
            $semestar = $r1['semestar'];
            if ($semestar % 2 == $parni) {
                continue;
            }
            if ($brojac > 0) {
                $sqlPredmet .= " or rs.predmet = " . $r1['predmet'];
            } else {
                $sqlPredmet = " rs.predmet = " . $r1['predmet'];
            }
            $brojac++;
        }
        if (strlen($sqlPredmet) > 0) {
            $sqlWhere = "(" . $sqlPredmet . ")";
        }
        ?>
		<table border="1" cellspacing="0">
			<tr>
				<th>
					<p>Sat/</p>
					<p>Dan</p>
				</th>
				<?php 
        for ($i = 8; $i <= 20; $i++) {
            $j = $i + 1;
            ?>
					<th>
						<p><?php 
            print "{$i}";
            ?>
</p>
						<p><?php 
            print "00";
            ?>
</p>
					</th>
					<th>
						<p></p>
						<p><?php 
            print "15";
            ?>
</p>
					</th>
					<th>
						<p></p>
						<p><?php 
            print "30";
            ?>
</p>
					</th>
					<th>
						<p></p>
						<p><?php 
            print "45";
            ?>
</p>
					</th>
				<?php 
        }
        ?>
			</tr>
			<?php 
        // petlja za 6 dana u sedmici
        for ($i = 1; $i <= 6; $i++) {
            print "<tr>";
            $q0 = myquery("select rs.vrijeme_pocetak,rs.vrijeme_kraj from raspored_stavka rs,predmet p,raspored r where " . $sqlWhere . " and rs.predmet=p.id \r\n\t\t\t\tand rs.raspored=r.id and r.akademska_godina={$ak_god} and rs.dupla=0 and (rs.isjeckana=0 or rs.isjeckana=2) and rs.labgrupa != -1");
            // sada je potrebno naći maksimalni broj preklapanja termina da bi znali koliki je rowspan potreban za dan $i
            // poredimo svaki interval casa sa svakim
            $broj_preklapanja = array();
            for ($j = 0; $j <= 52; $j++) {
                $broj_preklapanja[] = 0;
            }
            for ($j = 0; $j < mysql_num_rows($q0); $j++) {
                $pocetak = mysql_result($q0, $j, 0);
                $kraj = mysql_result($q0, $j, 1);
                for ($k = $pocetak; $k < $kraj; $k++) {
                    $broj_preklapanja[$k]++;
                }
            }
            $max_broj_preklapanja = max($broj_preklapanja);
            if ($i == 1) {
                $dan_tekst = "PON";
            } elseif ($i == 2) {
                $dan_tekst = "UTO";
            } elseif ($i == 3) {
                $dan_tekst = "SRI";
            } elseif ($i == 4) {
                $dan_tekst = "ČET";
            } elseif ($i == 5) {
                $dan_tekst = "PET";
            } elseif ($i == 6) {
                $dan_tekst = "SUB";
            }
            // sada pravimo dvodimenzionalni niz, koji predstavlja zauzetost termina u određenom redu
            $zauzet = array();
            for ($j = 0; $j < $max_broj_preklapanja; $j++) {
                $zauzet = array();
            }
            for ($j = 0; $j < $max_broj_preklapanja; $j++) {
                for ($k = 0; $k <= 52; $k++) {
                    $zauzet[$j][] = 0;
                }
            }
            // zauzet[1][0]=1 znaci da je termin 1 zauzet u drugom redu
            $q1 = myquery("select rs.id,rs.raspored,rs.predmet,rs.vrijeme_pocetak,rs.vrijeme_kraj,rs.sala,rs.tip,rs.labgrupa from raspored_stavka rs,\r\n\t\t\t\tpredmet p,raspored r where " . $sqlWhere . " and rs.dan_u_sedmici={$i} and rs.predmet=p.id and rs.raspored=r.id and r.akademska_godina={$ak_god} \r\n\t\t\t\tand rs.dupla=0 and (rs.isjeckana=0 or rs.isjeckana=2) and rs.labgrupa != -1 order by rs.id");
            $gdje = array();
            $gdje["id_stavke"] = array();
            $gdje["red_stavke"] = array();
            // red u kojem stavka ide
            // primjer
            // gdje["id_stavke"][0]=5 znaci da je id prve stavke 5
            // gdje["red_stavke"][0]=3 znaci da stavka 1 ide u 4. red
            // [0] pretstavlja prvu stavku jer indeksi kreću od nule i druga kolona treba biti ista-- u ovom slucaju [0]
            for ($j = 0; $j < mysql_num_rows($q1); $j++) {
                $id_stavke = mysql_result($q1, $j, 0);
                $gdje["id_stavke"][$j] = $id_stavke;
                // i ovo vise ne diramo jer znamo koji je id stavke na osnovu nepoznate $j
                $gdje["red_stavke"][$j] = 0;
                // postavljamo na nulu jer još ne znamo gdje ide određena stavka
            }
            for ($j = 0; $j < mysql_num_rows($q1); $j++) {
                $id_stavke = mysql_result($q1, $j, 0);
                $pocetak = mysql_result($q1, $j, 3);
                $kraj = mysql_result($q1, $j, 4);
                for ($k = 0; $k < $max_broj_preklapanja; $k++) {
                    $zauzet_red = 0;
                    while ($pocetak != $kraj) {
                        if ($zauzet[$k][$pocetak - 1] == 1) {
                            $zauzet_red = 1;
                            // ako je uslov ispunjen nađen je barem jedan zauzet red
                            break;
                        }
                        $pocetak++;
                    }
                    if ($zauzet_red == 0) {
                        // ako nije zauzet termin u tom redu dodajemo termin u taj red i prekidamo petlju
                        $gdje["red_stavke"][$j] = $k;
                        // $stavka $j ide u red $k
                        //sada proglasavamo termin zauzetim u tom redu $k+1
                        $pocetak = mysql_result($q1, $j, 3);
                        while ($pocetak != $kraj) {
                            $zauzet[$k][$pocetak - 1] = 1;
                            // termin $pocetak se zauzima u redu $k+1
                            $pocetak++;
                        }
                    }
                    if ($zauzet_red == 0) {
                        break;
                    }
                }
            }
            print "<td rowspan=\"{$max_broj_preklapanja}\">{$dan_tekst}</td>";
            for ($j = 0; $j < $max_broj_preklapanja; $j++) {
                if ($j > 0) {
                    print "</tr><tr>";
                }
                $zadnji = 1;
                $zadnji_m = 0;
                for ($m = 1; $m <= 52; $m++) {
                    if ($viska_cas == 1) {
                        $viska_cas = 0;
                        $m = $zadnji_m - 1;
                        continue;
                    }
                    for ($k = 0; $k < mysql_num_rows($q1); $k++) {
                        $id_stavke = mysql_result($q1, $k, 0);
                        $predmet = mysql_result($q1, $k, 2);
                        $q2 = myquery("select kratki_naziv from predmet where id={$predmet}");
                        $predmet_naziv = mysql_result($q2, 0, 0);
                        $pocetak = mysql_result($q1, $k, 3);
                        $kraj = mysql_result($q1, $k, 4);
                        $sala = mysql_result($q1, $k, 5);
                        $q3 = myquery("select naziv from raspored_sala where id={$sala}");
                        $sala_naziv = mysql_result($q3, 0, 0);
                        $tip = mysql_result($q1, $k, 6);
                        $labgrupa = mysql_result($q1, $k, 7);
                        if ($labgrupa != 0) {
                            $q4 = myquery("select naziv from labgrupa where id={$labgrupa}");
                            $labgrupa_naziv = mysql_result($q4, 0, 0);
                        }
                        $interval = $kraj - $pocetak;
                        if ($gdje["red_stavke"][$k] == $j && $pocetak == $m) {
                            $vrijemePocS = floor(($pocetak - 1) / 4 + 8);
                            $vrijemePocMin = $pocetak % 4;
                            if ($vrijemePocMin == 1) {
                                $vrijemePocM = "00";
                            } elseif ($vrijemePocMin == 2) {
                                $vrijemePocM = "15";
                            } elseif ($vrijemePocMin == 3) {
                                $vrijemePocM = "30";
                            } elseif ($vrijemePocMin == 0) {
                                $vrijemePocM = "45";
                            }
                            $vrijemeP = "{$vrijemePocS}:{$vrijemePocM}";
                            $vrijemeKrajS = floor(($kraj - 1) / 4 + 8);
                            $vrijemeKrajMin = $kraj % 4;
                            if ($vrijemeKrajMin == 1) {
                                $vrijemeKrajM = "00";
                            } elseif ($vrijemeKrajMin == 2) {
                                $vrijemeKrajM = "15";
                            } elseif ($vrijemeKrajMin == 3) {
                                $vrijemeKrajM = "30";
                            } elseif ($vrijemeKrajMin == 0) {
                                $vrijemeKrajM = "45";
                            }
                            $vrijemeK = "{$vrijemeKrajS}:{$vrijemeKrajM}";
                            $q3 = myquery("select obavezan from ponudakursa where id={$predmet}");
                            if (mysql_num_rows($q3) > 0) {
                                $obavezan = mysql_result($q3, 0, 0);
                            }
                            $q4 = myquery("select o.labgrupa,l.naziv from ogranicenje o, labgrupa l where o.nastavnik={$userid} and o.labgrupa=l.id and l.predmet={$predmet}");
                            if (mysql_num_rows($q4) > 0) {
                                $postoji_labgrupa = 0;
                                for ($s = 0; $s < mysql_num_rows($q4); $s++) {
                                    $ogr_labgrupa = mysql_result($q4, $s, 0);
                                    $ogr_labgrupa_naziv = mysql_result($q4, $s, 1);
                                    if ($ogr_labgrupa == $labgrupa) {
                                        $postoji_labgrupa = 1;
                                        break;
                                    }
                                    if ($ogr_labgrupa_naziv == "(Svi studenti)" && $tip == 'P') {
                                        $postoji_labgrupa = 1;
                                        break;
                                    }
                                }
                                if ($postoji_labgrupa == 0) {
                                    $zadnji_m = $kraj;
                                    $viska_cas = 1;
                                    break;
                                }
                            }
                            for ($n = $zadnji; $n < $pocetak; $n++) {
                                print "<td></td>";
                            }
                            $zadnji = $kraj;
                            print "\r\n\t\t\t\t\t\t\t\t<td colspan=\"{$interval}\">\r\n\t\t\t\t\t\t\t\t\t<table align=\"center\">\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><p>{$tip}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><p>{$predmet_naziv}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><p>{$sala_naziv}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>";
                            if ($tip != 'P') {
                                print "\r\n\t\t\t\t\t\t\t\t\t\t<tr>";
                                if ($labgrupa_naziv == "(Svi studenti)") {
                                    print "<td><p>--</p></td>";
                                } else {
                                    print "<td><p>{$labgrupa_naziv}</p></td>";
                                }
                                print "</tr>";
                            } else {
                                print "\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td>--</td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>";
                            }
                            print "\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><p>{$vrijemeP}-</p></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t\t\t\t\t\t<td><p>{$vrijemeK}</p></td>\r\n\t\t\t\t\t\t\t\t\t\t</tr>\r\n\t\t\t\t\t\t\t\t\t</table>\r\n\t\t\t\t\t\t\t\t</td>";
                        }
                    }
                }
            }
            print "</tr>";
        }
        ?>
			
		</table>
<?php 
    }
    ob_end_clean();
    require_once 'lib/tcpdf/tcpdf.php';
    class MYPDF extends TCPDF
    {
        //Page header
        public function Header()
        {
            $this->SetMargins(10, 35, 25, true);
            $this->Image("images/etf-100x100.png", 10, 8, 20);
            $this->Image("images/unsa.png", 180, 8, 20);
            $this->SetFont("DejaVu Sans", '', 10);
            $this->SetY(15);
            $this->SetX(80);
            $this->Cell(50, 5, 'UNIVERZITET U SARAJEVU', 0, 0, 'C');
            $this->Ln();
            $this->SetX(80);
            $this->Cell(50, 5, 'ELEKTROTEHNIČKI FAKULTET', 0, 0, 'C');
            $this->Ln();
            $this->Cell(190, 5, '', 'B', 0, 'C');
            $this->Ln();
            $this->Ln();
        }
        // Page footer
        public function Footer()
        {
            if ($this->PageNo() > 1) {
                //Position at 1.5 cm from bottom
                $this->SetY(-15);
                //Arial italic 8
                $this->SetFont('DejaVu Sans ', 'I', 8);
                //Text color in gray
                $this->SetTextColor(128);
                //Page number
                $this->Cell(0, 10, 'Stranica ' . $this->PageNo(), 0, 0, 'C');
            }
        }
    }
    // Prva stranica
    $pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
    $pdf->AddFont("DejaVuSans", "", "DejaVuSans.php");
    $pdf->AddFont("DejaVuSans", "", "DejaVuSans-Bold.php");
    $pdf->SetFont('DejaVuSans', '', 4);
    $pdf->AddPage();
    $sadrzaj_bafera_za_pdf = str_replace("\t", "        ", $sadrzaj_bafera_za_pdf);
    $pdf->writeHTMLCell($w = 0, $h = 0, $x = '', $y = '', $sadrzaj_bafera_za_pdf, $border = 0, $ln = 1, $fill = 0, $reseth = true, $align = 'center', $autopadding = true);
    ob_end_clean();
    $pdf->Output('Raspored.pdf', 'I');
}
Exemplo n.º 16
0
function nastavnik_grupe()
{
    global $userid, $user_siteadmin;
    require "lib/manip.php";
    global $mass_rezultat;
    // za masovni unos studenata u grupe
    // 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);
    // Da li korisnik ima pravo ući u modul?
    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 || mysql_result($q10, 0, 0) == "asistent") {
            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;
    ?>
 - Grupe</h3></p>

<?php 
    ###############
    # Akcije
    ###############
    // Dodaj grupu
    if ($_POST['akcija'] == "nova_grupa" && check_csrf_token()) {
        $ime = my_escape($_POST['ime']);
        $tip = my_escape($_POST['tip']);
        $q2 = myquery("insert into labgrupa set naziv='{$ime}', predmet={$predmet}, tip='{$tip}', akademska_godina={$ag}, virtualna=0");
        zamgerlog2("kreirana labgrupa", mysql_insert_id(), $predmet, $ag, $ime);
        zamgerlog("dodana nova labgrupa '{$ime}' (predmet pp{$predmet} godina ag{$ag})", 4);
        // nivo 4: audit
    }
    // Obrisi grupu
    if ($_POST['akcija'] == "obrisi_grupu" && check_csrf_token()) {
        $grupaid = intval($_POST['grupaid']);
        // Provjera ispravnosti podataka
        $q29 = myquery("select predmet, akademska_godina from labgrupa where id={$grupaid}");
        if (mysql_num_rows($q29) < 1) {
            zamgerlog("nepostojeca labgrupa {$grupaid}", 3);
            zamgerlog2("nepostojeca labgrupa (brisanje)", $grupaid);
            niceerror("Pokušavate obrisati labgrupu koja ne postoji");
            return;
        }
        if (mysql_result($q29, 0, 0) != $predmet || mysql_result($q29, 0, 1) != $ag) {
            zamgerlog("labgrupa g{$grupaid} nije sa predmeta pp{$predmet} (ag{$ag})", 3);
            zamgerlog2("predmet i labgrupa se ne poklapaju (brisanje)", $predmet, $ag, $grupaid);
            niceerror("Predmet se ne poklapa");
            return;
        }
        // ispis svih studenata iz labgrupe
        $q30 = myquery("select student from student_labgrupa where labgrupa={$grupaid}");
        while ($r30 = mysql_fetch_row($q30)) {
            ispis_studenta_sa_labgrupe($r30[0], $grupaid);
            zamgerlog2("student ispisan sa grupe (brisanje)", intval($r30[0]), $grupaid);
        }
        // Sada mozemo obrisati casove jer je funkcija ispis_studenta... obrisala prisustvo
        $q35 = myquery("delete from cas where labgrupa={$grupaid}");
        // Konacno brišem grupu
        $q40 = myquery("delete from labgrupa where id={$grupaid}");
        zamgerlog("obrisana labgrupa {$grupaid} (predmet pp{$predmet})", 4);
        // nivo 4: audit
        zamgerlog2("obrisana labgrupa", intval($predmet), $ag, $grupaid);
    }
    // Promjena imena grupe
    if ($_POST['akcija'] == "preimenuj_grupu" && check_csrf_token()) {
        $grupaid = intval($_POST['grupaid']);
        $ime = my_escape($_POST['ime']);
        $tip = my_escape($_POST['tip']);
        // Provjera ispravnosti podataka
        $q29 = myquery("select predmet, akademska_godina from labgrupa where id={$grupaid}");
        if (mysql_num_rows($q29) < 1) {
            zamgerlog("nepostojeca labgrupa {$grupaid}", 3);
            zamgerlog2("nepostojeca labgrupa (preimenovanje)", $grupaid);
            niceerror("Pokušavate obrisati labgrupu koja ne postoji");
            return;
        }
        if (mysql_result($q29, 0, 0) != $predmet || mysql_result($q29, 0, 1) != $ag) {
            zamgerlog("labgrupa g{$grupaid} nije sa predmeta pp{$predmet} (ag{$ag})", 3);
            zamgerlog2("predmet i labgrupa se ne poklapaju (preimenovanje)", $predmet, $ag, $grupaid);
            niceerror("Predmet se ne poklapa");
            return;
        }
        $q50 = myquery("update labgrupa set naziv='{$ime}', tip='{$tip}' where id={$grupaid}");
        // Grupa treba ostati otvorena:
        $_GET['akcija'] = "studenti_grupa";
        $_GET['grupaid'] = $grupaid;
        zamgerlog("preimenovana labgrupa {$grupaid} u '{$ime}' (predmet pp{$predmet} godina ag{$ag})", 2);
        // nivo 2: edit
        zamgerlog2("preimenovana labgrupa", $grupaid, 0, 0, $ime);
    }
    // Kopiraj grupe
    if ($_POST['akcija'] == "kopiraj_grupe" && check_csrf_token()) {
        $kopiraj = intval($_POST['kopiraj']);
        if ($kopiraj == $predmet) {
            zamgerlog("kopiranje sa istog predmeta pp{$predmet}", 3);
            zamgerlog2("kopiranje grupa sa istog predmeta", $predmet, $ag);
            niceerror("Ne možete kopirati grupe sa istog predmeta.");
            return;
        }
        // Spisak labgrupa na odabranom predmetu
        $q60 = myquery("select id, naziv, tip from labgrupa where predmet={$kopiraj} and akademska_godina={$ag} and virtualna=0");
        if (mysql_num_rows($q60) == 0) {
            zamgerlog("kopiranje sa predmeta pp{$kopiraj} na kojem nema grupa", 3);
            zamgerlog2("kopiranje sa predmeta na kojem nema grupa", $kopiraj, $ag, $predmet);
            niceerror("Na odabranom predmetu nije definisana nijedna grupa.");
        }
        while ($r60 = mysql_fetch_row($q60)) {
            $staragrupa = $r60[0];
            $imegrupe = $r60[1];
            $tipgrupe = $r60[2];
            // Da li već postoji grupa sa tim imenom?
            $q70 = myquery("select id from labgrupa where predmet={$predmet} and naziv='{$imegrupe}' and akademska_godina={$ag}");
            if (mysql_num_rows($q70) == 0) {
                $q80 = myquery("insert into labgrupa set naziv='{$imegrupe}', predmet={$predmet}, akademska_godina={$ag}, tip='{$tipgrupe}'");
                $q70 = myquery("select id from labgrupa where predmet={$predmet} and naziv='{$imegrupe}' and akademska_godina={$ag}");
                zamgerlog2("kreirana labgrupa (kopiranje)", intval(mysql_result($q70, 0, 0)), $predmet, $ag, $imegrupe);
            }
            $novagrupa = mysql_result($q70, 0, 0);
            // Spisak studenata u grupi koja se kopira
            $q100 = myquery("select student from student_labgrupa where labgrupa={$staragrupa}");
            while ($r100 = mysql_fetch_row($q100)) {
                $student = $r100[0];
                // Da li student uopste slusa ovaj predmet?
                $q110 = myquery("select o.ime, o.prezime from student_predmet as sp, osoba as o, ponudakursa as pk where sp.student={$student} and sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag} and o.id={$student}");
                if (mysql_num_rows($q110) < 1) {
                    // Pošto upit nije vratio ništa, moramo nekako saznati ime i prezime
                    $q120 = myquery("select ime, prezime from osoba where id={$student}");
                    print "-- Student " . mysql_result($q120, 0, 0) . " " . mysql_result($q120, 0, 1) . " ne sluša ovaj predmet, pa ćemo ga preskočiti.<br/>";
                    continue;
                }
                // Ispis studenta sa svih grupa u kojima je trenutno
                $q130 = myquery("select sl.labgrupa 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 sl.labgrupa!={$novagrupa} and l.virtualna=0");
                while ($r130 = mysql_fetch_row($q130)) {
                    ispis_studenta_sa_labgrupe($student, $r130[0]);
                    zamgerlog2("student ispisan sa grupe (kopiranje)", $student, $r130[0]);
                }
                // Upis u novu grupu
                $q140 = myquery("select count(*) from student_labgrupa where student={$student} and labgrupa={$novagrupa}");
                if (mysql_result($q140, 0, 0) < 1) {
                    $q150 = myquery("insert into student_labgrupa set labgrupa={$novagrupa}, student={$student}");
                    zamgerlog2("student upisan u grupu (kopiranje)", intval($student), intval($novagrupa));
                    //print "Upisujem studenta $student u grupu $novagrupa<br/>";
                }
            }
        }
        zamgerlog("prekopirane labgrupe sa predmeta pp{$kopiraj} u pp{$predmet}", 4);
        zamgerlog2("prekopirane labgrupe", $kopiraj, $ag);
    }
    // Masovni unos studenata u grupe
    if ($_POST['akcija'] == "massinput" && strlen($_POST['nazad']) < 1 && check_csrf_token()) {
        if ($_POST['fakatradi'] != 1) {
            $ispis = 1;
        } else {
            $ispis = 0;
        }
        if ($ispis) {
            ?>
Akcije koje će biti urađene:<br/><br/>
		<?php 
            echo genform("POST");
            ?>
		<input type="hidden" name="fakatradi" value="1">
		<table border="0" cellspacing="1" cellpadding="2">
		<!-- FIXME: prebaciti stilove u CSS? -->
		<thead>
		<tr bgcolor="#999999">
			<td><font style="font-family:DejaVu Sans,Verdana,Arial,sans-serif;font-size:11px;color:white;">Prezime</font></td>
			<td><font style="font-family:DejaVu Sans,Verdana,Arial,sans-serif;font-size:11px;color:white;">Ime</font></td>
			<td><font style="font-family:DejaVu Sans,Verdana,Arial,sans-serif;font-size:11px;color:white;">Akcije</font></td>
		</tr>
		</thead>
		<tbody>
		<?php 
        }
        $greska = mass_input($ispis);
        // Funkcija koja parsira podatke
        // Cache IDova grupa prema imenu
        $idovi_grupa = array();
        // Spisak studenata
        $boja1 = "#EEEEEE";
        $boja2 = "#DDDDDD";
        $boja = $boja1;
        $bojae = "#FFE3DD";
        foreach ($mass_rezultat['ime'] as $student => $ime) {
            $prezime = $mass_rezultat['prezime'][$student];
            // Ispis studenta iz svih grupa
            $ispisispis = "";
            $ispis_grupe = $upis_grupe = array();
            $q230 = myquery("select l.id,l.naziv from labgrupa as l, student_labgrupa as sl where sl.student={$student} and sl.labgrupa=l.id and l.predmet={$predmet} and l.akademska_godina={$ag} and l.virtualna=0");
            $found = 1;
            while ($r230 = mysql_fetch_row($q230)) {
                $ispis_grupe[$r230[0]] = $r230[1];
                if (!in_array($r230[1], $mass_rezultat['podatak1'][$student])) {
                    $found = 0;
                }
            }
            if ($found == 1 && mysql_num_rows($q230) > 0) {
                if ($ispis) {
                    ?>
				<tr bgcolor="<?php 
                    echo $boja;
                    ?>
">
					<td><?php 
                    echo $prezime;
                    ?>
</td><td><?php 
                    echo $ime;
                    ?>
</td>
					<td>Već upisan u grupu <?php 
                    foreach ($ispis_grupe as $gid => $gime) {
                        print "'{$gime}' ";
                    }
                    ?>
 - preskačem</td>
				</tr>
				<?php 
                    if ($boja == $boja1) {
                        $boja = $boja2;
                    } else {
                        $boja = $boja1;
                    }
                }
                continue;
            }
            // spisak grupa u koje treba upisati studenta
            foreach ($mass_rezultat['podatak1'][$student] as $imegrupe) {
                $imegrupe = trim($imegrupe);
                if ($imegrupe == "") {
                    continue;
                }
                // Da li grupa postoji u cache-u ?
                if (array_key_exists($imegrupe, $idovi_grupa)) {
                    $labgrupa = $idovi_grupa[$imegrupe];
                    // Ne postoji, tražimo u bazi
                } else {
                    // Da li je ime ispravno?
                    if (!preg_match("/\\w/", $imegrupe)) {
                        ?>
					<tr bgcolor="<?php 
                        echo $bojae;
                        ?>
">
						<td><?php 
                        echo $prezime;
                        ?>
</td><td><?php 
                        echo $ime;
                        ?>
</td>
						<td>neispravno ime grupe '<?php 
                        echo $imegrupe;
                        ?>
'</td>
					</tr>
					<?php 
                        $greska = 1;
                        continue;
                    }
                    // Određujemo ID grupe
                    $q210 = myquery("select id from labgrupa where naziv='{$imegrupe}' and predmet={$predmet} and akademska_godina={$ag}");
                    if (mysql_num_rows($q210) < 1) {
                        // Grupa ne postoji - kreiramo je
                        if ($ispis) {
                            ?>
						<tr bgcolor="<?php 
                            echo $boja;
                            ?>
">
							<td colspan="3">Kreiranje nove grupe '<?php 
                            echo $imegrupe;
                            ?>
'</td>
						</tr>
						<?php 
                            if ($boja == $boja1) {
                                $boja = $boja2;
                            } else {
                                $boja = $boja1;
                            }
                        } else {
                            $q220 = myquery("insert into labgrupa set naziv='{$imegrupe}', predmet={$predmet}, akademska_godina={$ag}, tip='vjezbe+tutorijali', virtualna=0");
                            $labgrupa = mysql_insert_id();
                            zamgerlog2("kreirana labgrupa (masovni unos)", intval($labgrupa), 0, 0, $imegrupe);
                        }
                    } else {
                        $labgrupa = mysql_result($q210, 0, 0);
                    }
                    $idovi_grupa[$imegrupe] = $labgrupa;
                }
                // Da li je grupa već jednom spomenuta?
                foreach ($upis_grupe as $gid => $gime) {
                    if ($gid == $labgrupa) {
                        if ($ispis) {
                            ?>
						<tr bgcolor="<?php 
                            echo $bojae;
                            ?>
">
							<td><?php 
                            echo $prezime;
                            ?>
</td><td><?php 
                            echo $ime;
                            ?>
</td>
							<td>Grupa '<?php 
                            echo $gime;
                            ?>
' je navedena dvaput - greška?</td>
						</tr>
						<?php 
                        }
                        continue;
                    }
                }
                $upis_grupe[$labgrupa] = $imegrupe;
            }
            // Obavljam ispisivanje i upisivanje u grupe
            if ($ispis) {
                // na ekran
                ?>
			<tr bgcolor="<?php 
                echo $boja;
                ?>
">
				<td><?php 
                echo $prezime;
                ?>
</td><td><?php 
                echo $ime;
                ?>
</td>
				<td>
			<?php 
                foreach ($ispis_grupe as $gid => $gime) {
                    print "Ispis iz grupe '{$gime}'<br />\n";
                }
                foreach ($upis_grupe as $gid => $gime) {
                    print "Upis u grupu '{$gime}'<br />\n";
                }
                print "</td></tr>\n";
                if ($boja == $boja1) {
                    $boja = $boja2;
                } else {
                    $boja = $boja1;
                }
            } else {
                foreach ($ispis_grupe as $gid => $gime) {
                    ispis_studenta_sa_labgrupe($student, $gid);
                    zamgerlog2("student ispisan sa grupe (masovni unos)", $student, $gid);
                }
                foreach ($upis_grupe as $gid => $gime) {
                    $q240 = myquery("insert into student_labgrupa set student={$student}, labgrupa={$gid}");
                    zamgerlog2("student upisan u grupu (masovni unos)", $student, $gid);
                }
            }
        }
        // Potvrda i Nazad
        if ($ispis) {
            if ($greska != 0) {
                ?>
			</tbody></table>
			<p>U unesenim podacima ima grešaka. Da li ste izabrali ispravan format ("Prezime[TAB]Ime" vs. "Prezime Ime")?Vratite se nazad kako biste ovo popravili.</p>
			<p>NAPOMENA: Upis studenata na predmet može vršiti samo studentska služba. Ukoliko na spisku nedostaje neki student koji sluša vaš predmet, kontaktirajte službu radi razjašnjenja nesporazuma.</p>
			<p><input type="submit" name="nazad" value=" Nazad "></p>
			</form>
			<?php 
            } else {
                if (count($mass_rezultat) == 0) {
                    ?>
			</tbody></table>
			<p>Niste unijeli nijedan koristan podatak.</p>
			<p><input type="submit" name="nazad" value=" Nazad "></p>
			</form>
			<?php 
                } else {
                    ?>
			</tbody></table>
			<p>Potvrdite kreiranje grupa i upis studenata u grupe ili se vratite na prethodni ekran.</p>
			<p><input type="submit" name="nazad" value=" Nazad "> <input type="submit" value=" Potvrda"></p>
			</form>
			<?php 
                }
            }
            return;
        } else {
            zamgerlog("masovan upis grupa za predmet pp{$predmet}", 4);
            ?>
		Masovan upis studenata u grupe je uspješno obavljen.
		<script language="JavaScript">
		location.href='?sta=nastavnik/grupe&predmet=<?php 
            echo $predmet;
            ?>
&ag=<?php 
            echo $ag;
            ?>
';
		</script>
		<?php 
        }
    }
    ###############
    # Prikaz grupa
    ###############
    ?>
<script language="JavaScript">
function upozorenje(grupa) {
	var a = confirm("Svi studenti će biti ispisani iz ove grupe.");
	if (a) {
		document.getElementById('grupaid').value=grupa;
		document.brisanjegrupe.submit();
	}
}
</script>
<?php 
    echo genform("POST", "brisanjegrupe");
    ?>
<input type="hidden" name="akcija" value="obrisi_grupu">
<input type="hidden" name="grupaid" id="grupaid" value=""></form>

Spisak grupa:<br/>
<?php 
    $q100 = myquery("select id, naziv, tip from labgrupa where predmet={$predmet} and akademska_godina={$ag} and virtualna=0 order by id");
    // TODO: koristiti natsort za sortiranje grupa
    print "<ul>\n";
    if (mysql_num_rows($q100) == 0) {
        print "<li>Nema definisanih grupa</li>\n";
    }
    $tip_selektovan = array();
    while ($r100 = mysql_fetch_row($q100)) {
        $grupa = $r100[0];
        $naziv = $r100[1];
        if (!preg_match("/\\w/", $naziv)) {
            print "<li>[Nema imena] - ";
        } else {
            print "<li>{$naziv} - ";
        }
        $q110 = myquery("select count(*) from student_labgrupa where labgrupa={$grupa}");
        $brstud = mysql_result($q110, 0, 0);
        print "(<a href=\"?sta=nastavnik/grupe&predmet={$predmet}&ag={$ag}&akcija=studenti_grupa&grupaid={$grupa}\">{$brstud} studenata</a>) - ";
        print "<a href=\"javascript:onclick=upozorenje('{$grupa}')\">Obriši grupu</a></li>";
        //print "</li>\n";
        if ($_GET['akcija'] == "studenti_grupa" && $_GET['grupaid'] == $grupa) {
            print "<ul>\n";
            $q102 = myquery("select osoba.id,osoba.prezime,osoba.ime from student_labgrupa,osoba where student_labgrupa.student=osoba.id and student_labgrupa.labgrupa={$grupa} order by osoba.prezime,osoba.ime");
            while ($r102 = mysql_fetch_row($q102)) {
                ?>
<li><a href="#" onclick="javascript:window.open('?sta=saradnik/izmjena_studenta&student=<?php 
                echo $r102[0];
                ?>
&predmet=<?php 
                echo $predmet;
                ?>
&ag=<?php 
                echo $ag;
                ?>
','blah6','width=320,height=320');"><?php 
                print $r102[1] . " " . $r102[2] . "</a></li>\n";
            }
            print "</ul>";
            $zapamti_grupu = $naziv;
            $tip_selektovan[$r100[2]] = " SELECTED";
        }
    }
    print "</ul>\n";
    # Editovanje grupe
    if ($_GET['akcija'] == "studenti_grupa") {
        $gg = intval($_GET['grupaid']);
        ?>
<p>
	<?php 
        echo genform("POST");
        ?>
	<input type="hidden" name="akcija" value="preimenuj_grupu">
	<input type="hidden" name="grupaid" value="<?php 
        echo $gg;
        ?>
">
	Promijenite naziv grupe: <input type="text" name="ime" size="20" value="<?php 
        echo $zapamti_grupu;
        ?>
">
	Promijenite tip grupe: <select name="tip">
	<option value="predavanja" <?php 
        echo $tip_selektovan['predavanja'];
        ?>
>Grupa za predavanja</a>
	<option value="vjezbe" <?php 
        echo $tip_selektovan['vjezbe'];
        ?>
>Grupa za vježbe</a>
	<option value="tutorijali" <?php 
        echo $tip_selektovan['tutorijali'];
        ?>
>Grupa za tutorijale</a>
	<option value="vjezbe+tutorijali" <?php 
        echo $tip_selektovan['vjezbe+tutorijali'];
        ?>
>Grupa za vježbe i tutorijale</a>
	</select>
	<input type="submit" value="Izmijeni"></form></p>
	<?php 
    }
    // Dodavanje grupe
    ?>

<p>
<?php 
    echo genform("POST");
    ?>
<input type="hidden" name="akcija" value="nova_grupa">
Dodaj grupu: <input type="text" name="ime" size="20">
Tip grupe:<select name="tip">
	<option value="predavanja">Grupa za predavanja</a>
	<option value="vjezbe">Grupa za vježbe</a>
	<option value="tutorijali">Grupa za tutorijale</a>
	<option value="vjezbe+tutorijali" SELECTED>Grupa za vježbe i tutorijale</a>
</select>
<input type="submit" value="Dodaj"></form></p>
<?php 
    // Kopiranje grupa sa predmeta
    ?>

<p>
<?php 
    echo genform("POST");
    ?>
<input type="hidden" name="akcija" value="kopiraj_grupe">
Prekopiraj grupe sa predmeta: <select name="kopiraj">
<?php 
    $q103a = myquery("select p.id, p.naziv from predmet as p, ponudakursa as pk where pk.predmet=p.id and pk.akademska_godina={$ag} order by p.naziv");
    // TODO: Sortirati po semestru i studiju
    while ($r103a = mysql_fetch_row($q103a)) {
        print "<option value=\"{$r103a['0']}\">{$r103a['1']}</a>\n";
    }
    ?>
</select>
<input type="submit" value="Dodaj">
</form></p><?php 
    // Masovni unos
    $format = intval($_POST['format']);
    if (!$_POST['format']) {
        $q110 = myquery("select vrijednost from preference where korisnik={$userid} and preferenca='mass-input-format'");
        if (mysql_num_rows($q110) > 0) {
            $format = mysql_result($q110, 0, 0);
        } else {
            //default vrijednost
            $format = 0;
        }
    }
    $separator = intval($_POST['separator']);
    if (!$_POST['separator']) {
        $q120 = myquery("select vrijednost from preference where korisnik={$userid} and preferenca='mass-input-separator'");
        if (mysql_num_rows($q120) > 0) {
            $separator = mysql_result($q120, 0, 0);
        } else {
            //default vrijednost
            $separator = 0;
        }
    }
    ?>

<p><hr/></p><p><b>Masovni upis studenata u grupe</b><br/>
U prozoru ispod navedite ime i prezime studenta, znak za separator i naziv grupe u koju želite da ga/je upišete.<br/>
<?php 
    echo genform("POST");
    ?>
<input type="hidden" name="fakatradi" value="0">
<input type="hidden" name="akcija" value="massinput">
<input type="hidden" name="nazad" value="">
<input type="hidden" name="visestruki" value="1">
<input type="hidden" name="duplikati" value="1">
<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/>Format imena i prezimena: <select name="format" class="default">
<option value="0" <?php 
    if ($format == 0) {
        print "SELECTED";
    }
    ?>
>Prezime[TAB]Ime</option>
<option value="1" <?php 
    if ($format == 1) {
        print "SELECTED";
    }
    ?>
>Ime[TAB]Prezime</option>
<option value="2" <?php 
    if ($format == 2) {
        print "SELECTED";
    }
    ?>
>Prezime Ime</option>
<option value="3" <?php 
    if ($format == 3) {
        print "SELECTED";
    }
    ?>
>Ime Prezime</option></select>&nbsp;
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/>

<input type="submit" value="  Dodaj  ">
</form></p><?php 
}
Exemplo n.º 17
0
                 $nalaz .= "IZLAZ DEBUGGERA:\n" . $tr['debug_result']['output'] . "\n\n";
             }
             if ($status != "ok" && strlen($tr['profile_result']['output']) > 0) {
                 // Koristimo ljepsi izlaz za nepasirani valgrind ako postoji
                 if ($nepasirani_valgrind === "") {
                     $nepasirani_valgrind = $tr['profile_result']['output'];
                 }
                 $nalaz .= "IZLAZ PROFILERA:\n{$nepasirani_valgrind}";
             }
             $nalaz = my_escape($nalaz);
             $trajanje = intval($tr['run_result']['duration']);
             $bh = json_decode($_REQUEST['buildhost'], true);
             $bhos = str_replace("\n", "<br>", $bh['os']);
             $bhos = my_escape($bhos);
             $bhos = str_replace("&lt;br&gt;", "<br>", $bhos);
             $specifikacija_hosta = "<b>Testni sistem:</b><br>" . my_escape($bh['id']) . "<br><br><b>OS:</b><br>" . $bhos . "<br><br><b>Verzija kompajlera:</b><br>" . my_escape($bh['compiler_version']) . "<br><br><b>Opcije kompajlera:</b><br>" . my_escape($komp_opc) . "<br><br><b>Verzija debuggera</b><br>" . my_escape($bh['debugger_version']) . "<br><br><b>Verzija profilera:</b><br>" . my_escape($bh['profiler_version']);
             $q2 = mysql_query("DELETE FROM autotest_rezultat WHERE autotest={$test} AND student={$r['0']}");
             $q2 = myquery("INSERT INTO autotest_rezultat SET autotest={$test}, student={$r['0']}, izlaz_programa='{$izlaz_programa}', status='{$status}', nalaz='{$nalaz}', vrijeme=NOW(), trajanje={$trajanje}, testni_sistem='{$specifikacija_hosta}'");
         }
     }
 } else {
     if ($_REQUEST['action'] == "getTaskList") {
         if ($user_siteadmin || $user_autotester) {
             $q = myquery("SELECT z.id, z.naziv, p.naziv, ag.naziv, pj.naziv, z.zadataka FROM zadaca as z, predmet as p, akademska_godina as ag, programskijezik as pj WHERE z.predmet=p.id AND z.akademska_godina=ag.id AND z.programskijezik=pj.id AND pj.id>0 ORDER BY z.id DESC LIMIT 100");
             // Nećemo da pretjeramo
         } else {
             // Upit za zadaće nastavnika
             $q = myquery("SELECT z.id, z.naziv, p.naziv, ag.naziv, pj.naziv, z.zadataka FROM zadaca as z, predmet as p, akademska_godina as ag, programskijezik as pj, nastavnik_predmet as np WHERE z.predmet=p.id AND z.akademska_godina=ag.id AND z.programskijezik=pj.id AND pj.id>0 AND np.nastavnik={$userid} AND np.predmet=z.predmet AND np.akademska_godina=z.akademska_godina ORDER BY z.id DESC LIMIT 100");
             if (mysql_num_rows($q) == 0) {
                 // Ako je upit prazan probavamo zadaće studenta
                 $q = myquery("SELECT z.id, z.naziv, p.naziv, ag.naziv, pj.naziv, z.zadataka FROM zadaca as z, predmet as p, akademska_godina as ag, programskijezik as pj, student_predmet as sp, ponudakursa as pk WHERE z.predmet=p.id AND z.akademska_godina=ag.id AND z.programskijezik=pj.id AND pj.id>0 AND sp.student={$userid} AND sp.predmet=pk.id AND pk.predmet=z.predmet AND pk.akademska_godina=z.akademska_godina ORDER BY z.id DESC LIMIT 100");
Exemplo n.º 18
0
function common_ajah()
{
    global $userid, $user_nastavnik, $user_siteadmin, $user_studentska;
    require "lib/manip.php";
    ?>
<body onLoad="javascript:parent.ajah_stop()">
<?php 
    switch ($_REQUEST['akcija']) {
        case "prisustvo":
            if ($userid == 0) {
                zamgerlog("AJAH prisustvo - istekla sesija", 3);
                // nivo 3 - greska
                zamgerlog2("prisustvo - istekla sesija");
                // nivo 3 - greska
                print "Vasa sesija je istekla. Pritisnite dugme Refresh da se ponovo prijavite.";
                break;
            }
            if (!$user_nastavnik && !$user_siteadmin) {
                zamgerlog("AJAH prisustvo - korisnik nije nastavnik", 3);
                // nivo 3 - greska
                zamgerlog2("prisustvo - korisnik nije nastavnik");
                // nivo 3 - greska
                print "niste nastavnik";
                break;
            }
            $student = intval($_GET['student']);
            $cas = intval($_GET['cas']);
            $prisutan = intval($_GET['prisutan']);
            // Provjera parametra i odredjivanje predmeta i ag
            $q10 = myquery("select c.labgrupa, l.predmet, l.akademska_godina from cas as c, labgrupa as l where c.id={$cas} and c.labgrupa=l.id");
            if (mysql_num_rows($q10) < 1) {
                zamgerlog("AJAH prisustvo - nepostojeci cas {$cas}", 3);
                zamgerlog2("prisustvo - nepostojeci cas", $cas);
                print "nepostojeci cas";
                break;
            }
            $labgrupa = mysql_result($q10, 0, 0);
            $predmet = mysql_result($q10, 0, 1);
            $ag = mysql_result($q10, 0, 2);
            // Provjera prava pristupa
            if (!$user_siteadmin) {
                $q15 = myquery("select count(*) from nastavnik_predmet where nastavnik={$userid} and predmet={$predmet} and akademska_godina={$ag}");
                if (mysql_num_rows($q15) < 1) {
                    zamgerlog("AJAH prisustvo - korisnik nije nastavnik (cas c{$cas})", 3);
                    zamgerlog2("nije saradnik na predmetu (prisustvo)", $cas);
                    print "niste nastavnik A";
                    break;
                }
                // Provjeravamo ogranicenja
                $q20 = 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($q20) > 0) {
                    $nasao = 0;
                    while ($r20 = mysql_fetch_row($q20)) {
                        // Ako je labgrupa 0 nece ga nikada nac
                        if ($r20[0] == $labgrupa) {
                            $nasao = 1;
                            break;
                        }
                    }
                    if ($nasao == 0) {
                        zamgerlog("AJAH prisustvo - korisnik ima ogranicenje za grupu (cas c{$cas})", 3);
                        zamgerlog2("prisustvo - ima ogranicenje za grupu", $cas);
                        print "imate ograničenje na ovu grupu";
                        break;
                    }
                }
                // ponudakursa
            }
            // Akcija
            if ($student > 0 && $cas > 0) {
                if ($prisutan == 3) {
                    // Postavljanje u neutralno stanje
                    $q0 = myquery("delete from prisustvo where student={$student} and cas={$cas}");
                } else {
                    $prisutan--;
                    $q1 = myquery("select prisutan from prisustvo where student={$student} and cas={$cas}");
                    if (mysql_num_rows($q1) < 1) {
                        $q2 = myquery("insert into prisustvo set prisutan={$prisutan}, student={$student}, cas={$cas}");
                    } else {
                        $q3 = myquery("update prisustvo set prisutan={$prisutan} where student={$student} and cas={$cas}");
                    }
                }
            } else {
                zamgerlog("AJAH prisustvo - losa akcija, student: {$student} cas: {$cas} prisutan: {$prisutan}", 3);
                zamgerlog2("prisustvo - losa akcija", $student, $cas, $prisutan);
                print "akcija je generalno loša";
                break;
            }
            // Ažuriranje komponenti
            // potrebna nam je ponudakursa za update_komponente
            $q3 = myquery("select pk.id from ponudakursa as pk, student_predmet as sp where sp.student={$student} and sp.predmet=pk.id and pk.predmet={$predmet} and pk.akademska_godina={$ag}");
            $ponudakursa = mysql_result($q3, 0, 0);
            $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]);
            }
            zamgerlog("AJAH prisustvo - student: u{$student} cas: c{$cas} prisutan: {$prisutan}", 2);
            // nivo 2 - edit
            zamgerlog2("prisustvo azurirano", $student, $cas, $prisutan);
            // nivo 2 - edit
            print "OK";
            break;
        case "izmjena_ispita":
            // TODO: treci tip vrijenosti, fiksna komponenta
            if ($userid == 0) {
                zamgerlog("AJAH ispit - istekla sesija", 3);
                // nivo 3 - greska
                zamgerlog2("ispit - istekla sesija");
                print "Vasa sesija je istekla. Pritisnite dugme Refresh da se ponovo prijavite.";
                break;
            }
            if (!$user_nastavnik && !$user_studentska && !$user_siteadmin) {
                zamgerlog("AJAH ispit - korisnik nije nastavnik", 3);
                // nivo 3 - greska
                zamgerlog2("ispit - korisnik nije nastavnik");
                // nivo 3 - greska
                print "niste nastavnik";
                break;
            }
            // Provjera validnosti primljenih podataka
            $idpolja = $_REQUEST['idpolja'];
            $vrijednost = $_REQUEST['vrijednost'];
            $parametri = array();
            $parametri = explode("-", $idpolja);
            $ime = $parametri[0];
            if ($ime != "ispit" && $ime != "ko" && $ime != "fiksna" && $ime != "kodatum") {
                // ko = konacna ocjena
                zamgerlog("AJAH ispit - ne valja id polja ({$idpolja})", 3);
                zamgerlog2("ispit - ne valja id polja", $idpolja);
                print "ne valja ID polja {$idpolja}";
                break;
            }
            if ($ime != "kodatum") {
                if (!preg_match("/\\d/", $vrijednost)) {
                    if ($vrijednost != "/") {
                        zamgerlog("AJAH ispit - vrijednost {$vrijednost} nije ni broj ni /", 3);
                        zamgerlog2("ispit - vrijednost nije ni broj ni /", 0, 0, 0, $vrijednost);
                        print "Vrijednost {$vrijednost} nije ni broj ni /";
                        break;
                    }
                } else {
                    $vrijednost = floatval(str_replace(",", ".", $vrijednost));
                }
            }
            // Provjera prava pristupa i dodatna validacija parametara
            if ($ime == "ispit") {
                $stud_id = intval($parametri[1]);
                $ispit = intval($parametri[2]);
                if ($user_siteadmin) {
                    $q40 = myquery("select 'nastavnik',pk.id,k.maxbodova,k.id,k.tipkomponente,k.opcija, pk.predmet from ispit as i, komponenta as k, ponudakursa as pk, student_predmet as sp where i.id={$ispit} and i.komponenta=k.id and i.predmet=pk.predmet and i.akademska_godina=pk.akademska_godina and sp.predmet=pk.id and sp.student={$stud_id}");
                } else {
                    $q40 = myquery("select np.nivo_pristupa,pk.id,k.maxbodova,k.id,k.tipkomponente,k.opcija, pk.predmet from nastavnik_predmet as np, ispit as i, komponenta as k, ponudakursa as pk, student_predmet as sp where np.nastavnik={$userid} and np.predmet=i.predmet and np.akademska_godina=i.akademska_godina and pk.predmet=i.predmet and pk.akademska_godina=i.akademska_godina and i.id={$ispit} and i.komponenta=k.id and sp.predmet=pk.id and sp.student={$stud_id}");
                }
                if (mysql_num_rows($q40) < 1) {
                    zamgerlog("AJAH ispit - nepoznat ispit {$ispit} ili niste saradnik", 3);
                    zamgerlog2("ispit - nepoznat ispit ili nije saradnik", $ispit);
                    print "nepoznat ispit {$ispit} ili niste saradnik na predmetu";
                    break;
                }
                if (mysql_result($q40, 0, 0) != "asistent") {
                    $padmin = 1;
                }
                $ponudakursa = mysql_result($q40, 0, 1);
                $max = mysql_result($q40, 0, 2);
                // Potrebno za update komponenti:
                $komponenta = mysql_result($q40, 0, 3);
                $tipkomponente = mysql_result($q40, 0, 4);
                $kopcija = mysql_result($q40, 0, 5);
                $predmet = mysql_result($q40, 0, 6);
            } else {
                if ($ime == "fiksna") {
                    $stud_id = intval($parametri[1]);
                    $predmet = intval($parametri[2]);
                    $komponenta = intval($parametri[3]);
                    $ag = intval($parametri[4]);
                    // TODO: provjeriti da li komponenta postoji na predmetu
                    $q40a = myquery("select maxbodova from komponenta where id={$komponenta} and tipkomponente=5");
                    if (mysql_num_rows($q40a) != 1) {
                        zamgerlog("AJAH fiksna - nepoznata fiksna komponenta {$komponenta}", 3);
                        zamgerlog2("fiksna - nepoznata fiksna komponenta", $komponenta);
                        print "nepoznata fiksna komponenta {$komponenta}";
                        break;
                    }
                    $max = mysql_result($q40a, 0, 0);
                    if (!$user_siteadmin) {
                        $q40b = myquery("select count(*) from nastavnik_predmet where nastavnik={$userid} and predmet={$predmet} and akademska_godina={$ag}");
                        if (mysql_num_rows($q40b) < 1) {
                            zamgerlog("AJAH fiksna - nije na predmetu pp{$predmet}, ag{$ag}", 3);
                            zamgerlog2("nije saradnik na predmetu (fiksna)", $predmet, $ag);
                            print "niste saradnik na predmetu";
                            break;
                        }
                    }
                    $padmin = 1;
                    // Dozvoljavamo saradnicima da unose fiksne komponente
                } else {
                    if ($ime == "ko" || $ime == "kodatum") {
                        // konacna ocjena
                        $stud_id = intval($parametri[1]);
                        if ($ime == "ko" && $vrijednost != "/") {
                            $vrijednost = intval($vrijednost);
                        }
                        // zaokruzujemo
                        $predmet = intval($parametri[2]);
                        $ag = intval($parametri[3]);
                        $max = 10;
                        if (!$user_siteadmin && !$user_studentska) {
                            $q41 = myquery("select nivo_pristupa from nastavnik_predmet where nastavnik={$userid} and predmet={$predmet} and akademska_godina={$ag}");
                            if (mysql_num_rows($q41) < 1) {
                                zamgerlog("AJAH ispit/ko - niste saradnik (ispit pp{$predmet}, ag{$ag})", 3);
                                zamgerlog2("nije saradnik na predmetu (ispit/ko)", $predmet, $ag);
                                print "niste saradnik na predmetu {$predmet}";
                                break;
                            }
                            if (mysql_result($q41, 0, 0) == "nastavnik") {
                                $padmin = 1;
                            }
                        }
                    }
                }
            }
            if ($padmin == 0 && !$user_siteadmin && !$user_studentska) {
                zamgerlog("AJAH ispit - pogresne privilegije (ispit i{$ispit})", 3);
                zamgerlog2("ispit - pogresne privilegije", $ispit);
                print "niste nastavnik na predmetu {$predmet} niti admin!";
                break;
            }
            // Da li je student na predmetu?
            $q45 = myquery("select count(*) from student_predmet as sp, ponudakursa as pk where sp.student={$stud_id} and sp.predmet=pk.id and pk.predmet={$predmet}");
            if (mysql_result($q45, 0, 0) < 1) {
                zamgerlog("AJAH ispit - student u{$stud_id} ne slusa predmet pp{$predmet} (ispit i{$ispit})", 3);
                zamgerlog2("ispit - student ne slusa predmet", $stud_id, $ispit);
                print "student {$stud_id} ne sluša predmet {$predmet}";
                break;
            }
            // Maksimalan i minimalan broj bodova
            if ($ime != "kodatum" && $vrijednost > $max) {
                zamgerlog("AJAH ispit - vrijednost {$vrijednost} > max {$max}", 3);
                zamgerlog2("ispit - vrijednost > max", $stud_id, intval($ispit), 0, "{$vrijednost} > {$max}");
                if ($ime == "ko") {
                    print "stavili ste ocjenu veću od 10";
                } else {
                    print "maksimalan broj bodova je {$max}, a unijeli ste {$vrijednost}";
                }
                break;
            }
            if ($ime == "ko" && $vrijednost < 6 && $vrijednost !== "/") {
                zamgerlog("AJAH ispit - konacna ocjena manja od 6 ({$vrijednost})", 3);
                zamgerlog2("ispit - konacna ocjena manja od 6", 0, 0, 0, $vrijednost);
                print "stavili ste ocjenu manju od 6";
                break;
            }
            if ($ime == "kodatum") {
                // Parsiranje datuma
                if (!preg_match("/(\\d+).*?(\\d+).*?(\\d+)/", $vrijednost, $matches)) {
                    zamgerlog("AJAH ispit - datum konacne ocjene nije u trazenom formatu ({$vrijednost})", 3);
                    zamgerlog2("ispit - datum konacne ocjene nije u trazenom formatu", 0, 0, 0, $vrijednost);
                    print "los format datuma";
                    break;
                }
                $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;
                    }
                }
                if (!checkdate($mjesec, $dan, $godina)) {
                    zamgerlog("AJAH ispit - datum konacne ocjene je nemoguc ({$vrijednost})", 3);
                    zamgerlog2("ispit - datum konacne ocjene je nemoguc", 0, 0, 0, $vrijednost);
                    print "uneseni datum {$dan}. {$mjesec}. {$godina} je kalendarski nemoguc";
                    break;
                }
                $novidatum = mktime(0, 0, 0, $mjesec, $dan, $godina);
                if ($novidatum === false) {
                    zamgerlog("AJAH ispit - datum konacne ocjene je neispravan ({$vrijednost})", 3);
                    zamgerlog2("ispit - datum konacne ocjene je nemoguc", 0, 0, 0, $vrijednost);
                    print "uneseni datum {$dan}. {$mjesec}. {$godina} nije ispravan";
                    break;
                }
            }
            // Ažuriranje podataka u bazi
            if ($ime == "ispit") {
                $q50 = myquery("select ocjena from ispitocjene where ispit={$ispit} and student={$stud_id}");
                $c = mysql_num_rows($q50);
                if ($c == 0 && $vrijednost !== "/") {
                    $q60 = myquery("insert into ispitocjene set ispit={$ispit}, student={$stud_id}, ocjena={$vrijednost}");
                    zamgerlog("AJAH ispit - upisan novi rezultat {$vrijednost} (ispit i{$ispit}, student u{$stud_id})", 4);
                    // nivo 4: audit
                    zamgerlog2("upisan rezultat ispita", $stud_id, $ispit, 0, $vrijednost);
                    // nivo 4: audit
                } else {
                    if ($c > 0 && $vrijednost === "/") {
                        $staraocjena = mysql_result($q50, 0, 0);
                        $q60 = myquery("delete from ispitocjene where ispit={$ispit} and student={$stud_id}");
                        zamgerlog("AJAH ispit - izbrisan rezultat {$staraocjena} (ispit i{$ispit}, student u{$stud_id})", 4);
                        // nivo 4: audit
                        zamgerlog2("izbrisan rezultat ispita", $stud_id, $ispit, 0, $staraocjena);
                        // nivo 4: audit
                    } else {
                        if ($c > 0) {
                            $staraocjena = mysql_result($q50, 0, 0);
                            $q60 = myquery("update ispitocjene set ocjena={$vrijednost} where ispit={$ispit} and student={$stud_id}");
                            zamgerlog("AJAH ispit - izmjena rezultata {$staraocjena} u {$vrijednost} (ispit i{$ispit}, student u{$stud_id})", 4);
                            // nivo 4: audit
                            zamgerlog2("izmjenjen rezultat ispita", $stud_id, $ispit, 0, "{$staraocjena} -> {$vrijednost}");
                            // nivo 4: audit
                        }
                    }
                }
                update_komponente($stud_id, $ponudakursa, $komponenta);
            } else {
                if ($ime == "fiksna") {
                    // Odredjujemo ponudukursa zbog tabele komponentebodovi
                    $q62 = myquery("select pk.id 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($q62, 0, 0);
                    $q63 = myquery("delete from komponentebodovi where student={$stud_id} and predmet={$ponudakursa} and komponenta={$komponenta}");
                    if ($vrijednost != "/") {
                        $q66 = myquery("insert into komponentebodovi set student={$stud_id}, predmet={$ponudakursa}, komponenta={$komponenta}, bodovi={$vrijednost}");
                    }
                    zamgerlog("AJAH fiksna - upisani bodovi {$vrijednost} za fiksnu komponentu {$komponenta} (predmet pp{$predmet}, student u{$stud_id})", 4);
                    zamgerlog2("izmjena bodova za fiksnu komponentu", intval($stud_id), intval($ponudakursa), intval($komponenta), $vrijednost);
                } else {
                    if ($ime == "ko") {
                        // Konacna ocjena
                        // Ne koristimo REPLACE i slicno zbog logginga
                        $q70 = myquery("select ocjena from konacna_ocjena where predmet={$predmet} and student={$stud_id}");
                        $c = mysql_num_rows($q70);
                        if ($c == 0 && $vrijednost != "/") {
                            // Određivanje datuma za indeks
                            $q105 = myquery("SELECT UNIX_TIMESTAMP(it.datumvrijeme) \n\t\t\tFROM ispit as i, ispit_termin as it, student_ispit_termin as sit \n\t\t\tWHERE sit.student={$stud_id} and sit.ispit_termin=it.id and it.ispit=i.id and i.predmet={$predmet} and i.akademska_godina={$ag}\n\t\t\tORDER BY i.datum DESC LIMIT 1");
                            if (mysql_num_rows($q105) > 0) {
                                $datum_u_indeksu = mysql_result($q105, 0, 0);
                                if ($datum_u_indeksu > time()) {
                                    $datum_provjeren = 0;
                                } else {
                                    $datum_provjeren = 1;
                                }
                            } else {
                                $datum_u_indeksu = time();
                                $datum_provjeren = 0;
                            }
                            $q80 = myquery("insert into konacna_ocjena set predmet={$predmet}, akademska_godina={$ag}, student={$stud_id}, ocjena={$vrijednost}, datum=NOW(), datum_u_indeksu=FROM_UNIXTIME({$datum_u_indeksu}), datum_provjeren={$datum_provjeren}");
                            zamgerlog("AJAH ko - dodana ocjena {$vrijednost} (predmet pp{$predmet}, student u{$stud_id})", 4);
                            // nivo 4: audit
                            zamgerlog2("dodana ocjena", $stud_id, $predmet, $ag, $vrijednost);
                        } else {
                            if ($c > 0 && $vrijednost == "/") {
                                $staraocjena = mysql_result($q70, 0, 0);
                                $q80 = myquery("delete from konacna_ocjena where predmet={$predmet} and student={$stud_id}");
                                zamgerlog("AJAH ko - obrisana ocjena {$staraocjena} (predmet pp{$predmet}, student u{$stud_id})", 4);
                                // nivo 4: audit
                                zamgerlog2("obrisana ocjena", $stud_id, $predmet, $ag, $staraocjena);
                            } else {
                                if ($c > 0) {
                                    $staraocjena = mysql_result($q70, 0, 0);
                                    $q80 = myquery("update konacna_ocjena set ocjena={$vrijednost}, datum=NOW() where predmet={$predmet} and student={$stud_id}");
                                    zamgerlog("AJAH ko - izmjena ocjene {$staraocjena} u {$vrijednost} (predmet pp{$predmet}, student u{$stud_id})", 4);
                                    // nivo 4: audit
                                    zamgerlog2("izmjena ocjene", $stud_id, $predmet, $ag, "{$staraocjena} -> {$vrijednost}");
                                }
                            }
                        }
                    } else {
                        if ($ime == "kodatum") {
                            // AJAH "kodatum" je uvijek promjena
                            $q85 = myquery("select UNIX_TIMESTAMP(datum_u_indeksu), datum_provjeren from konacna_ocjena where predmet={$predmet} and student={$stud_id}");
                            if (mysql_num_rows($q85) == 0) {
                                print "ne moze se mijenjati datum dok se ne unese ocjena";
                                break;
                            }
                            $staridatum = mysql_result($q85, 0, 0);
                            $datum_provjeren = mysql_result($q85, 0, 1);
                            if ($staridatum != $novidatum || $datum_provjeren == 0) {
                                $q87 = myquery("update konacna_ocjena set datum_u_indeksu=FROM_UNIXTIME({$novidatum}), datum_provjeren=1 where predmet={$predmet} and student={$stud_id}");
                                zamgerlog("AJAH kodatum - promijenjen datum u indeksu (predmet pp{$predmet}, student u{$stud_id})", 4);
                                zamgerlog2("promijenjen datum ocjene", $stud_id, $predmet, $ag, date("d.m.Y", $novidatum));
                            }
                        }
                    }
                }
            }
            print "OK";
            break;
        case "pretraga":
            if ($userid == 0) {
                zamgerlog("AJAH pretraga - istekla sesija", 3);
                // nivo 3 - greska
                zamgerlog2("pretraga - istekla sesija");
                // nivo 3 - greska
                print "Vasa sesija je istekla. Pritisnite dugme Refresh da se ponovo prijavite.";
                break;
            }
            $ime = my_escape($_REQUEST['ime']);
            if (!preg_match("/\\w/", $ime)) {
                print "OK";
                return;
            }
            $ime = str_replace("(", "", $ime);
            $ime = str_replace(")", "", $ime);
            $imena = explode(" ", $ime);
            $upit = "";
            foreach ($imena as $dio) {
                if ($upit != "") {
                    $upit .= " and ";
                }
                $upit .= "(o.ime like '%{$dio}%' or o.prezime like '%{$dio}%' or a.login like '%{$dio}%' or o.brindexa like '%{$dio}%')";
            }
            $q10 = myquery("select a.login, o.ime, o.prezime from auth as a, osoba as o where a.id=o.id and {$upit} order by o.prezime, o.ime");
            $redova = 0;
            while ($r10 = mysql_fetch_row($q10)) {
                if (strlen($r10[0]) < 2) {
                    continue;
                }
                $primalac = "{$r10['0']} ({$r10['1']} {$r10['2']})";
                print "{$primalac}\n";
                $redova++;
                if ($redova > 10) {
                    break;
                }
            }
            if ($redova == 0) {
                print "Nema rezultata\n";
            }
            print "OK";
            break;
            // Unos bodova sa prijemnog
        // Unos bodova sa prijemnog
        case "prijemni_unos":
            if ($userid == 0) {
                zamgerlog("AJAH prijemni - istekla sesija", 3);
                // nivo 3 - greska
                zamgerlog2("prijemni - istekla sesija");
                // nivo 3 - greska
                print "Vasa sesija je istekla. Pritisnite dugme Refresh da se ponovo prijavite.";
                break;
            }
            if (!$user_studentska && !$user_siteadmin) {
                zamgerlog("AJAH prijemni - korisnik nije studentska sluzba ", 3);
                // nivo 3 - greska
                zamgerlog2("prijemni - korisnik nije studentska sluzba");
                // nivo 3 - greska
                print "niste studentska sluzba";
                break;
            }
            $osoba = intval($_REQUEST['osoba']);
            $termin = intval($_REQUEST['termin']);
            $vrijednost = floatval(str_replace(",", ".", $_REQUEST['vrijednost']));
            $q100 = myquery("select count(*) from prijemni_prijava where osoba={$osoba} and prijemni_termin={$termin}");
            if (mysql_result($q100, 0, 0) == 0) {
                print "Nepoznat id {$id}";
                break;
            }
            // Dodati provjeru rezultata prijemnog...
            if ($_REQUEST['vrijednost'] == "/") {
                $q110 = myquery("update prijemni_prijava set rezultat=0, izasao=0 where osoba={$osoba} and prijemni_termin={$termin}");
            } else {
                $q110 = myquery("update prijemni_prijava set rezultat={$vrijednost}, izasao=1 where osoba={$osoba} and prijemni_termin={$termin}");
            }
            print "OK";
            zamgerlog("upisan rezultat na prijemnom za u{$osoba}, termin {$termin} ({$vrijednost})", 2);
            zamgerlog2("upisan rezultat na prijemnom", $osoba, $termin, 0, $vrijednost);
            break;
            // Unos ocjena tokom srednje skole za prijemni
        // Unos ocjena tokom srednje skole za prijemni
        case "prijemni_ocjene":
            if ($userid == 0) {
                zamgerlog("AJAH prijemni - istekla sesija", 3);
                // nivo 3 - greska
                zamgerlog2("prijemni - istekla sesija");
                // nivo 3 - greska
                print "Vasa sesija je istekla. Pritisnite dugme Refresh da se ponovo prijavite.";
                break;
            }
            if (!$user_studentska && !$user_siteadmin) {
                zamgerlog("AJAH prijemni - korisnik nije studentska sluzba ", 3);
                // nivo 3 - greska
                zamgerlog2("prijemni - korisnik nije studentska sluzba");
                // nivo 3 - greska
                print "niste studentska sluzba";
                break;
            }
            $osoba = intval($_REQUEST['osoba']);
            $nova = intval($_REQUEST['nova']);
            $stara = intval($_REQUEST['stara']);
            $razred = intval($_REQUEST['razred']);
            $tipocjene = intval($_REQUEST['tipocjene']);
            $rednibroj = intval($_REQUEST['rednibroj']);
            // Pretpostavljamo da je id osobe tačan
            // Glupost :( ali šta se može kad se ocjene moraju unositi prije nego što se registruje osoba
            /*	$q100 = myquery("select count(*) from osoba where id=$osoba");
            	if (mysql_result($q100,0,0)==0)  {
            		print "Nepoznat id $prijemni";
            		break;
            	}*/
            if ($_REQUEST['subakcija'] != "obrisi" && $_REQUEST['subakcija'] != "izmijeni" && $_REQUEST['subakcija'] != "dodaj") {
                print "Nepoznata akcija: " . my_escape($_REQUEST['akcija']);
                break;
            }
            if ($_REQUEST['subakcija'] == "obrisi" || $_REQUEST['subakcija'] == "izmijeni") {
                $q200 = myquery("delete from srednja_ocjene where osoba={$osoba} and razred={$razred} and ocjena={$stara} and tipocjene={$tipocjene} and redni_broj={$rednibroj} limit 1");
            }
            if ($_REQUEST['subakcija'] == "dodaj" || $_REQUEST['subakcija'] == "izmijeni") {
                $q200 = myquery("insert into srednja_ocjene set osoba={$osoba}, razred={$razred}, ocjena={$nova}, tipocjene={$tipocjene}, redni_broj={$rednibroj}");
            }
            print "OK";
            break;
            // Unos ocjena u prošlom ciklusu studija za prijemni
        // Unos ocjena u prošlom ciklusu studija za prijemni
        case "prosli_ciklus_ocjena":
            if ($userid == 0) {
                zamgerlog("AJAH prijemni - istekla sesija", 3);
                // nivo 3 - greska
                zamgerlog2("prijemni - istekla sesija");
                // nivo 3 - greska
                print "Vasa sesija je istekla. Pritisnite dugme Refresh da se ponovo prijavite.";
                break;
            }
            if (!$user_studentska && !$user_siteadmin) {
                zamgerlog("AJAH prijemni - korisnik nije studentska sluzba ", 3);
                // nivo 3 - greska
                zamgerlog2("prijemni - korisnik nije studentska sluzba");
                // nivo 3 - greska
                print "niste studentska sluzba";
                break;
            }
            $osoba = intval($_REQUEST['osoba']);
            $nova = intval($_REQUEST['nova']);
            $rednibroj = intval($_REQUEST['rednibroj']);
            // nece biti nula
            $q100 = myquery("select count(*) from osoba where id={$osoba}");
            if (mysql_result($q100, 0, 0) == 0) {
                print "Nepoznata osoba {$osoba}";
                break;
            }
            if ($nova == 0) {
                $q140 = myquery("delete from prosliciklus_ocjene where osoba={$osoba} and redni_broj={$rednibroj}");
            } else {
                if ($nova < 6 || $nova > 10) {
                    print "Ocjena nije u opsegu 6-10";
                    break;
                } else {
                    $q110 = myquery("select count(*) from prosliciklus_ocjene where osoba={$osoba} and redni_broj={$rednibroj}");
                    if (mysql_result($q110, 0, 0) == 0) {
                        $q120 = myquery("insert into prosliciklus_ocjene set osoba={$osoba}, redni_broj={$rednibroj}, ocjena={$nova}");
                    } else {
                        $q130 = myquery("update prosliciklus_ocjene set ocjena={$nova} where osoba={$osoba} and redni_broj={$rednibroj}");
                    }
                }
            }
            print "OK";
            break;
            // Unos ECTS bodova u prošlom ciklusu studija za prijemni
        // Unos ECTS bodova u prošlom ciklusu studija za prijemni
        case "prosli_ciklus_ects":
            // 1500,5 / 157,5 = 9,52698413 / 6 = 1,58783069
            if ($userid == 0) {
                zamgerlog("AJAH prijemni - istekla sesija", 3);
                // nivo 3 - greska
                zamgerlog2("prijemni - istekla sesija");
                // nivo 3 - greska
                print "Vasa sesija je istekla. Pritisnite dugme Refresh da se ponovo prijavite.";
                break;
            }
            if (!$user_studentska && !$user_siteadmin) {
                zamgerlog("AJAH prijemni - korisnik nije studentska sluzba ", 3);
                // nivo 3 - greska
                zamgerlog2("prijemni - korisnik nije studentska sluzba");
                // nivo 3 - greska
                print "niste studentska sluzba";
                break;
            }
            $osoba = intval($_REQUEST['osoba']);
            $nova = floatval($_REQUEST['nova']);
            $rednibroj = intval($_REQUEST['rednibroj']);
            // nece biti nula
            $q100 = myquery("select count(*) from osoba where id={$osoba}");
            if (mysql_result($q100, 0, 0) == 0) {
                print "Nepoznata osoba {$osoba}";
                break;
            }
            if ($nova == 0) {
                $q140 = myquery("delete from prosliciklus_ocjene where osoba={$osoba} and redni_broj={$rednibroj}");
            } else {
                $q110 = myquery("select count(*) from prosliciklus_ocjene where osoba={$osoba} and redni_broj={$rednibroj}");
                if (mysql_result($q110, 0, 0) == 0) {
                    $q120 = myquery("insert into prosliciklus_ocjene set osoba={$osoba}, redni_broj={$rednibroj}, ects={$nova}");
                } else {
                    $q130 = myquery("update prosliciklus_ocjene set ects={$nova} where osoba={$osoba} and redni_broj={$rednibroj}");
                }
            }
            print "OK";
            break;
        case "spisak_predmeta":
            $ag = intval($_REQUEST['ag']);
            $studij = intval($_REQUEST['studij']);
            $semestar = intval($_REQUEST['semestar']);
            $q4 = myquery("select p.id,p.naziv,pk.akademska_godina from predmet as p, ponudakursa as pk where pk.predmet=p.id and pk.akademska_godina={$ag} and pk.studij={$studij} and pk.semestar={$semestar} order by p.naziv");
            while ($r4 = mysql_fetch_row($q4)) {
                print "{$r4['0']} {$r4['1']}|";
            }
            print "OK";
            break;
        default:
            # Testna poruka
            ?>

Wellcome to ajah :)

<?php 
    }
}
Exemplo n.º 19
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 
}
Exemplo n.º 20
0
function izvjestaj_for_looper()
{
    global $sadrzaj_bafera_za_csv, $conf_files_path, $registry;
    global $userid, $user_student, $user_nastavnik, $user_studentska, $user_siteadmin;
    $koji = my_escape($_REQUEST['koji_izvjestaj']);
    $staf = str_replace("/", "_", $koji);
    $found = false;
    foreach ($registry as $r) {
        if ($r[0] == $koji) {
            if (strstr($r[3], "P") || strstr($r[3], "S") && $user_student || strstr($r[3], "N") && $user_nastavnik || strstr($r[3], "B") && $user_studentska || strstr($r[3], "A") && $user_siteadmin) {
                $found = true;
            } else {
                zamgerlog("for_looper pristup nedozvoljenom modulu {$koji}", 3);
                niceerror("Pristup nedozvoljenom modulu");
                return;
            }
            break;
        }
    }
    if ($found === false) {
        zamgerlog("for_looper nepostojeći modul {$koji}", 3);
        niceerror("Pristup nepostojećem modulu");
        return;
    }
    include "{$koji}.php";
    //ovdje ga ukljucujem
    $for_loop_vars = array();
    // Čitanje for_loop varijabli iz upita
    foreach ($_REQUEST as $key => $value) {
        if (substr($key, 0, 8) == "for_loop") {
            list($var, $range) = explode(" ", $value);
            $for_loop_vars[$var] = $range;
        }
    }
    $kombinacije = array();
    foreach ($for_loop_vars as $var => $range) {
        $values = array();
        if (strstr($range, ",")) {
            $values = explode(",", $range);
        } else {
            if (strstr($range, "-")) {
                list($begin, $end) = explode("-", $range);
                for ($i = $begin; $i <= $end; $i++) {
                    $values[] = $i;
                }
            }
        }
        $tmp_kombinacije = array();
        if (empty($kombinacije)) {
            foreach ($values as $value) {
                $tmp = array();
                $tmp[] = "{$var}={$value}";
                array_push($tmp_kombinacije, $tmp);
            }
        } else {
            foreach ($kombinacije as $komb) {
                foreach ($values as $value) {
                    $tmp = $komb;
                    $tmp[] = "{$var}={$value}";
                    array_push($tmp_kombinacije, $tmp);
                }
            }
        }
        $kombinacije = $tmp_kombinacije;
    }
    $i = 1;
    foreach ($kombinacije as $komb) {
        //print "Komb ".($i++)."<br>\n";
        foreach ($komb as $dijelovi) {
            list($key, $value) = explode("=", $dijelovi);
            $_REQUEST[$key] = $value;
            //print "Key: $key Value: $value<br>\n";
        }
        eval("{$staf}();");
        print "\n<DIV style=\"page-break-after:always\"></DIV>\n";
    }
    //	print "Radi!\n";
    //	eval("$staf();");
}
Exemplo n.º 21
0
function db_grid($table)
{
    global $_lv_;
    global $__lv_cn, $__lv_ct, $__lv_cs, $__lv_showcreate;
    // Update database with submitted data
    db_submit();
    // Parse table columns from "show create" query
    __lv_parsetable($table);
    // Generate form header with hidden fields - this will be used for each row
    $form_header = genform("POST");
    $form_header .= '<input type="hidden" name="_lv_table" value="' . $table . '"> <input type="hidden" name="_lv_action" value="edit">' . "\n";
    // List tables - used to find foreign keys
    $q200 = myquery("show tables");
    while ($r200 = mysql_fetch_row($q200)) {
        $tables[] = $r200[0];
    }
    // Query database to get default form values
    $sql = "select * from {$table}";
    $n = 0;
    for ($i = 0; $i < count($__lv_cn); $i++) {
        $name = $__lv_cn[$i];
        // Get WHERE from $_lv_
        if (strlen($_lv_["where:{$name}"]) > 0) {
            if ($n > 0) {
                $sql .= " and ";
            } else {
                $sql .= " where ";
            }
            $sql .= "{$name}='" . my_escape($_lv_["where:{$name}"]) . "'";
            $n++;
        }
        // We are not interested in _lv_where...
    }
    // Get ORDER BY from $_lv_
    foreach ($_lv_ as $key => $value) {
        if ($key == "orderby") {
            $sql .= " order by " . $value;
            break;
        }
    }
    // Get LIMIT from $_lv_
    foreach ($_lv_ as $key => $value) {
        if ($key == "limit") {
            $sql .= " limit " . $value;
            break;
        }
    }
    // Display table header
    $result .= '<table border="0" cellspacing="0" cellpadding="3">' . "\n";
    $result .= '<tr bgcolor="#bbbbbb">' . "\n";
    for ($i = 0; $i < count($__lv_cn); $i++) {
        $name = $__lv_cn[$i];
        $type = $__lv_ct[$i];
        $label = strtoupper(substr($name, 0, 1)) . strtolower(substr($name, 1));
        $label = str_replace("_", " ", $label);
        if ($_lv_["label:{$name}"]) {
            $label = $_lv_["label:{$name}"];
        }
        // ID and fields given in WHERE are always hidden
        if ($name != "id" && !$_lv_["where:{$name}"]) {
            $result .= "<th>{$label}</th>\n";
        }
    }
    $result .= "<th>&nbsp;</th>\n";
    // Extra column for submit button
    $result .= "</tr>\n";
    // Table contents
    $q202 = myquery($sql);
    $color = 0;
    while ($r202 = mysql_fetch_assoc($q202)) {
        $result .= "{$form_header}\n";
        if ($color == 0) {
            $result .= "<tr>\n";
            $color = 1;
        } else {
            $result .= '<tr bgcolor="#efefef">' . "\n";
            $color = 0;
        }
        // Display form
        for ($i = 0; $i < count($__lv_cn); $i++) {
            $name = $__lv_cn[$i];
            $type = $__lv_ct[$i];
            $size = $__lv_cs[$i];
            if ($size > 15) {
                $size = 15;
            }
            // not practical to have size>15
            // ID and fields given in WHERE are always hidden
            if ($name == "id") {
                // FIXME: Value of 0 suggests that this is an autonumber field
                if (intval($r202[$name]) != 0) {
                    $result .= '<input type="hidden" name="_lv_where_id" value="' . $r202[$name] . '">' . "\n";
                    // We need to resubmit data for add
                    $result .= '<input type="hidden" name="_lv_column_id" value="' . $r202[$name] . '">' . "\n";
                }
            } else {
                if ($_lv_["where:{$name}"]) {
                    $result .= '<input type="hidden" name="_lv_where_' . $name . '" value="' . $_lv_["where:{$name}"] . '">' . "\n";
                    // We need to resubmit data for add
                    $result .= '<input type="hidden" name="_lv_column_' . $name . '" value="' . $_lv_["where:{$name}"] . '">' . "\n";
                    // find foreign keys
                } else {
                    if (in_array($name, $tables)) {
                        $result .= "<td>" . db_dropdown($name, $r202[$name]) . "</td>\n";
                        // db_dropdown will destroy __lv_c* ...
                        __lv_parsetable($table);
                        // Various column types
                    } else {
                        if ($type == "varchar") {
                            $result .= '<td><input type="text" name="_lv_column_' . $name . '" size="' . $size . '" value="' . $r202[$name] . '"></td>' . "\n";
                        } else {
                            if ($type == "text") {
                                $result .= '<td><textarea name="_lv_column_' . $name . '" rows="5" cols="20">' . $r202[$name] . '</textarea></td>' . "\n";
                            } else {
                                if ($type == "date") {
                                    // Parse date
                                    if ($r202[$name]) {
                                        $mytime = mysql2time($r202[$name]);
                                    } else {
                                        $mytime = time();
                                        // Set time to now
                                    }
                                    $d = date('d', $mytime);
                                    $m = date('m', $mytime);
                                    $Y = date('Y', $mytime);
                                    $result .= '<td>' . datectrl($d, $m, $Y, "_lv_column_{$name}" . "_") . "</td>\n";
                                } else {
                                    if ($type == "datetime") {
                                        // Parse date
                                        if ($r202[$name]) {
                                            $mytime = mysql2time($r202[$name]);
                                        } else {
                                            $mytime = time();
                                            // Set time to now
                                        }
                                        $d = date('d', $mytime);
                                        $m = date('m', $mytime);
                                        $Y = date('Y', $mytime);
                                        $h = date('H', $mytime);
                                        $mi = date('i', $mytime);
                                        $se = date('s', $mytime);
                                        $result .= '<td>' . datectrl($d, $m, $Y, "_lv_column_{$name}" . "_") . "\n";
                                        $result .= '<input type="text" size="2" name="_lv_column_' . $name . '_hour" value="' . $h . '">:';
                                        $result .= '<input type="text" size="2" name="_lv_column_' . $name . '_minute" value="' . $mi . '">:';
                                        $result .= '<input type="text" size="2" name="_lv_column_' . $name . '_second" value="' . $se . '"></td>' . "\n";
                                    } else {
                                        if ($type == "tinyint" && $size == "1") {
                                            // assume boolean
                                            $result .= '<td><input type="checkbox" name="_lv_column_' . $name . '"';
                                            if ($r202[$name] == "1") {
                                                $result .= ' CHECKED';
                                            }
                                            $result .= '></td>' . "\n";
                                        } else {
                                            if ($type == "int" || $type == "tinyint" || $type == "smallint" || $type == "bigint" || $type == "float" || $type == "double") {
                                                // classic numeric
                                                $result .= '<td><input type="text" name="_lv_column_' . $name . '" size="' . $size . '" value="' . $r202[$name] . '"></td>' . "\n";
                                            } else {
                                                $result .= "<td>Unknown type: '{$type}'</td>\n";
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        // Row ends
        $result .= '<td>';
        if ($_lv_["enableedit"]) {
            $result .= '<a href="' . genuri() . '&_lv_nav_id=' . $r202["id"] . '">Izmijeni</a> ';
        }
        $result .= '<input type="submit" value=" Pošalji "><input type="submit" name="_lv_action_delete" value=" Obriši "></td>' . "\n";
        $result .= "</tr></form>";
    }
    $result .= "</table>\n";
    return $result;
}
Exemplo n.º 22
0
function studentska_osobe()
{
    global $userid, $user_siteadmin, $user_studentska;
    global $conf_system_auth, $conf_ldap_server, $conf_ldap_domain, $conf_files_path;
    global $registry;
    // šta je od modula aktivno
    global $_lv_;
    // Potrebno za genform() iz libvedran
    require "lib/manip.php";
    // Radi upisa studenta na predmet
    // Provjera privilegija
    if (!$user_siteadmin && !$user_studentska) {
        // 2 = studentska, 3 = admin
        zamgerlog("korisnik nije studentska (admin {$admin})", 3);
        zamgerlog2("nije studentska");
        biguglyerror("Pristup nije dozvoljen.");
        return;
    }
    ?>

<center>
<table border="0"><tr><td>

<?php 
    $akcija = $_REQUEST['akcija'];
    $osoba = intval($_REQUEST['osoba']);
    // Dodavanje novog korisnika u bazu
    if ($_POST['akcija'] == "novi" && check_csrf_token()) {
        $ime = substr(my_escape($_POST['ime']), 0, 100);
        if (!preg_match("/\\w/", $ime)) {
            niceerror("Ime nije ispravno");
            return;
        }
        $prezime = substr(my_escape($_POST['prezime']), 0, 100);
        // Probamo tretirati ime kao LDAP UID
        if ($conf_system_auth == "ldap") {
            $uid = $ime;
            $ds = ldap_connect($conf_ldap_server);
            ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);
            if ($ds && ldap_bind($ds)) {
                $sr = ldap_search($ds, "", "uid={$uid}", array("givenname", "sn"));
                $results = ldap_get_entries($ds, $sr);
                if ($results['count'] > 0) {
                    $gn = $results[0]['givenname'];
                    if (is_array($gn)) {
                        $gn = $results[0]['givenname'][0];
                    }
                    if ($gn) {
                        $ime = $gn;
                    }
                    $sn = $results[0]['sn'];
                    if (is_array($sn)) {
                        $sn = $results[0]['sn'][0];
                    }
                    if ($sn) {
                        $prezime = $sn;
                    }
                } else {
                    zamgerlog("korisnik '{$uid}' nije pronadjen na LDAPu", 3);
                    zamgerlog2("korisnik nije pronadjen na LDAPu", 0, 0, 0, $uid);
                    $uid = "";
                    niceerror("Korisnik nije pronadjen na LDAPu... dodajem novog!");
                }
            } else {
                zamgerlog("ne mogu kontaktirati LDAP server", 3);
                zamgerlog2("ne mogu kontaktirati LDAP server");
                niceerror("Ne mogu kontaktirati LDAP server... pravim se da ga nema :(");
            }
        }
        if (!preg_match("/\\w/", $prezime)) {
            niceerror("Prezime nije ispravno");
            return;
        }
        // Da li ovaj korisnik već postoji u osoba tabeli?
        $q10 = myquery("select id, ime, prezime from osoba where ime like '{$ime}' and prezime like '{$prezime}'");
        if ($r10 = mysql_fetch_row($q10)) {
            zamgerlog("korisnik vec postoji u bazi ('{$ime}' '{$prezime}' - ID: {$r10['0']})", 3);
            zamgerlog2("korisnik vec postoji u bazi", $r10[0], 0, 0, "'{$ime}' '{$prezime}'");
            niceerror("Korisnik već postoji u bazi:");
            print "<br><a href=\"?sta=studentska/osobe&akcija=edit&osoba={$r10['0']}\">{$r10['1']} {$r10['2']}</a>";
            return;
        } else {
            // Nije u tabeli, dodajemo ga...
            $q30 = myquery("select id from osoba order by id desc limit 1");
            $osoba = mysql_result($q30, 0, 0) + 1;
            $q40 = myquery("insert into osoba set id={$osoba}, ime='{$ime}', prezime='{$prezime}', naucni_stepen=6, strucni_stepen=5");
            // 6 = bez naučnog stepena, 5 = srednja stručna sprema
            if ($conf_system_auth == "ldap" && $uid != "") {
                // Ako je LDAP onda imamo email adresu
                $email = $uid . $conf_ldap_domain;
                $q33 = myquery("INSERT INTO email SET osoba={$osoba}, adresa='{$email}', sistemska=1");
                // Adresu podešavamo kao sistemsku što znači da je korisnik ne može mijenjati niti brisati
                // Mozemo ga dodati i u auth tabelu
                $q35 = myquery("select count(*) from auth where id={$osoba}");
                if (mysql_result($q35, 0, 0) == 0) {
                    $q37 = myquery("insert into auth set id={$osoba}, login='******', admin=1, aktivan=1");
                }
            }
            nicemessage("Novi korisnik je dodan.");
            zamgerlog("dodan novi korisnik u{$osoba} (ID: {$osoba})", 4);
            // nivo 4: audit
            zamgerlog2("dodan novi korisnik", $osoba);
            print "<br><a href=\"?sta=studentska/osobe&akcija=edit&osoba={$osoba}\">{$ime} {$prezime}</a>";
            return;
        }
    }
    // Izmjena licnih podataka osobe
    if ($akcija == "podaci") {
        if ($_POST['subakcija'] == "potvrda" && check_csrf_token()) {
            $ime = my_escape($_REQUEST['ime']);
            $prezime = my_escape($_REQUEST['prezime']);
            $spol = $_REQUEST['spol'];
            if ($spol != "M" && $spol != "Z") {
                $spol = "";
            }
            $jmbg = my_escape($_REQUEST['jmbg']);
            $nacionalnost = intval($_REQUEST['nacionalnost']);
            if ($nacionalnost == 0) {
                $nacionalnost = "NULL";
            }
            $brindexa = my_escape($_REQUEST['brindexa']);
            $djevojacko_prezime = my_escape($_REQUEST['djevojacko_prezime']);
            $imeoca = my_escape($_REQUEST['imeoca']);
            $prezimeoca = my_escape($_REQUEST['prezimeoca']);
            $imemajke = my_escape($_REQUEST['imemajke']);
            $prezimemajke = my_escape($_REQUEST['prezimemajke']);
            $mjesto_rodjenja = my_escape($_REQUEST['mjesto_rodjenja']);
            $opcina_rodjenja = intval($_REQUEST['opcina_rodjenja']);
            $drzava_rodjenja = intval($_REQUEST['drzava_rodjenja']);
            $drzavljanstvo = intval($_REQUEST['drzavljanstvo']);
            if ($drzavljanstvo == 0) {
                $drzavljanstvo = "NULL";
            }
            if ($_REQUEST['boracke_kategorije'] == "on") {
                $boracke_kategorije = 1;
            } else {
                $boracke_kategorije = 0;
            }
            $adresa = my_escape($_REQUEST['adresa']);
            $adresa_mjesto = my_escape($_REQUEST['adresa_mjesto']);
            $kanton = intval($_REQUEST['_lv_column_kanton']);
            if ($kanton == -1) {
                $kanton = "NULL";
            }
            $telefon = my_escape($_REQUEST['telefon']);
            $email = my_escape($_REQUEST['email']);
            $strucni_stepen = intval($_REQUEST['_lv_column_strucni_stepen']);
            if ($strucni_stepen == -1) {
                $strucni_stepen = "NULL";
            }
            $naucni_stepen = intval($_REQUEST['_lv_column_naucni_stepen']);
            if ($naucni_stepen == -1) {
                $naucni_stepen = "NULL";
            }
            $maternji_jezik = intval($_REQUEST['_lv_column_maternji_jezik']);
            $vozacka_dozvola = intval($_REQUEST['_lv_column_vozacki_kategorija']);
            $nacin_stanovanja = intval($_REQUEST['_lv_column_nacin_stanovanja']);
            // Sredjujem datum
            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;
                    }
                }
            }
            // Mjesto rođenja
            $mjrid = "NULL";
            if ($mjesto_rodjenja != "") {
                $q1 = myquery("select id from mjesto where naziv='{$mjesto_rodjenja}' and opcina={$opcina_rodjenja} and drzava={$drzava_rodjenja}");
                if (mysql_num_rows($q1) < 1) {
                    $q2 = myquery("select id from mjesto where naziv='{$mjesto_rodjenja}'");
                    if (mysql_num_rows($q2) < 1) {
                        nicemessage("Dodajem novo mjesto '{$mjesto_rodjenja}'");
                        $q2 = myquery("insert into mjesto set naziv='{$mjesto_rodjenja}', opcina={$opcina_rodjenja}, drzava={$drzava_rodjenja}");
                        $q1 = myquery("select id from mjesto where naziv='{$mjesto_rodjenja}'");
                    } else {
                        nicemessage("Promjena općine/države za mjesto '{$mjesto_rodjenja}'");
                        $q2 = myquery("insert into mjesto set naziv='{$mjesto_rodjenja}', opcina={$opcina_rodjenja}, drzava={$drzava_rodjenja}");
                        $q1 = myquery("select id from mjesto where naziv='{$mjesto_rodjenja}' and opcina={$opcina_rodjenja} and drzava={$drzava_rodjenja}");
                    }
                }
                $mjrid = mysql_result($q1, 0, 0);
            }
            // Mjesto adresa
            $admid = "NULL";
            if ($adresa_mjesto != "") {
                $q3 = myquery("select id from mjesto where naziv='{$adresa_mjesto}'");
                if (mysql_num_rows($q3) < 1) {
                    $q4 = myquery("insert into mjesto set naziv='{$adresa_mjesto}'");
                    $q3 = myquery("select id from mjesto where naziv='{$adresa_mjesto}'");
                }
                $admid = mysql_result($q3, 0, 0);
            }
            $q395 = myquery("update osoba set ime='{$ime}', prezime='{$prezime}', imeoca='{$imeoca}', prezimeoca='{$prezimeoca}', imemajke='{$imemajke}', prezimemajke='{$prezimemajke}', spol='{$spol}', brindexa='{$brindexa}', datum_rodjenja='{$godina}-{$mjesec}-{$dan}', mjesto_rodjenja={$mjrid}, nacionalnost={$nacionalnost}, drzavljanstvo={$drzavljanstvo}, jmbg='{$jmbg}', adresa='{$adresa}', adresa_mjesto={$admid}, telefon='{$telefon}', kanton='{$kanton}', strucni_stepen={$strucni_stepen}, naucni_stepen={$naucni_stepen}, djevojacko_prezime='{$djevojacko_prezime}', maternji_jezik={$maternji_jezik}, vozacka_dozvola={$vozacka_dozvola}, nacin_stanovanja={$nacin_stanovanja}, boracke_kategorije={$boracke_kategorije} where id={$osoba}");
            zamgerlog("promijenjeni licni podaci korisnika u{$osoba}", 4);
            // nivo 4 - audit
            zamgerlog2("promijenjeni licni podaci korisnika", $osoba);
            ?>
		<script language="JavaScript">
		location.href='?sta=studentska/osobe&osoba=<?php 
            echo $osoba;
            ?>
&akcija=edit';
		</script>
		<?php 
            return;
        }
        // Postavljanje ili promjena slike
        if ($_POST['subakcija'] == "postavisliku" && check_csrf_token()) {
            $slika = $_FILES['slika']['tmp_name'];
            if ($slika && file_exists($slika)) {
                // Provjeravamo ispravnost slike
                $podaci = getimagesize($slika);
                $koef = $podaci[0] / $podaci[1];
                if ($koef < 0.5 || $koef > 2) {
                    niceerror("Omjer širine i visine slike nije povoljan.");
                    print "<p>Slika bi trebala biti uobičajenog formata slike za lične dokumente. Ova je formata {$podaci['0']}x{$podaci['1']}.</p>\n";
                    return;
                }
                if ($podaci[2] != IMAGETYPE_GIF && $podaci[2] != IMAGETYPE_JPEG && $podaci[2] != IMAGETYPE_PNG && $podaci[2] != IMAGETYPE_TIFF_II) {
                    niceerror("Nepoznat tip slike.");
                    print "<p>Podržane su samo slike tipa GIF, JPEG ili PNG.</p>";
                    return;
                }
                // Brisemo evt. postojecu sliku
                $q498 = myquery("select slika from osoba where id={$osoba}");
                if (mysql_result($q498, 0, 0) != "") {
                    unlink("{$conf_files_path}/slike/" . mysql_result($q498, 0, 0));
                }
                // Kopiramo novu sliku
                $novavisina = 150;
                $novasirina = $novavisina * $koef;
                $filename = "{$conf_files_path}/slike/{$osoba}";
                if (!file_exists("{$conf_files_path}/slike")) {
                    mkdir("{$conf_files_path}/slike", 0777, true);
                }
                $dest = imagecreatetruecolor($novasirina, $novavisina);
                switch ($podaci[2]) {
                    case IMAGETYPE_GIF:
                        $source = imagecreatefromgif($slika);
                        imagecopyresampled($dest, $source, 0, 0, 0, 0, $novasirina, $novavisina, $podaci[0], $podaci[1]);
                        imagegif($dest, $filename . ".gif");
                        $slikabaza = "{$osoba}.gif";
                        break;
                    case IMAGETYPE_JPEG:
                        $source = imagecreatefromjpeg($slika);
                        imagecopyresampled($dest, $source, 0, 0, 0, 0, $novasirina, $novavisina, $podaci[0], $podaci[1]);
                        imagejpeg($dest, $filename . ".jpg");
                        $slikabaza = "{$osoba}.jpg";
                        break;
                    case IMAGETYPE_PNG:
                        $source = imagecreatefrompng($slika);
                        imagecopyresampled($dest, $source, 0, 0, 0, 0, $novasirina, $novavisina, $podaci[0], $podaci[1]);
                        imagepng($dest, $filename . ".png");
                        $slikabaza = "{$osoba}.png";
                        break;
                    case IMAGETYPE_TIFF_II:
                        nicemessage("Nije moguća promjena dimenzija slike tipa TIFF... Ostavljam zadate dimenzije.");
                        rename($slika, $filename . ".tiff");
                        $slikabaza = "{$osoba}.tiff";
                        break;
                }
                $q310 = myquery("update osoba set slika='{$slikabaza}' where id={$osoba}");
                zamgerlog("postavljena slika za korisnika u{$osoba}", 2);
                zamgerlog2("postavljena slika za korisnika", $osoba);
                ?>
			<script language="JavaScript">
			location.href='?sta=studentska/osobe&osoba=<?php 
                echo $osoba;
                ?>
&akcija=edit';
			</script>
			<?php 
                return;
            } else {
                nicemessage("Greška pri slanju slike");
            }
        }
        // Brisanje slike
        if ($_POST['subakcija'] == "obrisisliku" && check_csrf_token()) {
            // Brisemo evt. postojecu sliku
            $q496 = myquery("select slika from osoba where id={$osoba}");
            if (mysql_result($q498, 0, 0) != "") {
                unlink("{$conf_files_path}/slike/" . mysql_result($q496, 0, 0));
            }
            $q497 = myquery("update osoba set slika='' where id={$osoba}");
            zamgerlog("obrisana slika za korisnika u{$osoba}", 2);
            zamgerlog2("obrisana slika za korisnika", $osoba);
            ?>
		<script language="JavaScript">
		location.href='?sta=studentska/osobe&osoba=<?php 
            echo $osoba;
            ?>
&akcija=edit';
		</script>
		<?php 
            return;
        }
        // Mailovi
        if ($_GET['subakcija'] == "obrisimail") {
            $mailid = intval($_GET['mailid']);
            $q497a = myquery("select adresa from email where id={$mailid} and osoba={$osoba}");
            if (mysql_num_rows($q497a) < 1) {
                niceerror("Greška");
                return;
            }
            $staraadresa = mysql_result($q497a, 0, 0);
            $q498 = myquery("delete from email where osoba={$osoba} and id={$mailid}");
            zamgerlog("obrisana email adresa za u{$osoba}", 2);
            zamgerlog2("email adresa obrisana", $osoba, $mailid, 0, $staraadresa);
            nicemessage("Obrisana email adresa {$staraadresa}");
        }
        if ($_GET['subakcija'] == "izmijenimail") {
            $mailid = intval($_GET['mailid']);
            $adresa = my_escape($_GET['adresa']);
            $q497a = myquery("select adresa from email where id={$mailid} and osoba={$osoba}");
            if (mysql_num_rows($q497a) < 1) {
                niceerror("Greška");
                return;
            }
            $staraadresa = mysql_result($q497a, 0, 0);
            $q498 = myquery("update email set adresa='{$adresa}' where osoba={$osoba} and id={$mailid}");
            zamgerlog("promijenjena email adresa za u{$osoba}", 2);
            zamgerlog2("email adresa promijenjena", $osoba, $mailid, 0, "{$staraadresa} -> {$adresa}");
            nicemessage("Promijenjena email adresa {$staraadresa} u {$adresa}");
        }
        if ($_GET['subakcija'] == "dodajmail") {
            $adresa = my_escape($_GET['adresa']);
            $q498 = myquery("insert into email set adresa='{$adresa}', osoba={$osoba}, sistemska=0");
            zamgerlog("dodana email adresa za u{$osoba}", 2);
            zamgerlog2("email adresa dodana", $osoba, intval(mysql_insert_id()), 0, "{$adresa}");
            nicemessage("Dodana email adresa {$adresa}");
        }
        // Prikaz podataka
        $q400 = myquery("select ime, prezime, imeoca, prezimeoca, imemajke, prezimemajke, spol, 1, brindexa, UNIX_TIMESTAMP(datum_rodjenja), mjesto_rodjenja, jmbg, nacionalnost, drzavljanstvo, adresa, adresa_mjesto, telefon, kanton, strucni_stepen, naucni_stepen, slika, djevojacko_prezime, maternji_jezik, vozacka_dozvola, nacin_stanovanja, boracke_kategorije from osoba where id={$osoba}");
        if (!($r400 = mysql_fetch_row($q400))) {
            zamgerlog("nepostojeca osoba u{$osoba}", 3);
            zamgerlog2("nepostojeca osoba", $osoba);
            niceerror("Nepostojeća osoba!");
            return;
        }
        $ime = mysql_result($q400, 0, 0);
        $prezime = mysql_result($q400, 0, 1);
        $muski = $zenski = $boracke_kategorije = "";
        if (mysql_result($q400, 0, 6) == "M") {
            $muski = " CHECKED";
        }
        if (mysql_result($q400, 0, 6) == "Z") {
            $zenski = " CHECKED";
        }
        if (mysql_result($q400, 0, 25) == 1) {
            $boracke_kategorije = " CHECKED";
        }
        // Spisak gradova
        $q410 = myquery("select id,naziv,opcina,drzava from mjesto order by naziv");
        $gradovir = "<option></option>";
        $gradovia = "<option></option>";
        $gradovilist = array();
        while ($r410 = mysql_fetch_row($q410)) {
            if ($r410[0] == mysql_result($q400, 0, 10)) {
                $mjestorvalue = $r410[1];
                $eopcinarodjenja = $r410[2];
                $edrzavarodjenja = $r410[3];
            }
            if ($r410[0] == mysql_result($q400, 0, 15)) {
                $mjestoavalue = $r410[1];
            }
            $gradovilist[] = $r410[1];
        }
        // 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] == mysql_result($q400, 0, 13)) {
                $drzavljanstvor .= " SELECTED";
            }
            $drzavljanstvor .= ">{$r257['1']}</option>\n";
        }
        // Spisak nacionalnosti
        $q258 = myquery("select id, naziv from nacionalnost order by naziv");
        $nacionalnostr = "<option></option>";
        while ($r258 = mysql_fetch_row($q258)) {
            $nacionalnostr .= "<option value=\"{$r258['0']}\"";
            if ($r258[0] == mysql_result($q400, 0, 12)) {
                $nacionalnostr .= " SELECTED";
            }
            $nacionalnostr .= ">{$r258['1']}</option>\n";
        }
        // Spisak opičina
        $q259 = myquery("select id, naziv from opcina order by naziv");
        $opcinar = "";
        while ($r259 = mysql_fetch_row($q259)) {
            $opcinar .= "<option value=\"{$r259['0']}\"";
            if ($r259[0] == $eopcinarodjenja) {
                $opcinar .= " SELECTED";
            }
            $opcinar .= ">{$r259['1']}</option>\n";
        }
        // Spisak mailova
        $q260 = myquery("select id, adresa from email where osoba={$osoba}");
        $email_adrese = "";
        while ($r260 = mysql_fetch_row($q260)) {
            $email_adrese .= "<input type=\"text\" class=\"default\" name=\"email\" id=\"email{$r260['0']}\" value=\"{$r260['1']}\"> <input type=\"button\" class=\"default\" value=\"Izmijeni\" onclick=\"javascript:location.href='?sta=studentska/osobe&osoba={$osoba}&akcija=podaci&subakcija=izmijenimail&mailid={$r260['0']}&adresa='+document.getElementById('email{$r260['0']}').value;\"> <input type=\"button\" class=\"default\" value=\"Obriši\" onclick=\"javascript:location.href='?sta=studentska/osobe&osoba={$osoba}&akcija=podaci&subakcija=obrisimail&mailid={$r260['0']}';\"><br>\n";
        }
        ?>

	<script type="text/javascript" src="js/mycombobox.js"></script>
	<h2><?php 
        echo $ime;
        ?>
 <?php 
        echo $prezime;
        ?>
 - izmjena ličnih podataka</h2>
	<p>ID: <b><?php 
        echo $osoba;
        ?>
</b></p>
	<?php 
        if (mysql_result($q400, 0, 20) == "") {
            print genform("POST", "\"  enctype=\"multipart/form-data");
            ?>
		<input type="hidden" name="subakcija" value="postavisliku">
		<p>Dodaj sliku:<br /><input type="file" name="slika"> <input type="submit" value="Dodaj"></p>
		</form>
		<?php 
        } else {
            ?>
		<?php 
            echo genform("POST");
            ?>
		<input type="hidden" name="subakcija" value="obrisisliku">
		<p>Slika:<br />
		<img src="?sta=common/slika&osoba=<?php 
            echo $osoba;
            ?>
"><br/>
		<input type="submit" value="Obriši sliku"><br></form>
		<?php 
            print genform("POST", "\"  enctype=\"multipart/form-data");
            ?>
		<input type="hidden" name="subakcija" value="postavisliku">
		<input type="file" name="slika"> <input type="submit" value="Promijeni sliku"></p>
		</form>
		<?php 
        }
        ?>
	<?php 
        echo genform("POST");
        ?>
	<input type="hidden" name="subakcija" value="potvrda">
	<table border="0" width="600"><tr>
		<td>Ime:</td>
		<td><input type="text" name="ime" value="<?php 
        echo $ime;
        ?>
" class="default"></td>
	</tr><tr>
		<td>Prezime:</td>
		<td><input type="text" name="prezime" value="<?php 
        echo $prezime;
        ?>
" class="default"></tr>
	</tr><tr>
		<td>Spol:</td>
		<td><input type="radio" name="spol" value="M" <?php 
        echo $muski;
        ?>
> Muški &nbsp; <input type="radio" name="spol" value="Z" <?php 
        echo $zenski;
        ?>
> Ženski</td>
	</tr><tr>
		<td>JMBG:</td>
		<td><input type="text" name="jmbg" value="<?php 
        echo mysql_result($q400, 0, 11);
        ?>
" class="default"></td>
	</tr><tr>
		<td>Nacionalnost:</td>
		<td><select name="nacionalnost" class="default"><?php 
        echo $nacionalnostr;
        ?>
</select></td>
	</tr><tr>
		<td>Broj indexa<br>(za studente):</td>
		<td><input type="text" name="brindexa" value="<?php 
        echo mysql_result($q400, 0, 8);
        ?>
" class="default"></td>
	</tr><tr><td colspan="2">&nbsp;</td>
	</tr><tr>
		<td>Djevojačko prezime:</td>
		<td><input type="text" name="imeoca" value="<?php 
        echo mysql_result($q400, 0, 21);
        ?>
" class="default"></td>
	</tr><tr>
		<td>Ime oca:</td>
		<td><input type="text" name="imeoca" value="<?php 
        echo mysql_result($q400, 0, 2);
        ?>
" class="default"></td>
	</tr><tr>
		<td>Prezime oca:</td>
		<td><input type="text" name="prezimeoca" value="<?php 
        echo mysql_result($q400, 0, 3);
        ?>
" class="default"></tr>
	</tr><tr>
		<td>Ime majke:</td>
		<td><input type="text" name="imemajke" value="<?php 
        echo mysql_result($q400, 0, 4);
        ?>
" class="default"></td>
	</tr><tr>
		<td>Prezime majke:</td>
		<td><input type="text" name="prezimemajke" value="<?php 
        echo mysql_result($q400, 0, 5);
        ?>
" class="default"></td>
	</tr><tr><td colspan="2">&nbsp;</td>
	</tr><tr>
		<td>Datum rođenja:</td>
		<td><input type="text" name="datum_rodjenja" value="<?php 
        if (mysql_result($q400, 0, 4)) {
            print date("d. m. Y.", mysql_result($q400, 0, 9));
        }
        ?>
" class="default"></td>
	</tr><tr>
		<td>Mjesto rođenja:</td>
		<td><?php 
        echo mycombobox("mjesto_rodjenja", $mjestorvalue, $gradovilist);
        ?>
</td>
	</tr><tr>
		<td>Općina rođenja:</td>
		<td><select name="opcina_rodjenja" class="default"><?php 
        echo $opcinar;
        ?>
</select></td>
	</tr><tr>
		<td>Država rođenja:</td>
		<td><select name="drzava_rodjenja" class="default"><?php 
        echo $drzaverodjr;
        ?>
</select></td>
	</tr><tr>
		<td>Državljanstvo:</td>
		<td><select name="drzavljanstvo" class="default"><?php 
        echo $drzavljanstvor;
        ?>
</select></td>
	</tr><tr>
		<td>Boračke kategorije:</td>
		<td><input type="checkbox" name="boracke_kategorije" <?php 
        echo $boracke_kategorije;
        ?>
></td>
	</tr><tr><td colspan="2">&nbsp;</td>
	</tr><tr>
		<td>Adresa:</td>
		<td><input type="text" name="adresa" value="<?php 
        echo mysql_result($q400, 0, 14);
        ?>
" class="default"><br>
		<?php 
        echo mycombobox("adresa_mjesto", $mjestoavalue, $gradovilist);
        ?>
</td>
	</tr><tr>
		<td>Kanton:</td>
		<td><?php 
        echo db_dropdown("kanton", mysql_result($q400, 0, 17), "--Izaberite kanton--");
        ?>
</td>
	</tr><tr>
		<td>Telefon:</td>
		<td><input type="text" name="telefon" value="<?php 
        echo mysql_result($q400, 0, 16);
        ?>
" class="default"></td>
	</tr><tr>
		<td valign="top">Kontakt e-mail:</td>
		<td><?php 
        echo $email_adrese;
        ?>
		<input type="text" name="emailnovi" id="emailnovi" class="default"> <input type="button" class="default" value="Dodaj" onclick="javascript:location.href='?sta=studentska/osobe&osoba=<?php 
        echo $osoba;
        ?>
&akcija=podaci&subakcija=dodajmail&adresa='+document.getElementById('emailnovi').value;"></td>
	</tr><tr><td colspan="2">&nbsp;</td>
	</tr><tr>
		<td>Maternji jezik:</td>
		<td><?php 
        echo db_dropdown("maternji_jezik", mysql_result($q400, 0, 22), " ");
        ?>
</td>
	</tr><tr>
		<td>Vozačka dozvola:</td>
		<td><?php 
        echo db_dropdown("vozacki_kategorija", mysql_result($q400, 0, 23), " ");
        ?>
</td>
	</tr><tr>
		<td>Način stanovanja:</td>
		<td><?php 
        echo db_dropdown("nacin_stanovanja", mysql_result($q400, 0, 24), " ");
        ?>
</td>
	</tr><tr><td colspan="2">&nbsp;</td>
	</tr><tr>
		<td>Stručni stepen:</td>
		<td><?php 
        echo db_dropdown("strucni_stepen", mysql_result($q400, 0, 18), " ");
        ?>
</td>
	</tr><tr>
		<td>Naučni stepen:</td>
		<td><?php 
        echo db_dropdown("naucni_stepen", mysql_result($q400, 0, 19), " ");
        ?>
</td>
	</tr></table>

	<p>
	<input type="Submit" value=" Izmijeni "></form>
	<a href="?sta=studentska/osobe&akcija=edit&osoba=<?php 
        echo $osoba;
        ?>
">Povratak nazad</a>
	</p>
	<?php 
    } else {
        if ($akcija == "upis") {
            $student = intval($_REQUEST['osoba']);
            $studij = intval($_REQUEST['studij']);
            $semestar = intval($_REQUEST['semestar']);
            $godina = intval($_REQUEST['godina']);
            // Neispravni parametri se ne bi trebali desiti, osim u slučaju hackovanja
            // a i tada je "šteta" samo nekonzistentnost baze
            $q500 = myquery("select ime, prezime, brindexa from osoba where id={$student}");
            $ime = mysql_result($q500, 0, 0);
            $prezime = mysql_result($q500, 0, 1);
            $brindexa = mysql_result($q500, 0, 2);
            $q505 = myquery("select naziv from akademska_godina where id={$godina}");
            $naziv_ak_god = mysql_result($q505, 0, 0);
            ?>
	<a href="?sta=studentska/osobe&akcija=edit&osoba=<?php 
            echo $student;
            ?>
">Nazad na podatke o osobi</a><br/><br/>
	<h2><?php 
            echo $ime;
            ?>
 <?php 
            echo $prezime;
            ?>
 - upis</h2><?php 
            print genform("POST");
            ?>
	<input type="hidden" name="subakcija" value="upis_potvrda">
	<?php 
            // Ako je subakcija, potvrdjujemo da se moze izvrsiti upis
            $ok_izvrsiti_upis = 0;
            if ($_POST['subakcija'] == "upis_potvrda" && check_csrf_token()) {
                $ok_izvrsiti_upis = 1;
                // Potvrdjujemo promjenu studija napravljenu tokom rada
                $ns = intval($_REQUEST['novi_studij']);
                if ($ns > 0) {
                    $studij = $ns;
                    $_REQUEST['novi_studij'] = 0;
                    ?>
	<input type="hidden" name="studij" value="<?php 
                    echo $studij;
                    ?>
">
	<input type="hidden" name="novi_studij" value="0">
			<?php 
                    $ok_izvrsiti_upis = 0;
                    // Tražimo novu potvrdu jer od izbora studija ovisi previše stvari
                    // npr. ugovor o učenju
                }
            }
            // Šta je student slušao i kako?
            $q510 = myquery("select studij, nacin_studiranja, plan_studija, semestar, ponovac from student_studij where student={$student} order by akademska_godina desc, semestar desc limit 1");
            $stari_studij = $nacin_studiranja = $plan_studija = $ponovac = $stari_nacin_studiranja = 0;
            if (mysql_num_rows($q510) > 0) {
                $stari_studij = mysql_result($q510, 0, 0);
                $stari_nacin_studiranja = mysql_result($q510, 0, 1);
                $plan_studija = mysql_result($q510, 0, 2);
                if (mysql_result($q510, 0, 3) >= $semestar) {
                    $ponovac = 1;
                } else {
                    if ($semestar % 2 == 0) {
                        $ponovac = mysql_result($q510, 0, 4);
                    }
                }
            }
            if (intval($_REQUEST['nacin_studiranja']) > 0) {
                $nacin_studiranja = intval($_REQUEST['nacin_studiranja']);
            }
            // Ako je promijenjen studij, moramo odrediti i novi plan studija
            if ($stari_studij != $studij) {
                $ponovac = 0;
                $q515 = myquery("select godina_vazenja from plan_studija where studij={$studij} order by godina_vazenja desc limit 1");
                if (mysql_num_rows($q515) > 0) {
                    $plan_studija = mysql_result($q515, 0, 0);
                }
            }
            // Novi student
            $mijenja_studij = 0;
            if ($stari_studij == 0 && $ns == 0 && $ok_izvrsiti_upis == 0) {
                // Šta je odabrao na prijemnom? (pretpostavljamo da godine idu hronološkim redom)
                $izabrani_studij = $studij;
                $q520 = myquery("select pp.studij_prvi, pt.ciklus_studija from prijemni_prijava as pp, prijemni_termin as pt where pp.osoba={$student} and pp.prijemni_termin=pt.id and pt.akademska_godina={$godina} order by pt.datum desc limit 1");
                if (mysql_num_rows($q520) > 0) {
                    $izabrani_studij = mysql_result($q520, 0, 0);
                    $ciklus = mysql_result($q520, 0, 1);
                } else {
                    // Iz parametra studij ćemo probati odrediti ciklus
                    $q530 = myquery("select ts.ciklus from tipstudija as ts, studij as s where s.id={$studij} and s.tipstudija=ts.id");
                    if (mysql_num_rows($q530) > 0) {
                        $ciklus = mysql_result($q530, 0, 0);
                    } else {
                        $ciklus = 1;
                    }
                    // nemamo pojma = prvi ciklus
                }
                // Lista studija
                $q550 = myquery("select s.id, s.naziv from studij as s, tipstudija as ts where s.tipstudija=ts.id and ts.ciklus={$ciklus} and ts.moguc_upis=1 order by s.naziv");
                ?>
		<p><b>Izaberite studij koji će student upisati:</b><br/>
		<?php 
                while ($r550 = mysql_fetch_row($q550)) {
                    if ($r550[0] == $izabrani_studij) {
                        $dodaj = " CHECKED";
                    } else {
                        $dodaj = "";
                    }
                    print '<input type="radio" name="novi_studij" value="' . $r550[0] . '"' . $dodaj . '>' . $r550[1] . "<br/>\n";
                }
                print "</p>\n\n";
                $mijenja_studij = 1;
            }
            // Izbor studija kod zavrsetka prethodnog
            $q540 = myquery("select ts.trajanje, s.naziv, ts.ciklus, s.institucija from studij as s, tipstudija as ts where s.id={$studij} and s.tipstudija=ts.id");
            if (mysql_num_rows($q540) > 0) {
                $trajanje = mysql_result($q540, 0, 0);
                $naziv_studija = mysql_result($q540, 0, 1);
                $ciklus = mysql_result($q540, 0, 2);
                $institucija = mysql_result($q540, 0, 3);
            } else {
                $ok_izvrsiti_upis = 0;
            }
            // nepoznat studij
            // Pošto se akcija "edit" ne bavi određivanjem sljedećeg ciklusa, ona će proslijediti
            // prevelik broj semestra
            if ($semestar > $trajanje && $stari_studij != 0) {
                // Biramo sljedeći ciklus istog studija po tome što ga nudi ista institucija
                $ciklus++;
                $q545 = myquery("select s.id from studij as s, tipstudija as ts where s.institucija={$institucija} and s.tipstudija=ts.id and ts.ciklus={$ciklus} and ts.moguc_upis=1");
                if (mysql_num_rows($q545) > 0) {
                    $izabrani_studij = mysql_result($q545, 0, 0);
                }
                $q550 = myquery("select s.id, s.naziv from studij as s, tipstudija as ts where s.tipstudija=ts.id and ts.ciklus={$ciklus} and ts.moguc_upis=1 order by s.naziv");
                ?>
		<p><b>Izaberite studij koji će student upisati:</b><br/>
		<?php 
                while ($r550 = mysql_fetch_row($q550)) {
                    if ($r550[0] == $izabrani_studij) {
                        $dodaj = " CHECKED";
                    } else {
                        $dodaj = "";
                    }
                    print '<input type="radio" name="novi_studij" value="' . $r550[0] . '"' . $dodaj . '>' . $r550[1] . "<br/>\n";
                }
                print "</p>\n\n";
                // Postavljamo semestar na 1
                unset($_REQUEST['semestar']);
                print '<input type="hidden" name="semestar" value="1">' . "\n";
                $prijedlog_nacin_studiranja = $nacin_studiranja;
                $nacin_studiranja = 0;
                // Ponovo se mora izabrati način studiranja
                $ok_izvrsiti_upis = 0;
                $mijenja_studij = 1;
            } else {
                if ($stari_studij != 0) {
                    ?>
		<p>Upis na studij <?php 
                    echo $naziv_studija;
                    ?>
, <?php 
                    echo $semestar;
                    ?>
. semestar:</p>
		<?php 
                }
            }
            // Izbor načina studiranja
            if ($nacin_studiranja == 0) {
                ?>
		<p><b>Izaberite način studiranja studenta:</b><br/>
		<?php 
                $q560 = myquery("select id, naziv from nacin_studiranja where moguc_upis=1");
                while ($r560 = mysql_fetch_row($q560)) {
                    if ($r560[0] == $stari_nacin_studiranja) {
                        $dodaj = " CHECKED";
                    } else {
                        $dodaj = "";
                    }
                    print '<input type="radio" name="nacin_studiranja" value="' . $r560[0] . '"' . $dodaj . '>' . $r560[1] . "<br/>\n";
                }
                $ok_izvrsiti_upis = 0;
            }
            // Da li ima nepoložene predmete sa ranijih semestara?
            if ($semestar > 1 && $semestar % 2 == 1 && $stari_studij != 0) {
                // Uvodimo dva načina izbora predmeta - preko plana studija i preko odslušanih predmeta u prošloj godini
                // U slučaju da nije definisan plan studija, bira se ovaj drugi način, ali on nije pouzdan zbog komplikacije
                // oko izbornih predmeta i ECTSova
                if ($plan_studija > 0) {
                    // Prema novom zakonu, uslov za upis je jedan predmet iz prethodne godine
                    $predmeti_pao = array();
                    $stari_predmet = array();
                    $q570 = myquery("select predmet, obavezan, semestar from plan_studija where godina_vazenja={$plan_studija} and studij={$stari_studij} and semestar<{$semestar} order by semestar");
                    $slusao = array();
                    while ($r570 = mysql_fetch_row($q570)) {
                        $psemestar = $r570[2];
                        if ($r570[1] == 1) {
                            // obavezan
                            $predmet = $r570[0];
                            $q580 = myquery("select count(*) from konacna_ocjena where student={$student} and predmet={$predmet} and ocjena>5");
                            if (mysql_result($q580, 0, 0) < 1) {
                                $q590 = myquery("select ects, naziv from predmet where id={$predmet}");
                                $predmeti_pao[$predmet] = mysql_result($q590, 0, 1);
                                if ($psemestar < $semestar - 2) {
                                    $stari_predmet[$predmet] = 1;
                                }
                            }
                        } else {
                            // izborni
                            $is = $r570[0];
                            $slusao_id = 0;
                            $polozio = 0;
                            $q600 = myquery("select predmet from izborni_slot where id={$is}");
                            while ($r600 = mysql_fetch_row($q600)) {
                                $predmet = $r600[0];
                                if ($slusao[$predmet] != "") {
                                    continue;
                                }
                                // kada je isti predmet u dva slota
                                // Koji je od ovih slušao?
                                $q610 = myquery("select count(*) from student_predmet as sp, ponudakursa as pk where sp.student={$student} and sp.predmet=pk.id and pk.predmet={$predmet}");
                                if (mysql_result($q610, 0, 0) > 0) {
                                    $slusao_id = $predmet;
                                    $q620 = myquery("select ects, naziv from predmet where id={$predmet}");
                                    $slusao[$predmet] = mysql_result($q620, 0, 1);
                                }
                                // Da li je polozio?
                                $q630 = myquery("select count(*) from konacna_ocjena where student={$student} and predmet={$predmet} and ocjena>5");
                                if (mysql_result($q630, 0, 0) > 0) {
                                    $polozio = 1;
                                    break;
                                }
                            }
                            if ($polozio == 0) {
                                // nije položio nijedan od mogućih predmeta u slotu
                                if ($slusao_id > 0) {
                                    $predmeti_pao[$slusao_id] = $slusao[$slusao_id];
                                } else {
                                    // Ubacićemo nešto u niz $predmeti_pao da se zna da nema uslov
                                    // ali u biti ne znamo šta
                                    $predmeti_pao[0] = "X";
                                }
                                if ($psemestar < $semestar - 2) {
                                    $stari_predmet[$slusao_id] = 1;
                                }
                            }
                        }
                    }
                } else {
                    // if ($plan_studija>0)
                    // Nemamo plana studija, pokušavamo odrediti šta je student slušao ranijih godina
                    // Nepouzdano zbog kolizija, izbornih predmeta itd.
                    $q640 = myquery("select pk.predmet, p.ects, pk.semestar, p.naziv from ponudakursa as pk, student_predmet as sp, predmet as p where sp.student={$student} and sp.predmet=pk.id and pk.semestar<{$semestar} and pk.predmet=p.id");
                    $predmeti_pao = array();
                    while ($r650 = mysql_fetch_row($q650)) {
                        $predmet = $r650[0];
                        $psemestar = $r650[2];
                        $pnaziv = $r650[3];
                        $q660 = myquery("select count(*) from konacna_ocjena where student={$student} and predmet={$predmet} and ocjena>5");
                        if (mysql_result($q660, 0, 0) < 1 && !$predmeti_pao[$predmet]) {
                            $predmeti_pao[$predmet] = $pnaziv;
                            if ($psemestar < $semestar - 2) {
                                $stari_predmet[$predmet] = 1;
                            }
                        }
                    }
                }
                // Tabela za unos ocjena na predmetima koje je pao:
                if (count($predmeti_pao) > 0 && $ok_izvrsiti_upis == 0) {
                    ?>
		<p><b>Predmeti iz kojih je student ostao neocijenjen - upišite eventualne ocjene u polja lijevo:</b></p>
		<table border="0">
		<?php 
                    foreach ($predmeti_pao as $id => $naziv) {
                        if ($id == 0) {
                            // Ovo je jedini pametan razlog da se pojavi id nula
                            ?>
				<tr><td colspan="2">Student nije slušao nijedan od ponuđenih izbornih predmeta koje je po planu studija trebao slušati.<br/> Pošto ima dovoljan broj ostvarenih ECTS kredita pretpostavićemo da je sve u redu.</td></tr>
				<?php 
                            continue;
                        }
                        ?>
			<tr><td><input type="text" size="3" name="pao-<?php 
                        echo $id;
                        ?>
"></td>
			<td><?php 
                        echo $naziv;
                        ?>
</td></tr>
			<?php 
                    }
                    ?>
		</table>
		<?php 
                }
            }
            // if ($semestar%2 ==1)
            // IZBORNI PREDMETI
            // novi studij - određujemo najnoviji plan studija za taj studij
            if ($ns > 0) {
                $q670 = myquery("select godina_vazenja from plan_studija where studij={$studij} order by godina_vazenja desc limit 1");
                if (mysql_num_rows($q670) > 0) {
                    $plan_studija = mysql_result($q670, 0, 0);
                }
            }
            // Nema potrebe gledati dalje ako treba tek izabrati studij
            $uou = 0;
            if ($mijenja_studij == 0) {
                // Da li je popunjen ugovor o učenju?
                $q680 = myquery("select id from ugovoroucenju where student={$student} and akademska_godina={$godina} and studij={$studij} and semestar={$semestar}");
                $uoupk = array();
                if (mysql_num_rows($q680) > 0) {
                    $uou = mysql_result($q680, 0, 0);
                    if ($ok_izvrsiti_upis == 0) {
                        print "<p>Popunjen Ugovor o učenju (ID: {$uou}).\n";
                    }
                    $q690 = myquery("select p.id, p.naziv from ugovoroucenju_izborni as uoui, predmet as p where uoui.ugovoroucenju={$uou} and uoui.predmet=p.id");
                    if (mysql_num_rows($q690) > 0 && $ok_izvrsiti_upis == 0) {
                        print " Izabrani predmeti u semestru:";
                    }
                    while ($r690 = mysql_fetch_row($q690)) {
                        $predmet = $r690[0];
                        if ($ok_izvrsiti_upis == 0) {
                            print "<br/>* {$r690['1']}\n";
                        }
                        // Da li je već položio predmet
                        $q695 = myquery("select count(*) from konacna_ocjena where student={$student} and predmet={$predmet} and ocjena>5");
                        if (mysql_result($q695, 0, 0) > 0) {
                            if ($ok_izvrsiti_upis == 0) {
                                print " - već položen! Preskačem";
                            }
                        } else {
                            // Tražimo ponudukursa
                            $q700 = myquery("select id from ponudakursa where predmet={$predmet} and studij={$studij} and semestar={$semestar} and akademska_godina={$godina}");
                            if (mysql_num_rows($q700) < 1) {
                                if ($ok_izvrsiti_upis == 0) {
                                    print " - nije pronađena ponuda kursa!! Kreiram.\n";
                                }
                                $q701 = myquery("insert into ponudakursa set predmet={$predmet}, studij={$studij}, semestar={$semestar}, akademska_godina={$godina}, obavezan=0");
                                $q700 = myquery("select id from ponudakursa where predmet={$predmet} and studij={$studij} and semestar={$semestar} and akademska_godina={$godina}");
                                zamgerlog("kreirao ponudu kursa pp{$predmet}, studij s{$studij}, sem. {$semestar}, ag{$ag} zbog studenta u{$student}", 2);
                                zamgerlog2("kreirao ponudu kursa zbog studenta", $student, intval($pkid));
                            }
                            if ($ok_izvrsiti_upis == 0) {
                                print '<input type="hidden" name="izborni-' . mysql_result($q700, 0, 0) . '" value="on">' . "\n";
                            }
                        }
                    }
                    if ($ok_izvrsiti_upis == 0) {
                        print "</p>\n";
                    }
                } else {
                    if ($ok_izvrsiti_upis == 0) {
                        print "<p><b>Nije popunjen Ugovor o učenju!</b> Izaberite izborne predmete ručno.</p>\n";
                    }
                }
                // Nalazim izborne predmete
                // Ako postoji plan studija, problem je jednostavan
                if ($plan_studija > 0 && $uou == 0) {
                    $bio_predmet = array();
                    $q710 = myquery("select predmet from plan_studija where godina_vazenja={$plan_studija} and studij={$studij} and semestar={$semestar} and obavezan=0");
                    while ($r710 = mysql_fetch_row($q710)) {
                        $izborni_slot = $r710[0];
                        $q720 = myquery("select p.id, p.naziv, p.ects from izborni_slot as iz, predmet as p where iz.id={$izborni_slot} and iz.predmet=p.id");
                        // Prvi prolaz, za provjere
                        $nastavak = 0;
                        $ispis_predmet = array();
                        $ispis_predmet_ects = array();
                        while ($r720 = mysql_fetch_row($q720)) {
                            $predmet = $r720[0];
                            if (in_array($predmet, $bio_predmet)) {
                                continue;
                            }
                            array_push($bio_predmet, $predmet);
                            // Da li je izabran na formi?
                            foreach ($_REQUEST as $key => $value) {
                                if (substr($key, 0, 8) != "izborni-") {
                                    continue;
                                }
                                if ($value == "") {
                                    continue;
                                }
                                $ponudakursa = intval(substr($key, 8));
                                $q566 = myquery("select predmet from ponudakursa where id={$ponudakursa}");
                                if ($predmet == mysql_result($q566, 0, 0)) {
                                    $nastavak = 1;
                                    break;
                                }
                            }
                            // Da li je položen?
                            $q730 = myquery("select count(*) from konacna_ocjena where student={$student} and predmet={$predmet}");
                            if (mysql_result($q730, 0, 0) > 0) {
                                $nastavak = 1;
                                break;
                            }
                            $ispis_predmet[$predmet] = $r720[1];
                            $ispis_predmet_ects[$predmet] = $r720[2];
                        }
                        if ($nastavak == 1) {
                            continue;
                        }
                        if ($ok_izvrsiti_upis == 1 && count($ispis_predmet) > 0) {
                            print "<p><b>Morate izabrati jedan od ovih predmeta.</b> Ako to znači da ste sada izabrali viška predmeta, koristite dugme za povratak nazad.</p>\n";
                            $ok_izvrsiti_upis = 0;
                        }
                        // Drugi prolaz
                        foreach ($ispis_predmet as $predmet => $pnaziv) {
                            // Odredjujemo ponudu kursa
                            $q740 = myquery("select id from ponudakursa where predmet={$predmet} and studij={$studij} and semestar={$semestar} and akademska_godina={$godina}");
                            if (mysql_num_rows($q740) < 1) {
                                $q701 = myquery("insert into ponudakursa set predmet={$predmet}, studij={$studij}, semestar={$semestar}, akademska_godina={$godina}, obavezan=0");
                                $q700 = myquery("select id from ponudakursa where predmet={$predmet} and studij={$studij} and semestar={$semestar} and akademska_godina={$godina}");
                                $pkid = mysql_result($q700, 0, 0);
                                zamgerlog("kreirao ponudu kursa pp{$predmet}, studij s{$studij}, sem. {$semestar}, ag{$ag} zbog studenta u{$student}", 2);
                                zamgerlog2("kreirao ponudu kursa zbog studenta", $student, intval($pkid));
                            } else {
                                $pkid = mysql_result($q740, 0, 0);
                            }
                            ?>
					<input type="checkbox" name="izborni-<?php 
                            echo $pkid;
                            ?>
"> <?php 
                            echo $pnaziv;
                            ?>
 (<?php 
                            echo $ispis_predmet_ects[$predmet];
                            ?>
 ECTS)<br/>
					<?php 
                        }
                    }
                } else {
                    if ($uou == 0) {
                        // Nije definisan plan studija - deduciramo izborne predmete iz onoga što se držalo prošle godine
                        // Da li je zbir ECTS bodova sa izbornim predmetima = 30?
                        $q560 = myquery("select p.id, p.naziv, pk.id, p.ects from predmet as p, ponudakursa as pk where pk.akademska_godina={$godina} and pk.studij={$studij} and pk.semestar={$semestar} and obavezan=0 and pk.predmet=p.id");
                        if (mysql_num_rows($q560) > 0 && $ok_izvrsiti_upis == 1) {
                            $q565 = myquery("select sum(p.ects) from ponudakursa as pk, predmet as p where pk.studij={$studij} and pk.semestar={$semestar} and pk.akademska_godina={$godina} and pk.obavezan=1 and pk.predmet=p.id");
                            $ects_suma = mysql_result($q565, 0, 0);
                            // Upisujemo na izborne predmete koji su odabrani
                            foreach ($_REQUEST as $key => $value) {
                                if (substr($key, 0, 8) != "izborni-") {
                                    continue;
                                }
                                if ($value == "") {
                                    continue;
                                }
                                $predmet = intval(substr($key, 8));
                                $q566 = myquery("select p.ects from ponudakursa as pk, predmet as p where pk.id={$predmet} and pk.predmet=p.id");
                                $ects_suma += mysql_result($q566, 0, 0);
                            }
                            if ($ects_suma != 30) {
                                $ok_izvrsiti_upis = 0;
                                niceerror("Izabrani izborni predmeti čine sumu {$ects_suma} ECTS kredita, umjesto 30");
                            }
                        }
                        if (mysql_num_rows($q560) > 0 && $ok_izvrsiti_upis == 0) {
                            ?>
				<p><b>Izaberite izborne predmete:</b><br/>
				<?php 
                            while ($r560 = mysql_fetch_row($q560)) {
                                $q570 = myquery("select count(*) from konacna_ocjena where student={$student} and predmet={$r560['0']}");
                                if (mysql_result($q570, 0, 0) < 1) {
                                    // Nije polozio/la - koristimo pk
                                    ?>
						<input type="checkbox" name="izborni-<?php 
                                    echo $r560[2];
                                    ?>
"> <?php 
                                    echo $r560[1];
                                    ?>
 (<?php 
                                    echo $r560[3];
                                    ?>
 ECTS)<br/>
						<?php 
                                }
                            }
                        }
                    }
                }
            }
            // if ($stari_studij!=0 && $semestar<=$trajanje)
            // Studentu nikada nije zadat broj indexa (npr. prvi put se upisuje)
            if (($brindexa == 0 || $brindexa == "" || $mijenja_studij == 1) && $ok_izvrsiti_upis == 0 && !isset($_REQUEST['novi_brindexa'])) {
                if ($brindexa == 0) {
                    $brindexa = "";
                }
                ?>
		<p><b>Unesite broj indeksa za ovog studenta:</b><br/>
		<input type="text" name="novi_brindexa" size="10" value="<?php 
                echo $brindexa;
                ?>
"></p>
		<?php 
            }
            // ------ Izvrsenje upisa!
            if ($ok_izvrsiti_upis == 1 && check_csrf_token()) {
                // Upis u prvi semestar - kandidat za prijemni postaje student!
                if ($stari_studij == 0) {
                    // Ukidamo privilegiju "prijemni" ako je student imao
                    $q640 = myquery("delete from privilegije where osoba={$student} and privilegija='prijemni'");
                    // Dodajemo privilegiju "student" samo ako je student nije već imao
                    $q643 = myquery("select count(*) from privilegije where osoba={$student} and privilegija='student'");
                    if (mysql_result($q643, 0, 0) < 1) {
                        $q646 = myquery("insert into privilegije set osoba={$student}, privilegija='student'");
                    }
                    // AUTH tabelu cemo srediti naknadno
                    zamgerlog2("proglasen za studenta", $student);
                    print "-- {$prezime} {$ime} proglašen za studenta<br/>\n";
                }
                // Novi broj indexa
                $nbri = my_escape($_REQUEST['novi_brindexa']);
                if ($nbri != "") {
                    $q650 = myquery("update osoba set brindexa='{$nbri}' where id={$student}");
                    zamgerlog2("postavljen broj indeksa", $student, 0, 0, $nbri);
                    print "-- broj indeksa postavljen na {$nbri}<br/>\n";
                }
                // Upisujemo ocjene za predmete koje su dopisane
                if (count($predmeti_pao) > 0) {
                    foreach ($predmeti_pao as $predmet => $naziv_predmeta) {
                        $ocjena = intval($_REQUEST["pao-{$predmet}"]);
                        if ($ocjena > 5) {
                            // Upisujem dopisanu ocjenu
                            $q590 = myquery("insert into konacna_ocjena set student={$student}, predmet={$predmet}, ocjena={$ocjena}, akademska_godina={$ag}");
                            zamgerlog("dopisana ocjena {$ocjena} prilikom upisa na studij (predmet pp{$predmet}, student u{$student})", 4);
                            // 4 = audit
                            zamgerlog2("dodana ocjena", $student, $predmet, $ag, $ocjena);
                            print "-- Dopisana ocjena {$ocjena} za predmet {$naziv_predmeta}<br/>\n";
                        } else {
                            // Student prenio predmet
                            if ($predmet == 0) {
                                continue;
                            }
                            // nije slušao nijedan od mogućih izbornih predmeta
                            // Provjera broja ECTS kredita je obavljena na početnoj strani (akcija "edit")
                            // pa ćemo pretpostaviti sve najbolje :)
                            // Moramo upisati studenta u istu ponudu kursa koju je ranije slušao
                            $q592 = myquery("select pk.studij,pk.semestar from ponudakursa as pk, student_predmet as sp where sp.student={$student} and sp.predmet=pk.id and pk.predmet={$predmet} order by pk.akademska_godina desc limit 1");
                            // Polje predmeti pao sadrži predmete koje je student trebao slušati prema NPP u prošloj godini a nije ih položio
                            // No ako se student direktno upisuje na višu godinu (doktorski studij!?), moguće da je tu predmet koji nikada nije slušao
                            // Stoga moramo provjeriti i to i preskočiti takve predmete
                            if (mysql_num_rows($q592) < 1) {
                                continue;
                            }
                            $q594 = myquery("select id from ponudakursa where predmet={$predmet} and studij=" . mysql_result($q592, 0, 0) . " and semestar=" . mysql_result($q592, 0, 1) . " and akademska_godina={$godina}");
                            upis_studenta_na_predmet($student, mysql_result($q594, 0, 0));
                            zamgerlog2("student upisan na predmet (preneseni)", $student, intval(mysql_result($q594, 0, 0)));
                            print "-- Upisan u predmet {$naziv_predmeta} koji je prenio s prethodne godine (ako je ovo greška, zapamtite da ga treba ispisati sa predmeta!)<br/>\n";
                        }
                    }
                }
                // Upisujemo studenta na novi studij
                $q600 = myquery("insert into student_studij set student={$student}, studij={$studij}, semestar={$semestar}, akademska_godina={$godina}, nacin_studiranja={$nacin_studiranja}, ponovac={$ponovac}, odluka=NULL, plan_studija={$plan_studija}");
                // Upisujemo na sve obavezne predmete na studiju
                $q610 = myquery("select pk.id, p.id, p.naziv from ponudakursa as pk, predmet as p where pk.studij={$studij} and pk.semestar={$semestar} and pk.akademska_godina={$godina} and pk.obavezan=1 and pk.predmet=p.id");
                while ($r610 = mysql_fetch_row($q610)) {
                    // Da li ga je vec polozio
                    $q615 = myquery("select count(*) from konacna_ocjena where student={$student} and predmet={$r610['1']}");
                    if (mysql_result($q615, 0, 0) < 1) {
                        upis_studenta_na_predmet($student, $r610[0]);
                        zamgerlog2("student upisan na predmet (obavezan)", $student, intval($r610[0]));
                    } else {
                        print "-- Student NIJE upisan u {$r610['2']} jer ga je već položio<br/>\n";
                    }
                }
                // Upisujemo na izborne predmete koji su odabrani
                foreach ($_REQUEST as $key => $value) {
                    if (substr($key, 0, 8) != "izborni-") {
                        continue;
                    }
                    if ($value == "") {
                        continue;
                    }
                    $ponudakursa = intval(substr($key, 8));
                    // drugi dio ključa je ponudakursa
                    upis_studenta_na_predmet($student, $ponudakursa);
                    zamgerlog2("student upisan na predmet (izborni)", $student, $ponudakursa);
                    $q635 = myquery("select p.naziv from ponudakursa as pk, predmet as p where pk.id={$ponudakursa} and pk.predmet=p.id");
                    print "-- Student upisan u izborni predmet " . mysql_result($q635, 0, 0) . "<br/>";
                }
                nicemessage("Student uspješno upisan na {$naziv_studija}, {$semestar}. semestar");
                zamgerlog("Student u{$student} upisan na studij s{$studij}, semestar {$semestar}, godina ag{$godina}", 4);
                // 4 - audit
                return;
            } else {
                ?>
		<p>&nbsp;</p>
		<input type="submit" value=" Potvrda upisa ">
		</form>
		<?php 
            }
        } else {
            if ($akcija == "ispis") {
                // Svi parametri su obavezni!
                $studij = $_REQUEST['studij'];
                $semestar = $_REQUEST['semestar'];
                $ak_god = $_REQUEST['godina'];
                $q2500 = myquery("select ime, prezime from osoba where id={$osoba}");
                $ime = mysql_result($q2500, 0, 0);
                $prezime = mysql_result($q2500, 0, 1);
                $q2510 = myquery("select naziv from akademska_godina where id={$ak_god}");
                $naziv_ak_god = mysql_result($q2510, 0, 0);
                ?>
	<a href="?sta=studentska/osobe&akcija=edit&osoba=<?php 
                echo $osoba;
                ?>
">Nazad na podatke o osobi</a><br/><br/>
	<h2><?php 
                echo $ime;
                ?>
 <?php 
                echo $prezime;
                ?>
 - ispis sa studija</h2>
	<?php 
                // Gdje je trenutno upisan?
                $q2520 = myquery("select s.id, s.naziv, ss.semestar from studij as s, student_studij as ss where ss.student={$osoba} and ss.studij=s.id and ss.akademska_godina={$ak_god} and ss.semestar={$semestar}");
                if (mysql_num_rows($q2520) < 1) {
                    niceerror("Student nije upisan na fakultet u izabranoj akademskoj godini!");
                    zamgerlog("pokusao ispisati studenta u{$osoba} koji nije upisan u ag{$ak_god}", 3);
                    zamgerlog2("pokusao ispisati studenta koji nije upisan", $osoba, intval($ak_god));
                    return;
                }
                if (mysql_result($q2520, 0, 0) != $studij) {
                    niceerror("Student nije upisan na izabrani studij u izabranoj akademskoj godini!");
                    zamgerlog("pokusao ispisati studenta u{$osoba} sa studija {$studij} koji ne slusa u ag{$ak_god}", 3);
                    zamgerlog2("pokusao ispisati studenta sa studija koji ne slusa", $osoba, intval($studij), intval($ak_god));
                    return;
                }
                if (mysql_result($q2520, 0, 2) != $semestar) {
                    niceerror("Student nije upisan na izabrani semestar u izabranoj akademskoj godini!");
                    zamgerlog("pokusao ispisati studenta u{$osoba} sa semestra {$semestar} koji ne slusa u ag{$ak_god}", 3);
                    zamgerlog2("pokusao ispisati studenta sa semestra koji ne slusa", $osoba, intval($semestar), intval($ak_god));
                    return;
                }
                $naziv_studija = mysql_result($q2520, 0, 1);
                $zimski_ljetnji = $semestar % 2;
                ?>
	<h3>Studij: <?php 
                echo $naziv_studija;
                ?>
, <?php 
                echo $semestar;
                ?>
. semestar, <?php 
                echo $naziv_ak_god;
                ?>
 godina</h3>
	<?php 
                // Ispis sa studija
                if ($_REQUEST['potvrda'] == "1") {
                    $q530 = myquery("select pk.predmet from student_predmet as sp, ponudakursa as pk where sp.student={$osoba} and sp.predmet=pk.id and pk.akademska_godina={$ak_god} and pk.semestar mod 2={$zimski_ljetnji}");
                    while ($r530 = mysql_fetch_row($q530)) {
                        $predmet = $r530[0];
                        ispis_studenta_sa_predmeta($osoba, $predmet, $ak_god);
                        zamgerlog("ispisujem studenta u{$osoba} sa predmeta pp{$predmet} (ispis sa studija)", 4);
                        // 4 - audit
                        zamgerlog2("student ispisan sa predmeta (ispis sa studija)", $osoba, intval($predmet), intval($ak_god));
                    }
                    $q550 = myquery("delete from student_studij where student={$osoba} and akademska_godina={$ak_god} and semestar={$semestar}");
                    nicemessage("Ispisujem studenta sa studija {$naziv_studija} i svih predmeta koje trenutno sluša.");
                    zamgerlog("ispisujem studenta u{$osoba} sa studija {$naziv_studija} (ag{$ak_god})", 4);
                    zamgerlog2("student ispisan sa studija", $osoba, intval($ak_god));
                } else {
                    ?>
		<p>Student će biti ispisan sa sljedećih predmeta:<ul>
		<?php 
                    $q520 = myquery("select p.naziv from predmet as p, ponudakursa as pk, student_predmet as sp where sp.student={$osoba} and sp.predmet=pk.id and pk.akademska_godina={$ak_god} and pk.predmet=p.id and pk.semestar mod 2={$zimski_ljetnji}");
                    while ($r520 = mysql_fetch_row($q520)) {
                        print "<li>{$r520['0']}</li>\n";
                    }
                    ?>
		</ul></p>
		<p>NAPOMENA: Svi bodovi ostvareni na ovim predmetima će biti izgubljeni! Trenutno nema drugog načina da se student ispiše sa studija.</p>
		<p>Kliknite na dugme "Potvrda" da potvrdite ispis.</p>
		<?php 
                    echo genform("POST");
                    ?>
		<input type="hidden" name="potvrda" value="1">
		<input type="submit" value=" Potvrda ">
		</form>
		<?php 
                }
            } else {
                if ($akcija == "kolizija") {
                    ?>
	<a href="?sta=studentska/osobe&osoba=<?php 
                    echo $osoba;
                    ?>
&akcija=edit">Nazad na podatke o studentu</a><br/><br/>
	<?php 
                    // Odredjujemo u koju akademsku godinu bi se trebao upisivati student
                    $nova_ak_god = intval($_REQUEST['godina']);
                    $q398 = myquery("select naziv from akademska_godina where id={$nova_ak_god}");
                    $naziv_godine = mysql_result($q398, 0, 0);
                    // Koji studij student sluša? Treba nam radi ponudekursa
                    $q399 = myquery("select s.id, s.naziv from student_studij as ss, studij as s where ss.student={$osoba} and ss.studij=s.id order by ss.akademska_godina desc, ss.semestar desc");
                    $studij = mysql_result($q399, 0, 0);
                    $studij_naziv = mysql_result($q399, 0, 1);
                    $q400 = myquery("select predmet from kolizija where student={$osoba} and akademska_godina={$nova_ak_god}");
                    $predmeti = $ponudekursa = array();
                    $greska = 0;
                    while ($r400 = mysql_fetch_row($q400)) {
                        $predmet = $r400[0];
                        // Eliminišemo predmete koje je položio u međuvremenu
                        $q410 = myquery("select count(*) from konacna_ocjena where student={$osoba} and predmet={$predmet} and ocjena>5");
                        if (mysql_result($q410, 0, 0) < 1) {
                            $q420 = myquery("select naziv from predmet where id={$predmet}");
                            $predmeti[$predmet] = "<b>" . mysql_result($q420, 0, 0) . "</b> ({$studij_naziv}, ";
                            // Odredjujemo ponudu kursa koju bi student trebao slušati
                            $q430 = myquery("select id, semestar, obavezan from ponudakursa where predmet={$predmet} and studij={$studij} and akademska_godina={$nova_ak_god}");
                            if (mysql_num_rows($q430) < 1) {
                                if ($greska == 0) {
                                    niceerror("Nije pronađena ponuda kursa");
                                }
                                print "Predmet <b>" . mysql_result($q420, 0, 0) . "</b>, studij <b>{$studij_naziv}</b>, godina {$naziv_godine}<br/>";
                                $greska = 1;
                            }
                            $ponudekursa[$predmet] = mysql_result($q430, 0, 0);
                            $predmeti[$predmet] .= mysql_result($q430, 0, 1) . ". semestar";
                            if (mysql_result($q430, 0, 2) == 0) {
                                $predmeti[$predmet] .= ", izborni";
                            }
                            $predmeti[$predmet] .= ")";
                        }
                    }
                    if ($greska == 1) {
                        return;
                    }
                    // ne idemo dalje
                    if (count($predmeti) == 0) {
                        // nema ništa za koliziju!!!
                        nicemessage("Student je u međuvremenu položio/la sve predmete! Nema se ništa za upisati.");
                        return;
                    }
                    if ($_REQUEST['subakcija'] == "potvrda") {
                        foreach ($ponudekursa as $predmet => $pk) {
                            upis_studenta_na_predmet($osoba, $pk);
                            $q440 = myquery("delete from kolizija where student={$osoba} and akademska_godina={$nova_ak_god} and predmet={$predmet}");
                            zamgerlog2("student upisan na predmet (kolizija)", $osoba, intval($pk));
                        }
                        zamgerlog("prihvacen zahtjev za koliziju studenta u{$osoba}", 4);
                        // 4 = audit
                        zamgerlog2("prihvacen zahtjev za koliziju", $osoba);
                        print "<p>Upis je potvrđen.</p>\n";
                    } else {
                        ?>
		<p>Student želi upisati sljedeće predmete:</p>
		<ul>
		<?php 
                        foreach ($predmeti as $tekst) {
                            print "<li>{$tekst}</li>\n";
                        }
                        ?>
		</ul>
		<?php 
                        echo genform("POST");
                        ?>
		<input type="hidden" name="subakcija" value="potvrda">
		<input type="submit" value=" Potvrdi ">
		</form>
		<?php 
                    }
                } else {
                    if ($akcija == "predmeti") {
                        ?>
	<a href="?sta=studentska/osobe&osoba=<?php 
                        echo $osoba;
                        ?>
&akcija=edit">Nazad na podatke o studentu</a><br/><br/>
	<?php 
                        // Parametar "spisak" određuje koji predmeti će biti prikazani
                        $spisak = intval($_REQUEST['spisak']);
                        $q2000 = myquery("select ime, prezime from osoba where id={$osoba}");
                        if (mysql_num_rows($q2000) < 1) {
                            niceerror("Nepoznata osoba {$osoba}");
                            return;
                        }
                        $ime = mysql_result($q2000, 0, 0);
                        $prezime = mysql_result($q2000, 0, 1);
                        ?>
	<h2><?php 
                        echo $ime;
                        ?>
 <?php 
                        echo $prezime;
                        ?>
 - upis/ispis na predmete</h2>
	<?php 
                        // Subakcije: upis i ispis sa predmeta
                        if ($_REQUEST['subakcija'] == "upisi") {
                            $ponudakursa = intval($_REQUEST['ponudakursa']);
                            upis_studenta_na_predmet($osoba, $ponudakursa);
                            $q2200 = myquery("select p.naziv from ponudakursa as pk, predmet as p where pk.id={$ponudakursa} and pk.predmet=p.id");
                            $naziv_predmeta = mysql_result($q2200, 0, 0);
                            nicemessage("Student upisan na predmet {$naziv_predmeta}");
                            zamgerlog("student u{$osoba} manuelno upisan na predmet p{$ponudakursa}", 4);
                            // 4 - audit
                            zamgerlog2("student upisan na predmet (manuelno)", $osoba, $ponudakursa);
                        }
                        if ($_REQUEST['subakcija'] == "ispisi") {
                            $ponudakursa = intval($_REQUEST['ponudakursa']);
                            $q2200 = myquery("select p.id, p.naziv, pk.akademska_godina from ponudakursa as pk, predmet as p where pk.id={$ponudakursa} and pk.predmet=p.id");
                            $predmet = mysql_result($q2200, 0, 0);
                            $naziv_predmeta = mysql_result($q2200, 0, 1);
                            $ag = mysql_result($q2200, 0, 2);
                            // Upozorenje ako ima neke bodove?
                            $q2210 = myquery("select sum(bodovi) from komponentebodovi where student={$osoba} and predmet={$ponudakursa}");
                            $bodovi = mysql_result($q2210, 0, 0);
                            if ($bodovi != 0 && $bodovi != 10 && $_REQUEST['siguran'] != "da") {
                                // 10 bodova je default za prisustvo
                                nicemessage("Upozorenje! Student je osvojio {$bodovi} bodova na predmetu {$naziv_predmeta}.");
                                ?>
Da li ste sigurni da ga želite ispisati?<br/>
			<?php 
                                echo genform("POST");
                                ?>
			<input type="hidden" name="siguran" value="da">
			<input type="submit" value=" Potvrda ">
			</form>
			<?php 
                                return;
                            }
                            ispis_studenta_sa_predmeta($osoba, $predmet, $ag);
                            nicemessage("Student ispisan sa predmeta {$naziv_predmeta}");
                            zamgerlog("student u{$osoba} manuelno ispisan sa predmeta p{$ponudakursa}", 4);
                            // 4 - audit
                            zamgerlog2("student ispisan sa predmeta (manuelno)", $osoba, intval($predmet), intval($ag));
                        }
                        // Aktuelna akademska godina
                        if ($_REQUEST['ag'] || $_REQUEST['_lv_column_akademska_godina']) {
                            $ak_god = intval($_REQUEST['ag']);
                            if ($_REQUEST['_lv_column_akademska_godina']) {
                                $ak_god = intval($_REQUEST['_lv_column_akademska_godina']);
                            }
                            $q2005 = myquery("select naziv from akademska_godina where id={$ak_god}");
                            if (mysql_num_rows($q2005) < 1) {
                                biguglyerror("Nepoznata akademska godina");
                                return;
                            }
                            $naziv_ag = mysql_result($q2005, 0, 0);
                        } else {
                            $q2010 = myquery("select id, naziv from akademska_godina where aktuelna=1");
                            $ak_god = mysql_result($q2010, 0, 0);
                            $naziv_ag = mysql_result($q2010, 0, 1);
                        }
                        $q2020 = myquery("select studij, semestar, plan_studija from student_studij where student={$osoba} and akademska_godina={$ak_god} order by semestar desc");
                        if (mysql_num_rows($q2020) > 0) {
                            $studij = mysql_result($q2020, 0, 0);
                            $semestar = mysql_result($q2020, 0, 1);
                            $q2025 = myquery("select naziv from studij where id={$studij}");
                            $naziv_studija = mysql_result($q2025, 0, 0);
                            print "<p>Student trenutno ({$naziv_ag}) upisan na {$naziv_studija}, {$semestar}. semestar.</p>\n";
                            // Upozorenje!
                            if (mysql_result($q2020, 0, 2) > 0) {
                                print "<p><b>Napomena:</b> Student je već upisan na sve predmete koje je trebao slušati po odabranom planu studija!<br/> Koristite ovu opciju samo za izuzetke / odstupanja od plana ili u slučaju grešaka u radu Zamgera.<br/>U suprotnom, može se desiti da student nema adekvatan broj ECTS kredita ili da sluša izborni predmet<br/>koji ne bi smio slušati.</p>\n";
                            }
                        } else {
                            // Student trenutno nije upisan nigdje... biramo zadnji studij koji je slušao
                            if ($spisak == 0) {
                                $spisak = 1;
                            }
                            $q2030 = myquery("select studij, semestar, akademska_godina from student_studij where student={$osoba} order by akademska_godina desc limit 1");
                            if (mysql_num_rows($q2030) > 0) {
                                $studij = mysql_result($q2030, 0, 0);
                                $ag_studija = mysql_result($q2030, 0, 2);
                                $q2040 = myquery("select naziv from studij where id={$studij}");
                                $naziv_studija = mysql_result($q2040, 0, 0);
                                $q2050 = myquery("select naziv from akademska_godina where id={$ag_studija}");
                                if ($ag_studija > $ak_god) {
                                    print "<p>Student nije bio upisan u odabranoj akademskoj godini ({$naziv_ag}), ali je upisan na studij {$naziv_studija}, " . mysql_result($q2030, 0, 0) . ". semestar, akademske " . mysql_result($q2050, 0, 0) . " godine.</p>\n";
                                } else {
                                    print "<p>Student trenutno ({$naziv_ag}) nije upisan na fakultet! Posljednji put slušao {$naziv_studija}, " . mysql_result($q2030, 0, 0) . ". semestar, akademske " . mysql_result($q2050, 0, 0) . " godine.</p>\n";
                                }
                            } else {
                                // Nikada nije bio student?
                                $studij = 0;
                                if ($spisak < 2) {
                                    $spisak = 2;
                                }
                                print "<p>Osoba nikada nije bila naš student!</p>\n";
                            }
                        }
                        // Opcije za spisak predmeta
                        $s0 = $spisak == 0 ? "CHECKED" : "";
                        $s1 = $spisak == 1 ? "CHECKED" : "";
                        $s2 = $spisak == 2 ? "CHECKED" : "";
                        unset($_REQUEST['subakcija']);
                        // da se ne bi ponovila
                        ?>
	<?php 
                        echo genform("GET");
                        ?>
	Akademska godina: <?php 
                        echo db_dropdown("akademska_godina", $ak_god);
                        ?>
<br>
	<input type="radio" name="spisak" value="0" <?php 
                        echo $s0;
                        ?>
> Prikaži predmete sa izabranog studija i semestra<br/>
	<input type="radio" name="spisak" value="1" <?php 
                        echo $s1;
                        ?>
> Prikaži predmete sa svih semestara<br/>
	<input type="radio" name="spisak" value="2" <?php 
                        echo $s2;
                        ?>
> Prikaži predmete sa drugih studija<br/>
	<input type="submit" value=" Kreni "></form><br><br>
	<?php 
                        // Ispis svih predmeta na studiju semestru je funkcija, pošto pozivanje unutar petlje ovisi o nivou spiska
                        function dajpredmete($studij, $semestar, $student, $ag, $spisak)
                        {
                            $q2100 = myquery("select pk.id, p.id, p.naziv, pk.obavezan from ponudakursa as pk, predmet as p where pk.studij={$studij} and pk.semestar={$semestar} and pk.akademska_godina={$ag} and pk.predmet=p.id order by p.naziv");
                            while ($r2100 = mysql_fetch_row($q2100)) {
                                $ponudakursa = $r2100[0];
                                $predmet = $r2100[1];
                                $predmet_naziv = $r2100[2];
                                print "<li>{$predmet_naziv}";
                                if ($r2100[3] != 1) {
                                    print " (izborni)";
                                }
                                // Da li je upisan?
                                // Zbog mogućih bugova, prvo gledamo da li je upisan...
                                $q2120 = myquery("select count(*) from student_predmet where student={$student} and predmet={$ponudakursa}");
                                if (mysql_result($q2120, 0, 0) > 0) {
                                    print " - <a href=\"?sta=studentska/osobe&akcija=predmeti&osoba={$student}&subakcija=ispisi&ponudakursa={$ponudakursa}&spisak={$spisak}&ag={$ag}\">ispiši</a></li>\n";
                                } else {
                                    // Da li je položen?
                                    $q2110 = myquery("select count(*) from konacna_ocjena where student={$student} and predmet={$predmet} and ocjena>5");
                                    if (mysql_result($q2110, 0, 0) > 0) {
                                        print " - položen</li>\n";
                                    } else {
                                        print " - <a href=\"?sta=studentska/osobe&akcija=predmeti&osoba={$student}&subakcija=upisi&ponudakursa={$ponudakursa}&spisak={$spisak}&ag={$ag}\">upiši</a></li>\n";
                                    }
                                }
                            }
                        }
                        // function dajpredmete
                        // Ispis predmeta
                        if ($spisak == 0) {
                            print "<b>{$naziv_studija}, {$semestar}. semestar</b>\n<ul>\n";
                            dajpredmete($studij, $semestar, $osoba, $ak_god, $spisak);
                            print "</ul>\n";
                        } else {
                            if ($spisak == 1) {
                                // Broj semestara?
                                $q2060 = myquery("select ts.trajanje from studij as s, tipstudija as ts where s.id={$studij} and s.tipstudija=ts.id");
                                for ($s = 1; $s <= mysql_result($q2060, 0, 0); $s++) {
                                    if ($s == $semestar) {
                                        print "<b>{$naziv_studija}, {$s}. semestar</b>\n<ul>\n";
                                    } else {
                                        print "{$naziv_studija}, {$s}. semestar\n<ul>\n";
                                    }
                                    dajpredmete($studij, $s, $osoba, $ak_god, $spisak);
                                    print "</ul>\n";
                                }
                            } else {
                                if ($spisak == 2) {
                                    // Svi studiji
                                    $q2070 = myquery("select s.id, s.naziv, ts.trajanje from studij as s, tipstudija as ts where s.tipstudija=ts.id and ts.moguc_upis=1 order by ts.ciklus, s.naziv");
                                    while ($r2070 = mysql_fetch_row($q2070)) {
                                        $stud = $r2070[0];
                                        $stud_naziv = $r2070[1];
                                        $stud_trajanje = $r2070[2];
                                        if ($stud == $studij) {
                                            print "<b>{$stud_naziv}</b>\n<ul>\n";
                                        } else {
                                            print "{$stud_naziv}\n<ul>\n";
                                        }
                                        for ($s = 1; $s <= $stud_trajanje; $s++) {
                                            if ($stud == $studij && $s == $semestar) {
                                                print "<b>{$s}. semestar</b>\n<ul>\n";
                                            } else {
                                                print "{$s}. semestar\n<ul>\n";
                                            }
                                            dajpredmete($stud, $s, $osoba, $ak_god, $spisak);
                                            print "</ul>\n";
                                        }
                                        print "</ul>\n";
                                    }
                                }
                            }
                        }
                    } else {
                        if ($akcija == "izbori") {
                            if ($_POST['subakcija'] == "novi" && check_csrf_token()) {
                                $zvanje = intval($_POST['_lv_column_zvanje']);
                                $datum_izbora = mktime(0, 0, 0, intval($_POST['izbormonth']), intval($_POST['izborday']), intval($_POST['izboryear']));
                                $datum_isteka = mktime(0, 0, 0, intval($_POST['istekmonth']), intval($_POST['istekday']), intval($_POST['istekyear']));
                                // Ove vrijednosti moraju biti ovakve
                                if ($datum_izbora == mktime(0, 0, 0, 1, 1, 1990)) {
                                    $datum_izbora = 0;
                                }
                                if ($datum_isteka == mktime(0, 0, 0, 1, 1, 1990)) {
                                    $datum_isteka = 0;
                                }
                                $oblast = intval($_POST['_lv_column_oblast']);
                                $podoblast = intval($_POST['_lv_column_podoblast']);
                                if ($_POST['dopunski']) {
                                    $dopunski = 1;
                                } else {
                                    $dopunski = 0;
                                }
                                if ($_POST['druga_institucija']) {
                                    $drugainst = 1;
                                } else {
                                    $drugainst = 0;
                                }
                                if ($_POST['neodredjeno']) {
                                    $sqlisteka = "'2999-01-01'";
                                } else {
                                    $sqlisteka = "FROM_UNIXTIME({$datum_isteka})";
                                }
                                $q3030 = myquery("insert into izbor set osoba={$osoba}, zvanje={$zvanje}, datum_izbora=FROM_UNIXTIME({$datum_izbora}), datum_isteka={$sqlisteka}, oblast={$oblast}, podoblast={$podoblast}, dopunski={$dopunski}, druga_institucija={$drugainst}");
                                zamgerlog("dodani podaci o izboru za u{$osoba}", 2);
                            }
                            if ($_POST['subakcija'] == "izmjena" && check_csrf_token()) {
                                $izvanje = intval($_POST['_lv_column_zvanje']);
                                $idatum_izbora = mktime(0, 0, 0, intval($_POST['izbormonth']), intval($_POST['izborday']), intval($_POST['izboryear']));
                                $idatum_isteka = mktime(0, 0, 0, intval($_POST['istekmonth']), intval($_POST['istekday']), intval($_POST['istekyear']));
                                // Ove vrijednosti moraju biti ovakve
                                if ($idatum_izbora == mktime(0, 0, 0, 1, 1, 1990)) {
                                    $idatum_izbora = 0;
                                }
                                if ($idatum_isteka == mktime(0, 0, 0, 1, 1, 1990)) {
                                    $idatum_isteka = 0;
                                }
                                $ioblast = intval($_POST['_lv_column_oblast']);
                                $ipodoblast = intval($_POST['_lv_column_podoblast']);
                                if ($_POST['dopunski']) {
                                    $idopunski = 1;
                                } else {
                                    $idopunski = 0;
                                }
                                if ($_POST['druga_institucija']) {
                                    $idrugainst = 1;
                                } else {
                                    $idrugainst = 0;
                                }
                                if ($_POST['neodredjeno']) {
                                    $isqlisteka = "'2999-01-01'";
                                } else {
                                    $isqlisteka = "FROM_UNIXTIME({$idatum_isteka})";
                                }
                                // Bice azurirano prilikom ispisa...
                            }
                            $broj_izbora = intval($_REQUEST['broj_izbora']);
                            $q3000 = myquery("select ime, prezime from osoba where id={$osoba}");
                            $imeprezime = mysql_result($q3000, 0, 0) . " " . mysql_result($q3000, 0, 1);
                            ?>
	<h3>Izbor nastavnika u zvanja</h3>
	<p><a href="?sta=studentska/osobe&osoba=<?php 
                            echo $osoba;
                            ?>
&akcija=edit">Nazad na podatke o osobi <?php 
                            echo $imeprezime;
                            ?>
</a></p>
	<p>&nbsp;</p>
	<?php 
                            $t_zvanje = $t_datumiz = $t_datumis = $t_oblast = $t_podoblast = $t_dopunski = 0;
                            $ispis = "";
                            $q3010 = myquery("select zvanje, UNIX_TIMESTAMP(datum_izbora), UNIX_TIMESTAMP(datum_isteka), oblast, podoblast, dopunski, druga_institucija from izbor WHERE osoba={$osoba} order by datum_isteka, datum_izbora");
                            if (mysql_num_rows($q3010) == 1 && $broj_izbora != -1) {
                                $broj_izbora = 1;
                            }
                            // Ako postoji samo jedan izbor, editujemo ga; -1 znači ipak dodavanje novog
                            for ($i = 1; $i <= mysql_num_rows($q3010); $i++) {
                                $zvanje = mysql_result($q3010, $i - 1, 0);
                                $datumiz = mysql_result($q3010, $i - 1, 1);
                                $datumis = mysql_result($q3010, $i - 1, 2);
                                $oblast = mysql_result($q3010, $i - 1, 3);
                                $podoblast = mysql_result($q3010, $i - 1, 4);
                                $dopunski = mysql_result($q3010, $i - 1, 5);
                                $drugainst = mysql_result($q3010, $i - 1, 6);
                                $q3020 = myquery("select naziv from zvanje where id={$zvanje}");
                                $nzvanje = mysql_result($q3020, 0, 0);
                                $ndatumiz = date("d. m. Y", $datumiz);
                                if ($datumiz == 0) {
                                    $ndatumiz = "nepoznato";
                                }
                                $ndatumis = date("d. m. Y", $datumis);
                                if ($datumis == 0) {
                                    $ndatumis = "neodređeno";
                                }
                                if ($i == $broj_izbora) {
                                    $t_zvanje = $zvanje;
                                    $t_datumiz = $datumiz;
                                    $t_datumis = $datumis;
                                    $t_oblast = $oblast;
                                    $t_podoblast = $podoblast;
                                    $t_dopunski = $dopunski;
                                    $t_drugainst = $drugainst;
                                    if ($datumis == 0) {
                                        $t_neodredjeno = 1;
                                    } else {
                                        $t_neodredjeno = 0;
                                    }
                                    if ($_POST['subakcija'] == "izmjena" && check_csrf_token()) {
                                        $q3040 = myquery("update izbor set zvanje={$izvanje}, datum_izbora=FROM_UNIXTIME({$idatum_izbora}), datum_isteka={$isqlisteka}, oblast={$ioblast}, podoblast={$ipodoblast}, dopunski={$idopunski}, druga_institucija={$idrugainst} WHERE zvanje={$zvanje} and UNIX_TIMESTAMP(datum_izbora)={$datumiz} and UNIX_TIMESTAMP(datum_isteka)={$datumis} and oblast={$oblast} and podoblast={$podoblast} and dopunski={$dopunski} and druga_institucija={$drugainst}");
                                        zamgerlog("azurirani podaci o izboru za u{$osoba}", 2);
                                        zamgerlog2("azurirani podaci o izboru", $osoba);
                                        $t_zvanje = $izvanje;
                                        $t_datumiz = $idatum_izbora;
                                        $t_datumis = $idatum_isteka;
                                        $t_oblast = $ioblast;
                                        $t_podoblast = $ipodoblast;
                                        $t_dopunski = $idopunski;
                                        $t_drugainst = $idrugainst;
                                        $q3020 = myquery("select naziv from zvanje where id={$izvanje}");
                                        $nzvanje = mysql_result($q3020, 0, 0);
                                        $ndatumiz = date("d. m. Y", $t_datumiz);
                                        if ($t_datumiz == 0) {
                                            $ndatumiz = "nepoznato";
                                        }
                                        $ndatumis = date("d. m. Y", $t_datumis);
                                        if ($t_datumis == 0) {
                                            $ndatumis = "neodređeno";
                                        }
                                    }
                                    $ispis .= "<br/>* {$nzvanje} ({$ndatumiz} - {$ndatumis})\n";
                                } else {
                                    $ispis .= "<br/>* <a href=\"?sta=studentska/osobe&osoba={$osoba}&akcija=izbori&broj_izbora={$i}\">{$nzvanje} ({$ndatumiz} - {$ndatumis})</a>\n";
                                }
                            }
                            if (mysql_num_rows($q3010) > 0) {
                                ?>
		<p><b>Historija izbora:</b>
		<?php 
                                echo $ispis;
                                ?>
</p>
		<?php 
                            }
                            if ($broj_izbora < 1) {
                                ?>
		<p><b>Unos novog izbora:</b></p>
		<?php 
                                echo genform("POST");
                                ?>
		<input type="hidden" name="subakcija" value="novi">
		<?php 
                            } else {
                                ?>
		<p><b>Izmjena podataka o izboru:</b></p>
		<?php 
                                echo genform("POST");
                                ?>
		<input type="hidden" name="subakcija" value="izmjena">
		<?php 
                            }
                            ?>
	<table border="0"><tr>
		<td>Zvanje:</td>
		<td><?php 
                            echo db_dropdown("zvanje", $t_zvanje);
                            ?>
</td>
	</tr><tr>
		<td>Datum izbora:</td>
		<td><?php 
                            echo datectrl(date("d", $t_datumiz), date("m", $t_datumiz), date("Y", $t_datumiz), "izbor");
                            ?>
</td>
	</tr><tr>
		<td valign="top">Datum isteka:</td>
		<td><input type="checkbox" name="neodredjeno" <?php 
                            if ($t_neodredjeno == 1) {
                                print "CHECKED";
                            }
                            ?>
> Neodređeno<br/>
		<?php 
                            echo datectrl(date("d", $t_datumis), date("m", $t_datumis), date("Y", $t_datumis), "istek");
                            ?>
</td>
	</tr><tr>
		<td>Oblast:</td>
		<td><?php 
                            echo db_dropdown("oblast", $t_oblast, "--Nepoznato--");
                            ?>
</td>
	</tr><tr>
		<td>Podoblast:</td>
		<td><?php 
                            echo db_dropdown("podoblast", $t_podoblast, "--Nepoznato--");
                            ?>
</td>
	</tr><tr>
		<td colspan="2"><input type="checkbox" name="dopunski" <?php 
                            if ($t_dopunski == 1) {
                                print "CHECKED";
                            }
                            ?>
> Dopunski radni odnos</td>
	</tr><tr>
		<td colspan="2"><input type="checkbox" name="druga_institucija" <?php 
                            if ($t_drugainst == 1) {
                                print "CHECKED";
                            }
                            ?>
> Biran/a na drugoj VŠO</td>
	</tr>
	</table>
	<input type="submit" value=" Pošalji ">
	</form>
	<?php 
                            if ($broj_izbora > 0) {
                                ?>
		<p><a href="?sta=studentska/osobe&osoba=<?php 
                                echo $osoba;
                                ?>
&akcija=izbori&broj_izbora=-1">Kliknite ovdje za unos novog izbora</a></p>
		<?php 
                            }
                        } else {
                            if ($akcija == "edit") {
                                $pretraga = my_escape($_REQUEST['search']);
                                $ofset = my_escape($_REQUEST['offset']);
                                ?>
<a href="?sta=studentska/osobe&search=<?php 
                                echo $pretraga;
                                ?>
&offset=<?php 
                                echo $ofset;
                                ?>
">Nazad na rezultate pretrage</a><br/><br/><?php 
                                // Prvo odredjujemo aktuelnu akademsku godinu - ovaj upit se dosta koristi kasnije
                                $q210 = myquery("select id,naziv from akademska_godina where aktuelna=1 order by id desc");
                                if (mysql_num_rows($q210) < 1) {
                                    // Nijedna godina nije aktuelna - ali mora postojati barem jedna u bazi
                                    $q210 = myquery("select id,naziv from akademska_godina order by id desc");
                                }
                                $id_ak_god = mysql_result($q210, 0, 0);
                                $naziv_ak_god = mysql_result($q210, 0, 1);
                                // Posto se id_ak_god moze promijeniti.... CLEANUP!!!
                                $orig_iag = $id_ak_god;
                                // ======= SUBMIT AKCIJE =========
                                // Promjena korisničkog pristupa i pristupnih podataka
                                if ($_POST['subakcija'] == "auth" && check_csrf_token()) {
                                    $login = my_escape(trim($_REQUEST['login']));
                                    $login_ldap = ldap_escape(trim($_REQUEST['login']));
                                    $stari_login = my_escape($_REQUEST['stari_login']);
                                    $password = my_escape($_REQUEST['password']);
                                    $aktivan = intval($_REQUEST['aktivan']);
                                    if ($login == "") {
                                        niceerror("Ne možete postaviti prazan login");
                                    } else {
                                        if ($stari_login == "") {
                                            // Provjeravamo LDAP?
                                            if ($conf_system_auth == "ldap") {
                                                do {
                                                    // Simuliramo GOTO...
                                                    // Tražimo ovaj login na LDAPu...
                                                    $ds = ldap_connect($conf_ldap_server);
                                                    ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);
                                                    if (!ldap_bind($ds)) {
                                                        zamgerlog("Ne mogu se spojiti na LDAP server", 3);
                                                        // 3 - greska
                                                        zamgerlog2("ne mogu se spojiti na LDAP server");
                                                        niceerror("Ne mogu se spojiti na LDAP server - nastavljam dalje bez provjere");
                                                        break;
                                                    }
                                                    $sr = ldap_search($ds, "", "uid={$login_ldap}", array());
                                                    if (!$sr) {
                                                        zamgerlog("ldap_search() nije uspio.", 3);
                                                        zamgerlog2("ldap_search() nije uspio.");
                                                        niceerror("ldap_search() nije uspio - nastavljam dalje bez provjere");
                                                        break;
                                                    }
                                                    $results = ldap_get_entries($ds, $sr);
                                                    if ($results['count'] > 0) {
                                                        nicemessage("Login '{$login}' pronađen na LDAP serveru");
                                                        break;
                                                    }
                                                    // Pokušavamo mail alias
                                                    $sr = ldap_search($ds, "", "mail={$login_ldap}{$conf_ldap_domain}", array());
                                                    if (!$sr) {
                                                        zamgerlog("ldap_search() 2 nije uspio.", 3);
                                                        zamgerlog2("ldap_search() nije uspio.");
                                                        niceerror("ldap_search() nije uspio - nastavljam dalje bez provjere");
                                                        break;
                                                    }
                                                    $results = ldap_get_entries($ds, $sr);
                                                    // pretpostavka je da će druga pretraga raditi
                                                    if ($results['count'] > 0) {
                                                        nicemessage("Email '{$login}{$conf_ldap_domain}' pronađen na LDAP serveru");
                                                    } else {
                                                        zamgerlog("login ne postoji na LDAPu ({$login})", 3);
                                                        zamgerlog2("login ne postoji na LDAPu", 0, 0, 0, $login);
                                                        niceerror("Predloženi login ({$login}) nije pronađen na LDAP serveru!");
                                                        print "<p>Nastaviću dalje sa dodavanjem logina, ali korisnik vjerovatno neće moći pristupiti Zamgeru.</p>";
                                                    }
                                                } while (false);
                                            }
                                            // Dodavanje novog logina
                                            $q120 = myquery("insert into auth set id={$osoba}, login='******', password='******', aktivan={$aktivan}");
                                            nicemessage("Uspješno kreiran novi login za korisnika");
                                            zamgerlog("dodan novi login '{$login}' za korisnika u{$osoba}", 4);
                                            zamgerlog2("dodan novi login za korisnika", $osoba, 0, 0, $login);
                                        } else {
                                            // Izmjena starog logina
                                            $q123 = myquery("select count(*) from auth where id={$osoba} and login='******'");
                                            if (mysql_result($q123, 0, 0) < 1) {
                                                niceerror("Nije pronađen login... molimo pokušajte ponovo");
                                                zamgerlog("nije pronadjen stari login '{$stari_login}' za korisnika u{$osoba}", 3);
                                                zamgerlog2("nije pronadjen stari login za korisnika", $osoba);
                                            } else {
                                                if ($_REQUEST['brisanje'] == " Obriši ") {
                                                    $q125 = myquery("delete from auth where id={$osoba} and login='******'");
                                                    nicemessage("Uspješno obrisan login '{$stari_login}'");
                                                    zamgerlog("obrisan login '{$stari_login}' za korisnika u{$osoba}", 4);
                                                    zamgerlog2("obrisan login za korisnika", $osoba, 0, 0, $stari_login);
                                                } else {
                                                    $q127 = myquery("update auth set login='******', password='******', aktivan={$aktivan} where id={$osoba} and login='******'");
                                                    nicemessage("Uspješno izmijenjen login '{$login}'");
                                                    zamgerlog("izmijenjen login '{$stari_login}' u '{$login}' za korisnika u{$osoba}", 4);
                                                    zamgerlog2("izmijenjen login za korisnika", $osoba, 0, 0, $login);
                                                }
                                            }
                                        }
                                    }
                                }
                                // if ($_REQUEST['subakcija'] == "auth")
                                // Pojednostavljena promjena podataka za studentsku službu u slučaju korištenja
                                // eksterne baze korisnika
                                if ($_POST['subakcija'] == "auth_ldap" && check_csrf_token()) {
                                    $aktivan = intval($_REQUEST['aktivan']);
                                    // Postoji li zapis u tabeli auth?
                                    $q103 = myquery("select count(*) from auth where id={$osoba}");
                                    if (mysql_result($q103, 0, 0) > 0) {
                                        // Da!
                                        // Ako isključujemo pristup, stavljamo aktivan na 0
                                        if ($aktivan != 0) {
                                            $q105 = myquery("update auth set aktivan=0 where id={$osoba}");
                                            zamgerlog("ukinut login za korisnika u{$osoba} (ldap)", 4);
                                            zamgerlog2("ukinut login za korisnika (ldap)", $osoba);
                                        } else {
                                            $q105 = myquery("update auth set aktivan=1 where id={$osoba}");
                                            zamgerlog("aktiviran login za korisnika u{$osoba} (ldap)", 4);
                                            zamgerlog2("aktiviran login za korisnika (ldap)", $osoba);
                                        }
                                    } else {
                                        if ($aktivan != 0) {
                                            // Nema zapisa u tabeli auth
                                            // Ako je izabrano isključenje pristupa, ne radimo nista
                                            // (ne bi se smjelo desiti)
                                            // U suprotnom kreiramo login
                                            // predloženi login
                                            $suggest_login = gen_ldap_uid($osoba);
                                            // Tražimo ovaj login na LDAPu...
                                            $ds = ldap_connect($conf_ldap_server);
                                            ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);
                                            if (!ldap_bind($ds)) {
                                                zamgerlog("Ne mogu se spojiti na LDAP server", 3);
                                                // 3 - greska
                                                zamgerlog2("ne mogu se spojiti na LDAP server");
                                                niceerror("Ne mogu se spojiti na LDAP server");
                                                return;
                                            }
                                            $sr = ldap_search($ds, "", "uid={$suggest_login}", array());
                                            if (!$sr) {
                                                zamgerlog("ldap_search() nije uspio.", 3);
                                                zamgerlog2("ldap_search() nije uspio.");
                                                niceerror("ldap_search() nije uspio.");
                                                return;
                                            }
                                            $results = ldap_get_entries($ds, $sr);
                                            if ($results['count'] < 1) {
                                                zamgerlog("login ne postoji na LDAPu ({$suggest_login})", 3);
                                                zamgerlog2("login ne postoji na LDAPu", 0, 0, 0, $suggest_login);
                                                niceerror("Predloženi login ({$suggest_login}) nije pronađen na LDAP serveru!");
                                                print "<p>Da li ste uspravno unijeli broj indeksa, ime i prezime? Ako jeste, kontaktirajte administratora!</p>";
                                                // Nastavljamo dalje sa edit akcijom kako bi studentska mogla popraviti podatke
                                            } else {
                                                // Dodajemo login, ako nije podešen
                                                $q110 = myquery("select login, aktivan from auth where id={$osoba}");
                                                if (mysql_num_rows($q110) == 0) {
                                                    $q111 = myquery("insert into auth set id={$osoba}, login='******', aktivan=1");
                                                    zamgerlog("kreiran login za korisnika u{$osoba} (ldap - upis u tabelu)", 4);
                                                    zamgerlog2("kreiran login za korisnika (ldap - upis u tabelu)", $osoba);
                                                } else {
                                                    if (mysql_result($q110, 0, 0) == "") {
                                                        $q112 = myquery("update auth set login='******' where id={$osoba}");
                                                        zamgerlog("kreiran login za korisnika u{$osoba} (ldap - postavljeno polje login)", 4);
                                                        zamgerlog2("kreiran login za korisnika (ldap - postavljeno polje login)", $osoba);
                                                    }
                                                    if (mysql_result($q110, 0, 1) == 0) {
                                                        $q113 = myquery("update auth set aktivan=1 where id={$osoba}");
                                                        zamgerlog("kreiran login za korisnika u{$osoba} (ldap - aktivan=1)", 4);
                                                        zamgerlog2("kreiran login za korisnika (ldap - aktivan=1)", $osoba);
                                                    }
                                                }
                                                // Generišemo email adresu ako nije podešena
                                                $email_adresa = $suggest_login . $conf_ldap_domain;
                                                $q115 = myquery("select sistemska from email where osoba={$osoba} and adresa='{$email_adresa}'");
                                                if (mysql_num_rows($q115) < 1) {
                                                    $q114 = myquery("insert into email set osoba={$osoba}, adresa='{$email_adresa}', sistemska=1");
                                                    zamgerlog("dodana sistemska email adresa za u{$osoba}", 2);
                                                    zamgerlog2("sistemska email adresa dodana", $osoba, intval(mysql_insert_id()), 0, "{$email_adresa}");
                                                } else {
                                                    if (mysql_result($q115, 0, 0) == 0) {
                                                        $q114 = myquery("update email set sistemska=1 where email='{$email_adresa}' and osoba={$osoba}");
                                                        zamgerlog("email adresa proglasena za sistemsku za u{$osoba}", 2);
                                                        zamgerlog2("email adresa proglasena za sistemsku", $osoba, 0, 0, "{$email_adresa}");
                                                    }
                                                }
                                            }
                                        }
                                    }
                                    // else if ($pristup!=0)
                                }
                                // if ($_REQUEST['subakcija'] == "auth")
                                // Upis studenta na predmet
                                if ($_POST['subakcija'] == "upisi" && check_csrf_token()) {
                                    $predmet = intval($_POST['predmet']);
                                    if ($predmet == 0) {
                                        nicemessage("Niste izabrali predmet");
                                    } else {
                                        $q130 = myquery("select count(*) from student_predmet where student={$osoba} and predmet={$predmet}");
                                        if (mysql_result($q130, 0, 0) < 1) {
                                            upis_studenta_na_predmet($osoba, $predmet);
                                            zamgerlog("student u{$osoba} upisan na predmet p{$predmet}", 4);
                                            zamgerlog2("student upisan na predmet (manuelno 2)", $osoba, $predmet);
                                            $q136 = myquery("select p.naziv from predmet as p, ponudakursa as pk where pk.id={$predmet} and pk.predmet=p.id");
                                            $naziv_predmeta = mysql_result($q136, 0, 0);
                                            nicemessage("Student upisan na predmet {$naziv_predmeta}.");
                                        }
                                    }
                                }
                                // Dodjela prava nastavniku na predmetu
                                if ($_POST['subakcija'] == "daj_prava" && check_csrf_token()) {
                                    $predmet = intval($_POST['predmet']);
                                    $q115 = myquery("select naziv from predmet where id={$predmet}");
                                    $naziv_predmeta = mysql_result($q115, 0, 0);
                                    $q130 = myquery("replace nastavnik_predmet set nastavnik={$osoba}, predmet={$predmet}, akademska_godina={$id_ak_god}, nivo_pristupa='asistent'");
                                    zamgerlog("nastavniku u{$osoba} data prava na predmetu pp{$predmet} (admin: {$admin_predmeta}, akademska godina: {$id_ak_god})", 4);
                                    zamgerlog2("nastavniku data prava na predmetu", $osoba, $predmet, intval($id_ak_god));
                                    nicemessage("Nastavniku su dodijeljena prava na predmetu {$naziv_predmeta}.");
                                    print "<p>Kliknite na naziv predmeta na spisku ispod kako biste detaljnije podesili privilegije.</p>";
                                }
                                // Angažman nastavnika na predmetu
                                if ($_POST['subakcija'] == "angazuj" && check_csrf_token()) {
                                    $predmet = intval($_POST['predmet']);
                                    $status = intval($_POST['_lv_column_angazman_status']);
                                    $angazman_ak_god = intval($_POST['_lv_column_akademska_godina']);
                                    $q115 = myquery("select naziv from predmet where id={$predmet}");
                                    $naziv_predmeta = mysql_result($q115, 0, 0);
                                    $q130 = myquery("replace angazman set osoba={$osoba}, predmet={$predmet}, akademska_godina={$angazman_ak_god}, angazman_status={$status}");
                                    zamgerlog("nastavnik u{$osoba} angazovan na predmetu pp{$predmet} (status: {$status}, akademska godina: {$id_ak_god})", 4);
                                    zamgerlog2("nastavnik angazovan na predmetu", $osoba, $predmet, intval($id_ak_god));
                                    nicemessage("Nastavnik angažovan na predmetu {$naziv_predmeta}.");
                                    print "<p>Kliknite na naziv predmeta na spisku ispod kako biste detaljnije podesili privilegije.</p>";
                                }
                                // Promjena uloga korisnika
                                if ($_POST['subakcija'] == "uloga" && check_csrf_token()) {
                                    if (!$user_siteadmin) {
                                        niceerror("Nemate pravo na promjenu uloga!");
                                        return;
                                    }
                                    $korisnik['student'] = $korisnik['nastavnik'] = $korisnik['prijemni'] = $korisnik['studentska'] = $korisnik['siteadmin'] = 0;
                                    $q150 = myquery("select privilegija from privilegije where osoba={$osoba}");
                                    while ($r150 = mysql_fetch_row($q150)) {
                                        if ($r150[0] == "student") {
                                            $korisnik['student'] = 1;
                                        }
                                        if ($r150[0] == "nastavnik") {
                                            $korisnik['nastavnik'] = 1;
                                        }
                                        if ($r150[0] == "prijemni") {
                                            $korisnik['prijemni'] = 1;
                                        }
                                        if ($r150[0] == "studentska") {
                                            $korisnik['studentska'] = 1;
                                        }
                                        if ($r150[0] == "siteadmin") {
                                            $korisnik['siteadmin'] = 1;
                                        }
                                    }
                                    foreach ($korisnik as $privilegija => $vrijednost) {
                                        if ($_POST[$privilegija] == "1" && $vrijednost == 0) {
                                            $q151 = myquery("insert into privilegije set osoba={$osoba}, privilegija='{$privilegija}'");
                                            zamgerlog("osobi u{$osoba} data privilegija {$privilegija}", 4);
                                            zamgerlog2("osobi data privilegija", $osoba, 0, 0, $privilegija);
                                            nicemessage("Data privilegija {$privilegija}");
                                        }
                                        if ($_POST[$privilegija] != "1" && $vrijednost == 1) {
                                            $q151 = myquery("delete from privilegije where osoba={$osoba} and privilegija='{$privilegija}'");
                                            zamgerlog("osobi u{$osoba} oduzeta privilegija {$privilegija}", 4);
                                            zamgerlog2("osobi oduzeta privilegija", $osoba, $privilegija);
                                            nicemessage("Oduzeta privilegija {$privilegija}");
                                        }
                                    }
                                }
                                // Osnovni podaci
                                $q200 = myquery("select ime, prezime, 1, brindexa, UNIX_TIMESTAMP(datum_rodjenja), mjesto_rodjenja, jmbg, drzavljanstvo, adresa, adresa_mjesto, telefon, kanton, strucni_stepen, naucni_stepen, slika from osoba where id={$osoba}");
                                if (!($r200 = mysql_fetch_row($q200))) {
                                    zamgerlog("nepostojeca osoba u{$osoba}", 3);
                                    zamgerlog2("nepostojeca osoba", $osoba);
                                    niceerror("Nepostojeća osoba!");
                                    return;
                                }
                                $ime = mysql_result($q200, 0, 0);
                                $prezime = mysql_result($q200, 0, 1);
                                $slika = mysql_result($q200, 0, 14);
                                // Pripremam neke podatke za ispis
                                // Ovo nije u istom upitu jer nije pravi FK, podaci ne moraju biti definisani
                                // TODO dodati polje "nedefinisano" u sve tabele, po mogućnosti sa IDom nula
                                $mjesto_rodj = "";
                                if (mysql_result($q200, 0, 5) != 0) {
                                    $q201 = myquery("select naziv from mjesto where id=" . mysql_result($q200, 0, 5));
                                    $mjesto_rodj = mysql_result($q201, 0, 0);
                                }
                                $drzavljanstvo = "";
                                if (mysql_result($q200, 0, 7) != 0) {
                                    $q202 = myquery("select naziv from drzava where id=" . mysql_result($q200, 0, 7));
                                    $drzavljanstvo = mysql_result($q202, 0, 0);
                                }
                                $adresa = mysql_result($q200, 0, 8);
                                if (mysql_result($q200, 0, 9) != 0) {
                                    $q203 = myquery("select naziv from mjesto where id=" . mysql_result($q200, 0, 9));
                                    $adresa .= ", " . mysql_result($q203, 0, 0);
                                }
                                $kanton = "";
                                if (mysql_result($q200, 0, 11) > 0) {
                                    $q205 = myquery("select naziv from kanton where id=" . mysql_result($q200, 0, 11));
                                    $kanton = mysql_result($q205, 0, 0);
                                }
                                if (mysql_result($q200, 0, 12) != 0) {
                                    $q206 = myquery("select naziv from strucni_stepen where id=" . mysql_result($q200, 0, 12));
                                    $strucni_stepen = mysql_result($q206, 0, 0);
                                }
                                if (mysql_result($q200, 0, 13) != 0) {
                                    $q207 = myquery("select naziv from naucni_stepen where id=" . mysql_result($q200, 0, 13));
                                    $naucni_stepen = mysql_result($q207, 0, 0);
                                }
                                // Spisak mailova
                                $q260 = myquery("select adresa from email where osoba={$osoba}");
                                $email_adrese = "";
                                while ($r260 = mysql_fetch_row($q260)) {
                                    if ($email_adrese !== "") {
                                        $email_adrese .= ", ";
                                    }
                                    $email_adrese .= $r260[0];
                                }
                                ?>

	<h2><?php 
                                echo $ime;
                                ?>
 <?php 
                                echo $prezime;
                                ?>
</h2>
	<?php 
                                if ($slika != "") {
                                    print "<img src=\"?sta=common/slika&osoba={$osoba}\"><br/>\n";
                                }
                                ?>
	<table border="0" width="600"><tr><td valign="top">
		Ime: <b><?php 
                                echo $ime;
                                ?>
</b><br/>
		Prezime: <b><?php 
                                echo $prezime;
                                ?>
</b><br/>
		Broj indexa (za studente): <b><?php 
                                echo mysql_result($q200, 0, 3);
                                ?>
</b><br/>
		JMBG: <b><?php 
                                echo mysql_result($q200, 0, 6);
                                ?>
</b><br/>
		<br/>
		Datum rođenja: <b><?php 
                                if (mysql_result($q200, 0, 4)) {
                                    print date("d. m. Y.", mysql_result($q200, 0, 4));
                                }
                                ?>
</b><br/>
		Mjesto rođenja: <b><?php 
                                echo $mjesto_rodj;
                                ?>
</b><br/>
		Državljanstvo: <b><?php 
                                echo $drzavljanstvo;
                                ?>
</b><br/>
		</td><td valign="top">
		Adresa: <b><?php 
                                echo $adresa;
                                ?>
</b><br/>
		Kanton: <b><?php 
                                echo $kanton;
                                ?>
</b><br/>
		Telefon: <b><?php 
                                echo mysql_result($q200, 0, 10);
                                ?>
</b><br/>
		Kontakt e-mail: <b><?php 
                                echo $email_adrese;
                                ?>
</b><br/>
		<br/>
		Stručni stepen: <b><?php 
                                echo $strucni_stepen;
                                ?>
</b><br/>
		Naučni stepen: <b><?php 
                                echo $naucni_stepen;
                                ?>
</b><br/>
		<br/>
		ID: <b><?php 
                                echo $osoba;
                                ?>
</b><br/>
		<br/>
		</form>
		<form action="index.php" method="GET">
		<input type="hidden" name="sta" value="common/profil">
		<input type="hidden" name="osoba" value="<?php 
                                echo $osoba;
                                ?>
">
		<input type="Submit" value=" Izmijeni "></form></td>
	</tr></table>
	<?php 
                                // Login&password
                                if ($conf_system_auth == "table" || $user_siteadmin) {
                                    print "<p>Korisnički pristup:\n";
                                    $q201 = myquery("select aktivan from auth where id={$osoba} and aktivan=1");
                                    if (mysql_num_rows($q201) < 1) {
                                        print "<font color=\"red\">NEMA</font>";
                                    }
                                    ?>
</p>
			<table border="0">
			<tr>
				<td>Korisničko ime:</td>
				<td width="80">Šifra:</td>
				<td>Aktivan:</td>
				<td>&nbsp;</td>
			</tr>
		<?php 
                                    $q201 = myquery("select login,password,aktivan from auth where id={$osoba}");
                                    while ($r201 = mysql_fetch_row($q201)) {
                                        $login = $r201[0];
                                        $password = $r201[1];
                                        $pristup = $r201[2];
                                        ?>
			<?php 
                                        echo genform("POST");
                                        ?>
			<input type="hidden" name="subakcija" value="auth">
			<input type="hidden" name="stari_login" value="<?php 
                                        echo $login;
                                        ?>
">
			<tr>
				<td><input type="text" size="10" name="login" value="<?php 
                                        echo $login;
                                        ?>
"></td>
				<td valign="center"><?php 
                                        if ($conf_system_auth == "ldap") {
                                            print "<b>LDAP</b>";
                                        } else {
                                            ?>
<input type="password" size="10" name="password" value="<?php 
                                            echo $password;
                                            ?>
"><?php 
                                        }
                                        ?>
</td>
				<td><input type="checkbox" size="10" name="aktivan" value="1" <?php 
                                        if ($pristup == 1) {
                                            print "CHECKED";
                                        }
                                        ?>
></td>
				<td><input type="Submit" value=" Izmijeni "> <input type="Submit" name="brisanje" value=" Obriši "></td>
			</tr></form>
			<?php 
                                    }
                                    ?>
		<?php 
                                    echo genform("POST");
                                    ?>
		<input type="hidden" name="subakcija" value="auth">
		<input type="hidden" name="stari_login" value="">
		<tr>
			<td><input type="text" size="10" name="login" value=""></td>
			<td><?php 
                                    if ($conf_system_auth == "ldap") {
                                        print "<b>LDAP</b>";
                                    } else {
                                        ?>
<input type="password" size="10" name="password" value=""><?php 
                                    }
                                    ?>
</td>
			<td><input type="checkbox" size="10" name="aktivan" value="1"></td>
			<td><input type="Submit" value=" Dodaj novi "></td>
		</tr></form></table>
		<?php 
                                } else {
                                    if ($conf_system_auth == "ldap") {
                                        $q201 = myquery("select aktivan from auth where id={$osoba} and aktivan=1");
                                        if (mysql_num_rows($q201) > 0) {
                                            $pristup = 1;
                                        } else {
                                            $pristup = 0;
                                        }
                                        ?>
		
		<script language="JavaScript">
		function upozorenje(pristup) {
			document.authforma.pristup.value=pristup;
			document.authforma.submit();
		}
		</script>
		<?php 
                                        echo genform("POST", "authforma");
                                        ?>
		<input type="hidden" name="subakcija" value="auth_ldap">
		<input type="hidden" name="pristup" value="">
		</form>

		<table border="0">
		<tr>
			<td colspan="5">Korisnički pristup: <input type="checkbox" name="aktivan" onchange="javascript:upozorenje('<?php 
                                        echo $pristup;
                                        ?>
');" <?php 
                                        if ($pristup == 1) {
                                            print "CHECKED";
                                        }
                                        ?>
></td>
		</tr></table></form>
		<?php 
                                    }
                                }
                                // Uloge korisnika
                                $korisnik_student = $korisnik_nastavnik = $korisnik_prijemni = $korisnik_studentska = $korisnik_siteadmin = 0;
                                print "<p>Tip korisnika: ";
                                $q209 = myquery("select privilegija from privilegije where osoba={$osoba}");
                                while ($r209 = mysql_fetch_row($q209)) {
                                    if ($r209[0] == "student") {
                                        print "<b>student,</b> ";
                                        $korisnik_student = 1;
                                    }
                                    if ($r209[0] == "nastavnik") {
                                        print "<b>nastavnik,</b> ";
                                        $korisnik_nastavnik = 1;
                                    }
                                    if ($r209[0] == "prijemni") {
                                        print "<b>kandidat na prijemnom ispitu,</b> ";
                                        $korisnik_prijemni = 1;
                                    }
                                    if ($r209[0] == "studentska") {
                                        print "<b>uposlenik studentske službe,</b> ";
                                        $korisnik_studentska = 1;
                                    }
                                    if ($r209[0] == "siteadmin") {
                                        print "<b>administrator,</b> ";
                                        $korisnik_siteadmin = 1;
                                    }
                                }
                                print "</p>\n";
                                // Admin dio
                                if ($user_siteadmin) {
                                    unset($_REQUEST['student'], $_REQUEST['nastavnik'], $_REQUEST['prijemni'], $_REQUEST['studentska'], $_REQUEST['siteadmin']);
                                    ?>
		<?php 
                                    echo genform("POST");
                                    ?>
		<input type="hidden" name="subakcija" value="uloga">
		<input type="checkbox" name="student" value="1" <?php 
                                    if ($korisnik_student == 1) {
                                        print "CHECKED";
                                    }
                                    ?>
> Student&nbsp;&nbsp;&nbsp;&nbsp;
		<input type="checkbox" name="nastavnik" value="1" <?php 
                                    if ($korisnik_nastavnik == 1) {
                                        print "CHECKED";
                                    }
                                    ?>
> nastavnik&nbsp;&nbsp;&nbsp;&nbsp;
		<input type="checkbox" name="prijemni" value="1" <?php 
                                    if ($korisnik_prijemni == 1) {
                                        print "CHECKED";
                                    }
                                    ?>
> prijemni&nbsp;&nbsp;&nbsp;&nbsp;
		<input type="checkbox" name="studentska" value="1" <?php 
                                    if ($korisnik_studentska == 1) {
                                        print "CHECKED";
                                    }
                                    ?>
> studentska&nbsp;&nbsp;&nbsp;&nbsp;
		<input type="checkbox" name="siteadmin" value="1" <?php 
                                    if ($korisnik_siteadmin == 1) {
                                        print "CHECKED";
                                    }
                                    ?>
> siteadmin<br/>
		<input type="submit" value=" Promijeni ">
		</form>
		<?php 
                                }
                                // STUDENT
                                if ($korisnik_student) {
                                    ?>
		<hr>
		<h3>STUDENT</h3>
		<?php 
                                    // Trenutno upisan na semestar:
                                    $q220 = myquery("SELECT s.naziv, ss.semestar, ss.akademska_godina, ag.naziv, s.id, ts.trajanje, ns.naziv, ts.ciklus \n\t\tFROM student_studij as ss, studij as s, akademska_godina as ag, tipstudija as ts, nacin_studiranja as ns \n\t\tWHERE ss.student={$osoba} and ss.studij=s.id and ag.id=ss.akademska_godina and s.tipstudija=ts.id and ss.nacin_studiranja=ns.id \n\t\tORDER BY ag.naziv DESC");
                                    $studij = "0";
                                    $studij_id = $semestar = 0;
                                    $puta = 1;
                                    // Da li je ikada slusao nesto?
                                    $ikad_studij = $ikad_studij_id = $ikad_semestar = $ikad_ak_god = $ikad_ciklus = 0;
                                    while ($r220 = mysql_fetch_row($q220)) {
                                        if ($r220[2] == $id_ak_god && $r220[1] > $semestar) {
                                            //trenutna akademska godina
                                            $studij = $r220[0];
                                            $semestar = $r220[1];
                                            $studij_id = $r220[4];
                                            $studij_trajanje = $r220[5];
                                            $nacin_studiranja = "kao {$r220['6']}";
                                            $studij_ciklus = $r220[7];
                                        } else {
                                            if ($r220[0] == $studij && $r220[1] == $semestar) {
                                                // ponovljeni semestri
                                                $puta++;
                                            } else {
                                                if ($r220[2] > $ikad_ak_god || $r220[2] == $ikad_ak_god && $r220[1] > $ikad_semestar) {
                                                    $ikad_studij = $r220[0];
                                                    $ikad_semestar = $r220[1];
                                                    $ikad_ak_god = $r220[2];
                                                    $ikad_ak_god_naziv = $r220[3];
                                                    $ikad_studij_id = $r220[4];
                                                    $ikad_studij_trajanje = $r220[5];
                                                    $ikad_ciklus = $r220[7];
                                                }
                                            }
                                        }
                                    }
                                    $prepisi_ocjena = "";
                                    if ($ikad_ciklus > 1 || $studij_ciklus > 1) {
                                        for ($i = 1; $i <= max($ikad_ciklus, $studij_ciklus); $i++) {
                                            $prepisi_ocjena .= "<br><a href=\"?sta=izvjestaj/index2&student={$osoba}&ciklus={$i}\">Samo {$i}. ciklus</a>";
                                        }
                                    }
                                    // Izvjestaji
                                    ?>
		<div style="float:left; margin-right:10px">
			<table width="100" border="1" cellspacing="0" cellpadding="0">
				<tr><td bgcolor="#777777" align="center">
					<font color="white"><b>IZVJEŠTAJI:</b></font>
				</td></tr>
				<tr><td align="center"><a href="?sta=izvjestaj/historija&student=<?php 
                                    echo $osoba;
                                    ?>
">
				<img src="images/32x32/izvjestaj.png" border="0"><br/>Historija</a></td></tr>
				<tr><td align="center"><a href="?sta=izvjestaj/index2&student=<?php 
                                    echo $osoba;
                                    ?>
">
				<img src="images/32x32/izvjestaj.png" border="0"><br/>Prepis ocjena</a> <?php 
                                    echo $prepisi_ocjena;
                                    ?>
</td></tr>
				<tr><td align="center"><a href="?sta=izvjestaj/progress&student=<?php 
                                    echo $osoba;
                                    ?>
&razdvoji_ispite=0">
				<img src="images/32x32/izvjestaj.png" border="0"><br/>Bodovi</a></td></tr>
				<tr><td align="center"><a href="?sta=izvjestaj/progress&student=<?php 
                                    echo $osoba;
                                    ?>
&razdvoji_ispite=1">
				<img src="images/32x32/izvjestaj.png" border="0"><br/>Bodovi + nepoloženi ispiti</a></td></tr>
			</table>
		</div>
		<?php 
                                    // Trenutno slusa studij
                                    $nova_ak_god = 0;
                                    ?>
		<p align="left">Trenutno (<b><?php 
                                    echo $naziv_ak_god;
                                    ?>
</b>) upisan/a na:<br/>
		<?php 
                                    if ($studij == "0") {
                                        ?>
			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Nije upisan/a niti u jedan semestar!</p>
			<?php 
                                        // Proglasavamo zadnju akademsku godinu koju je slusao za tekucu
                                        // a tekucu za novu
                                        $nova_ak_god = $id_ak_god;
                                        $naziv_nove_ak_god = $naziv_ak_god;
                                        if ($ikad_semestar != 0) {
                                            // Ako je covjek upisan u buducu godinu, onda je u toku upis
                                            if ($ikad_ak_god > $id_ak_god) {
                                                $nova_ak_god = $ikad_ak_god;
                                                $naziv_nove_ak_god = $ikad_ak_god_naziv;
                                                $semestar = $ikad_semestar - 1;
                                                // da se ne bi ispisivalo da drugi put sluša
                                            } else {
                                                $id_ak_god = $ikad_ak_god;
                                                $naziv_ak_god = $ikad_ak_god_naziv;
                                                $semestar = $ikad_semestar;
                                                if ($semestar % 2 != 0) {
                                                    $semestar++;
                                                }
                                                // Da ga ne bi pokušavalo upisati u parni semestar
                                            }
                                            // Zelimo da se provjeri ECTS:
                                            $studij = $ikad_studij;
                                            $studij_id = $ikad_studij_id;
                                            $studij_trajanje = $ikad_studij_trajanje;
                                        } else {
                                            // Nikada nije slušao ništa - ima li podataka o prijemnom ispitu?
                                            $q225 = myquery("select pt.akademska_godina, ag.naziv, s.id, s.naziv from prijemni_termin as pt, prijemni_prijava as pp, akademska_godina as ag, studij as s where pp.osoba={$osoba} and pp.prijemni_termin=pt.id and pt.akademska_godina=ag.id and pp.studij_prvi=s.id order by ag.id desc, pt.id desc limit 1");
                                            if (mysql_num_rows($q225) > 0) {
                                                $nova_ak_god = mysql_result($q225, 0, 0);
                                                $naziv_nove_ak_god = mysql_result($q225, 0, 1);
                                                $novi_studij = mysql_result($q225, 0, 3);
                                                $novi_studij_id = mysql_result($q225, 0, 2);
                                            }
                                        }
                                    } else {
                                        ?>
			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>&quot;<?php 
                                        echo $studij;
                                        ?>
&quot;</b>, <?php 
                                        echo $semestar;
                                        ?>
. semestar (<?php 
                                        echo $puta;
                                        ?>
. put) <?php 
                                        echo $nacin_studiranja;
                                        ?>
 (<a href="?sta=studentska/osobe&osoba=<?php 
                                        echo $osoba;
                                        ?>
&akcija=ispis&studij=<?php 
                                        echo $studij_id;
                                        ?>
&semestar=<?php 
                                        echo $semestar;
                                        ?>
&godina=<?php 
                                        echo $id_ak_god;
                                        ?>
">ispiši sa studija</a>)</p>
			<?php 
                                        $q230 = myquery("select id, naziv from akademska_godina where id={$id_ak_god}+1");
                                        if (mysql_num_rows($q230) > 0) {
                                            $nova_ak_god = mysql_result($q230, 0, 0);
                                            $naziv_nove_ak_god = mysql_result($q230, 0, 1);
                                        }
                                    }
                                    // UPIS U SLJEDEĆU AK. GODINU
                                    // Aktivni moduli
                                    $modul_uou = $modul_kolizija = 0;
                                    foreach ($registry as $r) {
                                        if ($r[0] == "student/ugovoroucenju") {
                                            $modul_uou = 1;
                                        }
                                        if ($r[0] == "student/kolizija") {
                                            $modul_kolizija = 1;
                                        }
                                    }
                                    if ($nova_ak_god != 0) {
                                        // Ne prikazuj podatke o upisu dok se ne kreira nova ak. godina
                                        ?>
		<p>Upis u akademsku <b><?php 
                                        echo $naziv_nove_ak_god;
                                        ?>
</b> godinu:<br />
		<?php 
                                        // Da li je vec upisan?
                                        $q235 = myquery("select s.naziv, ss.semestar, s.id from student_studij as ss, studij as s where ss.student={$osoba} and ss.studij=s.id and ss.akademska_godina={$nova_ak_god} order by ss.semestar desc");
                                        if (mysql_num_rows($q235) > 0) {
                                            $novi_studij = mysql_result($q235, 0, 0);
                                            $novi_semestar = mysql_result($q235, 0, 1);
                                            $novi_studij_id = mysql_result($q235, 0, 2);
                                            if ($novi_semestar <= $semestar && $novi_studij == $studij) {
                                                $nputa = $puta + 1;
                                            } else {
                                                $nputa = 1;
                                            }
                                            ?>
			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Student je upisan na studij: <b><?php 
                                            echo $novi_studij;
                                            ?>
</b>, <?php 
                                            echo $novi_semestar;
                                            ?>
. semestar (<?php 
                                            echo $nputa;
                                            ?>
. put). (<a href="?sta=studentska/osobe&osoba=<?php 
                                            echo $osoba;
                                            ?>
&akcija=ispis&studij=<?php 
                                            echo $novi_studij_id;
                                            ?>
&semestar=<?php 
                                            echo $novi_semestar;
                                            ?>
&godina=<?php 
                                            echo $nova_ak_god;
                                            ?>
">ispiši sa studija</a>)</p><?php 
                                        } else {
                                            // Ima li uslove za upis
                                            if ($semestar == 0 && $ikad_semestar == 0) {
                                                // Upis na prvu godinu
                                                ?>
			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Nemamo podataka da je ovaj student ikada bio upisan na fakultet.</p><?php 
                                                if ($novi_studij_id) {
                                                    // Podatak sa prijemnog
                                                    ?>
				<p><a href="?sta=studentska/osobe&osoba=<?php 
                                                    echo $osoba;
                                                    ?>
&akcija=upis&studij=<?php 
                                                    echo $novi_studij_id;
                                                    ?>
&semestar=1&godina=<?php 
                                                    echo $nova_ak_god;
                                                    ?>
">Upiši studenta na <?php 
                                                    echo $novi_studij;
                                                    ?>
, 1. semestar.</a></p>
				<?php 
                                                } else {
                                                    ?>
				<p><a href="?sta=studentska/osobe&osoba=<?php 
                                                    echo $osoba;
                                                    ?>
&akcija=upis&studij=<?php 
                                                    echo $novi_studij_id;
                                                    ?>
&semestar=1&godina=<?php 
                                                    echo $nova_ak_god;
                                                    ?>
">Upiši studenta na Prvu godinu studija, 1. semestar.</a></p>
				<?php 
                                                }
                                            } else {
                                                if ($studij == "0") {
                                                    if ($ikad_semestar % 2 == 0) {
                                                        $ikad_semestar--;
                                                    }
                                                    // Trenutno nije upisan na fakultet, ali upisacemo ga
                                                    ?>
			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="?sta=studentska/osobe&osoba=<?php 
                                                    echo $osoba;
                                                    ?>
&akcija=upis&studij=<?php 
                                                    echo $ikad_studij_id;
                                                    ?>
&semestar=<?php 
                                                    echo $ikad_semestar;
                                                    ?>
&godina=<?php 
                                                    echo $nova_ak_god;
                                                    ?>
">Ponovo upiši studenta na <?php 
                                                    echo $ikad_studij;
                                                    ?>
, <?php 
                                                    echo $ikad_semestar;
                                                    ?>
. semestar.</a></p>
			<?php 
                                                } else {
                                                    if ($semestar % 2 != 0) {
                                                        // S neparnog na parni ide automatski
                                                        ?>
			&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Student je stekao uslove za upis na &quot;<?php 
                                                        echo $studij;
                                                        ?>
&quot;, <?php 
                                                        echo $semestar + 1;
                                                        ?>
 semestar</p>
			<p><a href="?sta=studentska/osobe&osoba=<?php 
                                                        echo $osoba;
                                                        ?>
&akcija=upis&studij=<?php 
                                                        echo $studij_id;
                                                        ?>
&semestar=<?php 
                                                        echo $semestar + 1;
                                                        ?>
&godina=<?php 
                                                        echo $nova_ak_god;
                                                        ?>
">Upiši studenta na &quot;<?php 
                                                        echo $studij;
                                                        ?>
&quot;, <?php 
                                                        echo $semestar + 1;
                                                        ?>
 semestar.</a></p>
			<?php 
                                                    } else {
                                                        // Upis na neparni semestar - da li je student dao uslov?
                                                        $ima_uslov = 0;
                                                        // Tekst za ono što upisuje
                                                        if ($semestar == $studij_trajanje) {
                                                            $sta = "sljedeći ciklus studija";
                                                        } else {
                                                            $sta = "&quot;{$studij}&quot;, " . ($semestar + 1) . ". semestar";
                                                        }
                                                        // Pokusacemo odrediti uslov na osnovu polozenih predmeta...
                                                        // Od predmeta koje je slušao, koliko je pao?
                                                        $q250 = myquery("select distinct pk.predmet, p.ects, pk.semestar, pk.obavezan, p.naziv from ponudakursa as pk, student_predmet as sp, predmet as p where sp.student={$osoba} and sp.predmet=pk.id and pk.semestar<={$semestar} and pk.studij={$studij_id} and pk.predmet=p.id order by pk.semestar");
                                                        $ects_pao = $predmeti_pao = $izborni_pao = $nize_godine = $ects_polozio = 0;
                                                        while ($r250 = mysql_fetch_row($q250)) {
                                                            $q260 = myquery("select count(*) from konacna_ocjena where student={$osoba} and predmet={$r250['0']}");
                                                            if (mysql_result($q260, 0, 0) < 1) {
                                                                // Predmet se ne može prenijeti preko dvije godine
                                                                if ($r250[2] < $semestar - 1) {
                                                                    $nize_godine++;
                                                                }
                                                                if ($r250[3] == 1) {
                                                                    // Obavezni predmeti se ne smiju pasti!
                                                                    $ects_pao += $r250[1];
                                                                    $predmeti_pao++;
                                                                } else {
                                                                    $izborni_pao++;
                                                                    // Za izborne cemo uporediti sumu ECTSova kasnije
                                                                }
                                                            } else {
                                                                $ects_polozio += $r250[1];
                                                            }
                                                        }
                                                        // USLOV ZA UPIS
                                                        // Prema aktuelnom zakonu može se prenijeti tačno jedan predmet, bez obzira na ECTS
                                                        // No za sljedeći ciklus studija se ne može prenijeti ništa
                                                        if ($semestar == $studij_trajanje && $predmeti_pao == 0 && ($ects_pao + $ects_polozio) % 60 == 0) {
                                                            // Ako je student pao izborni predmet pa polozio drugi umjesto njega, vazice
                                                            // ($ects_pao+$ects_polozio)%60==0
                                                            // Zato sto ects_pao = obavezni predmeti tako da ostaju samo izborni predmeti
                                                            $ima_uslov = 1;
                                                        } else {
                                                            if ($semestar < $studij_trajanje && $predmeti_pao <= 1) {
                                                                // Provjeravamo broj nepolozenih izbornih predmeta i razliku ects-ova
                                                                if ($predmeti_pao == 0 && (60 - ($ects_pao + $ects_polozio) % 60 < 7 || ($ects_pao + $ects_polozio) % 60 == 0) && $nize_godine == 0) {
                                                                    // nema izbornog predmeta sa 7 ili više kredita
                                                                    $ima_uslov = 1;
                                                                } else {
                                                                    if ($predmeti_pao == 1 && ($ects_pao + $ects_polozio) % 60 == 0 && $nize_godine == 0) {
                                                                        $ima_uslov = 1;
                                                                    } else {
                                                                        if ($nize_godine > 0) {
                                                                            $niza_godina = ($semestar - 2) / 2;
                                                                            $objasnjenje = "nije položen predmet sa {$niza_godina}. godine";
                                                                        } else {
                                                                            if ($predmeti_pao == 1) {
                                                                                $objasnjenje = "nepoložen jedan obavezan i jedan ili više izborni predmet";
                                                                            } else {
                                                                                $objasnjenje = "nepoloženo dva ili više izbornih predmeta";
                                                                            }
                                                                            $objasnjenje .= ", nedostaje " . (60 - $ects_polozio % 60) . " ECTS kredita";
                                                                        }
                                                                    }
                                                                }
                                                            } else {
                                                                $objasnjenje = $predmeti_pao + $izborni_pao . " nepoloženih predmeta, nedostaje " . (60 - $ects_polozio % 60) . " ECTS kredita";
                                                            }
                                                        }
                                                        // Konačan ispis
                                                        if ($ima_uslov) {
                                                            ?>
				&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Student je stekao/la uslove za upis na <?php 
                                                            echo $sta;
                                                            ?>
</p>
				<p><a href="?sta=studentska/osobe&osoba=<?php 
                                                            echo $osoba;
                                                            ?>
&akcija=upis&studij=<?php 
                                                            echo $studij_id;
                                                            ?>
&semestar=<?php 
                                                            echo $semestar + 1;
                                                            ?>
&godina=<?php 
                                                            echo $nova_ak_god;
                                                            ?>
">Upiši studenta na <?php 
                                                            echo $sta;
                                                            ?>
.</a></p>
				<?php 
                                                        } else {
                                                            ?>
				&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Student <b>NIJE</b> stekao/la uslove za <?php 
                                                            echo $sta;
                                                            ?>
<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(<?php 
                                                            echo $objasnjenje;
                                                            ?>
)</p>
				<p><a href="?sta=studentska/osobe&osoba=<?php 
                                                            echo $osoba;
                                                            ?>
&akcija=upis&studij=<?php 
                                                            echo $studij_id;
                                                            ?>
&semestar=<?php 
                                                            echo $semestar - 1;
                                                            ?>
&godina=<?php 
                                                            echo $nova_ak_god;
                                                            ?>
">Ponovo upiši studenta na <?php 
                                                            echo $studij;
                                                            ?>
, <?php 
                                                            echo $semestar - 1;
                                                            ?>
. semestar (<?php 
                                                            echo $puta + 1;
                                                            ?>
. put).</a></p>
				<p><a href="?sta=studentska/osobe&osoba=<?php 
                                                            echo $osoba;
                                                            ?>
&akcija=upis&studij=<?php 
                                                            echo $studij_id;
                                                            ?>
&semestar=<?php 
                                                            echo $semestar + 1;
                                                            ?>
&godina=<?php 
                                                            echo $nova_ak_god;
                                                            ?>
">Upiši studenta na <?php 
                                                            echo $sta;
                                                            ?>
.</a></p>
				<?php 
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                        // if ($q235... else ... -- nije vec upisan nigdje
                                        // Ugovor o učenju
                                        if ($modul_uou == 1) {
                                            $q270 = myquery("select s.naziv, u.semestar from ugovoroucenju as u, studij as s where u.student={$osoba} and u.akademska_godina={$nova_ak_god} and u.studij=s.id order by u.semestar");
                                            if (mysql_num_rows($q270) > 0) {
                                                $nazivstudijauu = $semestaruu = "";
                                                while ($r270 = mysql_fetch_row($q270)) {
                                                    $nazivstudijauu = $r270[0];
                                                    $semestaruu .= $r270[1] . ". ";
                                                }
                                                ?>
					<p>Student je popunio/la <b>Ugovor o učenju</b> za <?php 
                                                echo $nazivstudijauu;
                                                ?>
, <?php 
                                                echo $semestaruu;
                                                ?>
semestar</p>
					<?php 
                                            } else {
                                                ?>
					<p>Student NIJE popunio/la <b>Ugovor o učenju</b> za sljedeću akademsku godinu.</p>
					<?php 
                                            }
                                        }
                                    }
                                    // if (mysql_num_rows($q230  -- da li postoji ak. god. iza aktuelne?
                                    // Kolizija
                                    if ($modul_kolizija == 1) {
                                        $q280 = myquery("select count(*) from kolizija where student={$osoba} and akademska_godina={$nova_ak_god}");
                                        $ima_koliziju = 0;
                                        if (mysql_result($q280, 0, 0) > 0) {
                                            $ima_koliziju = $nova_ak_god;
                                        } else {
                                            // Probavamo i za trenutnu
                                            $q280 = myquery("select count(*) from kolizija where student={$osoba} and akademska_godina={$id_ak_god}");
                                            if (mysql_result($q280, 0, 0) > 0) {
                                                $ima_koliziju = $id_ak_god;
                                            }
                                        }
                                        if ($ima_koliziju) {
                                            // provjeravamo septembar
                                            $kolizija_ok = true;
                                            $qc = myquery("select distinct predmet from septembar where student={$osoba} and akademska_godina={$ima_koliziju}");
                                            while ($rc = mysql_fetch_row($qc)) {
                                                $predmet = $rc[0];
                                                // Da li ima ocjenu?
                                                $qd = myquery("select count(*) from konacna_ocjena where student={$osoba} and predmet={$predmet} and ocjena>=6");
                                                if (mysql_result($qd, 0, 0) > 0) {
                                                    continue;
                                                }
                                                // Da li ima septembarskog roka?
                                                $qe = myquery("select i.id, k.prolaz from ispit as i, komponenta as k where i.akademska_godina=" . ($ima_koliziju - 1) . " and (MONTH(i.datum)=8 or MONTH(i.datum)=9) and (select count(*) from ispitocjene as io where io.ispit=i.id)>0 and i.predmet={$predmet} and i.komponenta=k.id and k.naziv NOT LIKE 'Usmeni%'");
                                                if (mysql_num_rows($qe) == 0) {
                                                    continue;
                                                }
                                                // nema
                                                $polozio = false;
                                                $septembar_razlog = "";
                                                while ($re = mysql_fetch_row($qe)) {
                                                    $qf = myquery("select ocjena from ispitocjene where ispit={$re['0']} and student={$osoba}");
                                                    if (mysql_num_rows($qf) > 0 && mysql_result($qf, 0, 0) >= $re[1]) {
                                                        $polozio = true;
                                                        break;
                                                    }
                                                }
                                                if (!$polozio) {
                                                    $kolizija_ok = false;
                                                    $qg = myquery("select naziv from predmet where id={$predmet}");
                                                    $paopredmet = mysql_result($qg, 0, 0);
                                                    break;
                                                }
                                            }
                                            if ($kolizija_ok) {
                                                ?>
					<p>Student je popunio/la <b>Zahtjev za koliziju</b>. <a href="?sta=studentska/osobe&osoba=<?php 
                                                echo $osoba;
                                                ?>
&akcija=kolizija&godina=<?php 
                                                echo $ima_koliziju;
                                                ?>
">Kliknite ovdje da potvrdite upis na kolizione predmete.</a></p>
					<?php 
                                            } else {
                                                ?>
					<p>Student je popunio/la <b>Zahtjev za koliziju</b> koji je neispravan (nije položio/la <?php 
                                                echo $paopredmet;
                                                ?>
). Potrebno ga je ponovo popuniti.</p>
					<?php 
                                            }
                                        }
                                    }
                                    // Upis studenta na pojedinačne predmete
                                    ?>
		<p><a href="?sta=studentska/osobe&osoba=<?php 
                                    echo $osoba;
                                    ?>
&akcija=predmeti">Manuelni upis studenta na predmete / ispis sa predmeta.</a></p>
		<?php 
                                    print "\n<div style=\"clear:both\"></div>\n";
                                }
                                // STUDENT
                                // NASTAVNIK
                                // Akademska godina se promijenila :( CLEANUP
                                $id_ak_god = $orig_iag;
                                $q399 = myquery("select naziv from akademska_godina where id={$id_ak_god}");
                                $naziv_ak_god = mysql_result($q399, 0, 0);
                                if ($korisnik_nastavnik) {
                                    ?>
		<br/><hr>
		<h3>NASTAVNIK</h3>
		<p><b>Podaci o izboru</b></p>
		<?php 
                                    // Izbori
                                    $q400 = myquery("select z.naziv, UNIX_TIMESTAMP(i.datum_izbora), UNIX_TIMESTAMP(i.datum_isteka), i.oblast, i.podoblast, i.dopunski, i.druga_institucija from izbor as i, zvanje as z WHERE i.osoba={$osoba} and i.zvanje=z.id order by i.datum_isteka DESC, i.datum_izbora DESC");
                                    if (mysql_num_rows($q400) == 0) {
                                        print "<p>Nema podataka o izboru.</p>\n";
                                    } else {
                                        $datum_izbora = date("d. m. Y", mysql_result($q400, 0, 1));
                                        if (mysql_result($q400, 0, 1) == 0) {
                                            $datum_izbora = "<font color=\"red\">(nepoznato)</font>";
                                        }
                                        $datum_isteka = date("d. m. Y", mysql_result($q400, 0, 2));
                                        if (mysql_result($q400, 0, 2) == 0) {
                                            $datum_isteka = "Neodređeno";
                                        }
                                        $oblast = mysql_result($q400, 0, 3);
                                        if ($oblast < 1) {
                                            $oblast = "<font color=\"red\">(nepoznato)</font>";
                                        } else {
                                            $q410 = myquery("select naziv from oblast where id={$oblast}");
                                            if (mysql_num_rows($q410) < 1) {
                                                $oblast = "<font color=\"red\">GREŠKA</font>";
                                            } else {
                                                $oblast = mysql_result($q410, 0, 0);
                                            }
                                        }
                                        $podoblast = mysql_result($q400, 0, 4);
                                        if ($podoblast < 1) {
                                            $podoblast = "<font color=\"red\">(nepoznato)</font>";
                                        } else {
                                            $q420 = myquery("select naziv from podoblast where id={$podoblast}");
                                            if (mysql_num_rows($q420) < 1) {
                                                $podoblast = "<font color=\"red\">GREŠKA</font>";
                                            } else {
                                                $podoblast = mysql_result($q420, 0, 0);
                                            }
                                        }
                                        if (mysql_result($q400, 0, 5) == 0) {
                                            $radniodnos = "Stalni";
                                        } else {
                                            $radniodnos = "Dopunski";
                                        }
                                        ?>
			<table border="0">
			<tr><td>Zvanje:</td><td><?php 
                                        echo mysql_result($q400, 0, 0);
                                        ?>
</td></tr>
			<tr><td>Datum izbora:</td><td><?php 
                                        echo $datum_izbora;
                                        ?>
</td></tr>
			<tr><td>Datum isteka:</td><td><?php 
                                        echo $datum_isteka;
                                        ?>
</td></tr>
			<tr><td>Oblast:</td><td><?php 
                                        echo $oblast;
                                        ?>
</td></tr>
			<tr><td>Podoblast:</td><td><?php 
                                        echo $podoblast;
                                        ?>
</td></tr>
			<tr><td>Radni odnos:</td><td><?php 
                                        echo $radniodnos;
                                        ?>
</td></tr>
			<?php 
                                        if (mysql_result($q400, 0, 6) == 1) {
                                            print "<tr><td colspan=\"2\">Biran/a na drugoj VŠO</td></tr>\n";
                                        }
                                        ?>
			</table>
			<?php 
                                    }
                                    ?>
		<p><a href="?sta=studentska/osobe&osoba=<?php 
                                    echo $osoba;
                                    ?>
&akcija=izbori">Izmijenite podatke o izboru ili pogledajte historijske podatke</a></p>
		<?php 
                                    // Angažman
                                    ?>
		<p><b>Angažman u nastavi (akademska godina <?php 
                                    echo $naziv_ak_god;
                                    ?>
)</b></p>
		<ul>
		<?php 
                                    $q430 = myquery("select p.id, p.naziv, angs.naziv, i.kratki_naziv from angazman as a, angazman_status as angs, predmet as p, institucija as i where a.osoba={$osoba} and a.akademska_godina={$id_ak_god} and a.predmet=p.id and a.angazman_status=angs.id and p.institucija=i.id order by angs.id, p.naziv");
                                    if (mysql_num_rows($q430) < 1) {
                                        print "<li>Uposlenik nije angažovan niti na jednom predmetu u ovoj godini.</li>\n";
                                    }
                                    while ($r430 = mysql_fetch_row($q430)) {
                                        print "<li><a href=\"?sta=studentska/predmeti&akcija=edit&predmet={$r430['0']}&ag={$id_ak_god}\">{$r430['1']} ({$r430['3']})</a> - {$r430['2']}</li>\n";
                                    }
                                    // Angažman
                                    ?>
</ul>
		<p>Angažuj nastavnika na predmetu:
		<?php 
                                    echo genform("POST");
                                    ?>
		<input type="hidden" name="subakcija" value="angazuj">
		<select name="predmet" class="default"><?php 
                                    $q190 = myquery("select p.id, p.naziv, i.kratki_naziv from predmet as p, ponudakursa as pk, institucija as i where pk.predmet=p.id and pk.akademska_godina={$id_ak_god} and p.institucija=i.id group by p.id order by p.naziv");
                                    while ($r190 = mysql_fetch_row($q190)) {
                                        print "<option value=\"{$r190['0']}\">{$r190['1']} ({$r190['2']})</a>\n";
                                    }
                                    ?>
</select><br/>
		<?php 
                                    echo db_dropdown("angazman_status");
                                    ?>
		<?php 
                                    echo db_dropdown("akademska_godina", $id_ak_god);
                                    ?>
		<input type="submit" value=" Dodaj "></form></p>
		<?php 
                                    // Prava pristupa
                                    ?>
		<p><b>Prava pristupa (akademska godina <?php 
                                    echo $naziv_ak_god;
                                    ?>
)</b></p>
		<ul>
		<?php 
                                    $q180 = myquery("select p.id, p.naziv, np.nivo_pristupa, i.kratki_naziv from nastavnik_predmet as np, predmet as p, institucija as i where np.nastavnik={$osoba} and np.predmet=p.id and np.akademska_godina={$id_ak_god} and p.institucija=i.id order by np.nivo_pristupa, p.naziv");
                                    // FIXME: moze li se ovdje izbaciti tabela ponudakursa? studij ili institucija?
                                    if (mysql_num_rows($q180) < 1) {
                                        print "<li>Nijedan</li>\n";
                                    }
                                    while ($r180 = mysql_fetch_row($q180)) {
                                        print "<li><a href=\"?sta=studentska/predmeti&akcija=edit&predmet={$r180['0']}&ag={$id_ak_god}\">{$r180['1']} ({$r180['3']})</a>";
                                        if ($r180[2] == "nastavnik") {
                                            print " (Nastavnik)";
                                        } else {
                                            if ($r180[2] == "super_asistent") {
                                                print " (Super asistent)";
                                            }
                                        }
                                        print "</li>\n";
                                    }
                                    ?>
</ul>
		<p>Za prava pristupa na prethodnim akademskim godinama, koristite pretragu na kartici &quot;Predmeti&quot;<br/></p>
		<?php 
                                    // Dodjela prava pristupa
                                    ?>
<p>Dodijeli prava za predmet:
		<?php 
                                    echo genform("POST");
                                    ?>
		<input type="hidden" name="subakcija" value="daj_prava">
		<select name="predmet" class="default"><?php 
                                    $q190 = myquery("select p.id, p.naziv, i.kratki_naziv from predmet as p, ponudakursa as pk, institucija as i where pk.predmet=p.id and pk.akademska_godina={$id_ak_god} and p.institucija=i.id group by p.id order by p.naziv");
                                    while ($r190 = mysql_fetch_row($q190)) {
                                        print "<option value=\"{$r190['0']}\">{$r190['1']} ({$r190['2']})</a>\n";
                                    }
                                    ?>
</select>&nbsp;
		<input type="submit" value=" Dodaj "></form></p>
		<?php 
                                }
                                // PRIJEMNI
                                $q600 = myquery("select prijemni_termin, broj_dosjea, nacin_studiranja, studij_prvi, studij_drugi, studij_treci, studij_cetvrti, izasao, rezultat from prijemni_prijava where osoba={$osoba}");
                                if (mysql_num_rows($q600) > 0) {
                                    ?>
		<br/><hr>
		<h3>KANDIDAT NA PRIJEMNOM ISPITU</h3>
		<?php 
                                    while ($r600 = mysql_fetch_row($q600)) {
                                        $q610 = myquery("select ag.id, ag.naziv, UNIX_TIMESTAMP(pt.datum), pt.ciklus_studija from prijemni_termin as pt, akademska_godina as ag where pt.id={$r600['0']} and pt.akademska_godina=ag.id");
                                        ?>
			<b>Za akademsku <?php 
                                        echo mysql_result($q610, 0, 1);
                                        ?>
 godinu (<?php 
                                        echo mysql_result($q610, 0, 3);
                                        ?>
. ciklus studija), održan <?php 
                                        echo date("d. m. Y", mysql_result($q610, 0, 2));
                                        ?>
</b>
			<ul><li><?php 
                                        if ($r600[7] > 0) {
                                            print "{$r600['8']} bodova";
                                        } else {
                                            print "(nije izašao/la)";
                                        }
                                        ?>
</li>
			<li>Broj dosjea: <?php 
                                        echo $r600[1];
                                        ?>
, <?php 
                                        $q615 = myquery("select naziv from nacin_studiranja where id={$r600['2']}");
                                        if (mysql_num_rows($q615) > 0) {
                                            print mysql_result($q615, 0, 0);
                                        } else {
                                            print "nepoznato";
                                        }
                                        for ($i = 3; $i <= 6; $i++) {
                                            if ($r600[$i] > 0) {
                                                $q620 = myquery("select kratkinaziv from studij where id=" . $r600[$i]);
                                                print ", " . mysql_result($q620, 0, 0);
                                            }
                                        }
                                        ?>
</li>
			<?php 
                                        // Link na upis prikazujemo samo za ovogodišnji prijemni
                                        $godina_prijemnog = mysql_result($q610, 0, 0);
                                        //			$q630 = myquery("select id from akademska_godina where aktuelna=1");
                                        //			$nova_ak_god = mysql_result($q630,0,0)+1;
                                        //			if ($godina_prijemnog==$nova_ak_god) {
                                        // Moguće je da se asistent upisuje na 3. ciklus pa je $korisnik_nastavnik==true
                                        if (!$korisnik_student) {
                                            ?>
				<li><a href="?sta=studentska/osobe&osoba=<?php 
                                            echo $osoba;
                                            ?>
&akcija=upis&studij=<?php 
                                            echo $r600[3];
                                            ?>
&semestar=1&godina=<?php 
                                            echo $godina_prijemnog;
                                            ?>
">Upiši kandidata na <?php 
                                            $q630 = myquery("select naziv from studij where id={$r600['3']}");
                                            if (mysql_num_rows($q630) > 0) {
                                                print "&quot;" . mysql_result($q630, 0, 0) . "&quot;";
                                            } else {
                                                print "prvu godinu studija";
                                            }
                                            ?>
, 1. semestar, u akademskoj <?php 
                                            echo mysql_result($q610, 0, 1);
                                            ?>
 godini</a></li>
			<?php 
                                        }
                                        ?>
			</ul><?php 
                                    }
                                    $q640 = myquery("select ss.naziv, us.opci_uspjeh, us.kljucni_predmeti, us.dodatni_bodovi, us.ucenik_generacije from srednja_skola as ss, uspjeh_u_srednjoj as us where us.srednja_skola=ss.id and us.osoba={$osoba}");
                                    if (mysql_num_rows($q640) > 0) {
                                        ?>
			<b>Uspjeh u srednjoj školi:</b>
			<ul>
			<li>Škola: <?php 
                                        echo mysql_result($q640, 0, 0);
                                        ?>
</li>
			<li>Opći uspjeh: <?php 
                                        echo mysql_result($q640, 0, 1);
                                        ?>
. Ključni predmeti: <?php 
                                        echo mysql_result($q640, 0, 2);
                                        ?>
. Dodatni bodovi: <?php 
                                        echo mysql_result($q640, 0, 3);
                                        ?>
. <?php 
                                        if (mysql_result($q640, 0, 4) > 0) {
                                            print "Učenik generacije.";
                                        }
                                        ?>
</li>
			</ul>
			<?php 
                                    }
                                }
                                ?>
</td></tr></table></center><?php 
                                // Vanjska tabela
                            } else {
                                $src = my_escape($_REQUEST["search"]);
                                $limit = 20;
                                $offset = intval($_REQUEST["offset"]);
                                // Naucni stepeni
                                $naucni_stepen = array();
                                $q99 = myquery("select id, titula from naucni_stepen");
                                while ($r99 = mysql_fetch_row($q99)) {
                                    $naucni_stepen[$r99[0]] = $r99[1];
                                }
                                ?>
	<p><h3>Studentska služba - Studenti i nastavnici</h3></p>

	<table width="500" border="0"><tr><td align="left">
		<p><b>Pretraži osobe:</b><br/>
		Unesite dio imena i prezimena ili broj indeksa<br/>
		<?php 
                                echo genform("GET");
                                ?>
		<input type="hidden" name="offset" value="0"> <?php 
                                /*resetujem offset*/
                                ?>
		<input type="text" size="50" name="search" value="<?php 
                                if ($src != "sve") {
                                    print $src;
                                }
                                ?>
"> <input type="Submit" value=" Pretraži "></form>
		<a href="<?php 
                                echo genuri();
                                ?>
&search=sve">Prikaži sve osobe</a><br/><br/>
	<?php 
                                if ($src) {
                                    $rezultata = 0;
                                    if ($src == "sve") {
                                        $q100 = myquery("select count(*) from osoba");
                                        $q101 = myquery("select id, ime, prezime, brindexa, naucni_stepen from osoba order by prezime,ime limit {$offset},{$limit}");
                                        $rezultata = mysql_result($q100, 0, 0);
                                    } else {
                                        $src = preg_replace("/\\s+/", " ", $src);
                                        $src = trim($src);
                                        $dijelovi = explode(" ", $src);
                                        $query = "";
                                        // Probavamo traziti ime i prezime istovremeno
                                        if (count($dijelovi) == 2) {
                                            $q100 = myquery("select count(*) from osoba where ime like '%{$dijelovi['0']}%' and prezime like '%{$dijelovi['1']}%'");
                                            $q101 = myquery("select id,ime,prezime,brindexa,naucni_stepen from osoba where ime like '%{$dijelovi['0']}%' and prezime like '%{$dijelovi['1']}%' order by prezime,ime limit {$offset},{$limit}");
                                            if (mysql_result($q100, 0, 0) == 0) {
                                                $q100 = myquery("select count(*) from osoba where ime like '%{$dijelovi['1']}%' and prezime like '%{$dijelovi['0']}%'");
                                                $q101 = myquery("select id,ime,prezime,brindexa,naucni_stepen from osoba where ime like '%{$dijelovi['1']}%' and prezime like '%{$dijelovi['0']}%' order by prezime,ime limit {$offset},{$limit}");
                                            }
                                            $rezultata = mysql_result($q100, 0, 0);
                                        }
                                        // Nismo nasli ime i prezime, pokusavamo bilo koji dio
                                        if ($rezultata == 0) {
                                            foreach ($dijelovi as $dio) {
                                                if ($query != "") {
                                                    $query .= "or ";
                                                }
                                                $query .= "ime like '%{$dio}%' or prezime like '%{$dio}%' or brindexa like '%{$dio}%' ";
                                                if (intval($dio) > 0) {
                                                    $query .= "or id=" . intval($dio) . " ";
                                                }
                                            }
                                            $q100 = myquery("select count(*) from osoba where ({$query})");
                                            $q101 = myquery("select id,ime,prezime,brindexa,naucni_stepen from osoba where ({$query}) order by prezime,ime limit {$offset},{$limit}");
                                            $rezultata = mysql_result($q100, 0, 0);
                                        }
                                        // Nismo nasli nista, pokusavamo login
                                        if ($rezultata == 0) {
                                            $query = "";
                                            foreach ($dijelovi as $dio) {
                                                if ($query != "") {
                                                    $query .= "or ";
                                                }
                                                $query .= "a.login like '%{$dio}%' ";
                                            }
                                            $q100 = myquery("select count(*) from osoba as o, auth as a where ({$query}) and a.id=o.id");
                                            $q101 = myquery("select o.id,o.ime,o.prezime,o.brindexa,o.naucni_stepen from osoba as o, auth as a where ({$query}) and a.id=o.id order by o.prezime,o.ime limit {$offset},{$limit}");
                                            $rezultata = mysql_result($q100, 0, 0);
                                        }
                                    }
                                    if ($rezultata == 0) {
                                        print "Nema rezultata!";
                                    } else {
                                        if ($rezultata > $limit) {
                                            print "Prikazujem rezultate " . ($offset + 1) . "-" . ($offset + 20) . " od {$rezultata}. Stranica: ";
                                            for ($i = 0; $i < $rezultata; $i += $limit) {
                                                $br = intval($i / $limit) + 1;
                                                if ($i == $offset) {
                                                    print "<b>{$br}</b> ";
                                                } else {
                                                    print "<a href=\"" . genuri() . "&offset={$i}\">{$br}</a> ";
                                                }
                                            }
                                            print "<br/>";
                                        }
                                    }
                                    //		else
                                    //			print "$rezultata rezultata:";
                                    print "<br/>";
                                    print '<table width="100%" border="0">';
                                    $i = $offset + 1;
                                    while ($r101 = mysql_fetch_row($q101)) {
                                        print "<tr ";
                                        if ($i % 2 == 0) {
                                            print "bgcolor=\"#EEEEEE\"";
                                        }
                                        print "><td>{$i}. {$r101['2']} ";
                                        if ($r101[4] > 0) {
                                            print $naucni_stepen[$r101[4]] . " ";
                                        }
                                        print $r101[1];
                                        if (intval($r101[3]) > 0) {
                                            print " ({$r101['3']})";
                                        }
                                        print "</td><td><a href=\"" . genuri() . "&akcija=edit&osoba={$r101['0']}\">Detalji</a></td></tr>";
                                        $i++;
                                    }
                                    print "</table>";
                                }
                                ?>
		<br/>
		<?php 
                                echo genform("POST");
                                ?>
		<input type="hidden" name="akcija" value="novi">
		<b>Unesite novu osobu:</b><br/>
		<table border="0" cellspacing="0" cellpadding="0" width="100%">
		<tr><td>Ime<?php 
                                if ($conf_system_auth == "ldap") {
                                    print " ili login";
                                }
                                ?>
:</td><td>Prezime:</td><td>&nbsp;</td></tr>
		<tr>
			<td><input type="text" name="ime" size="15"></td>
			<td><input type="text" name="prezime" size="15"></td>
			<td><input type="submit" value=" Dodaj "></td>
		</tr></table>
		</form>
	<?php 
                                ?>

	</td></tr></table>
	<?php 
                            }
                        }
                    }
                }
            }
        }
    }
    ?>
</td></tr></table></center>
<?php 
}
Exemplo n.º 23
0
function zamgerlog2($tekst, $objekat1 = 0, $objekat2 = 0, $objekat3 = 0, $blob = "")
{
    global $userid, $sta;
    $tekst = my_escape($tekst);
    $blob = my_escape($blob);
    if ($sta == "logout") {
        $sta = "";
    }
    // Parametri objekat* moraju biti tipa int, pratimo sve drugačije pozive kako bismo ih mogli popraviti
    if ($objekat1 !== intval($objekat1) || $objekat2 !== intval($objekat2) || $objekat3 !== intval($objekat3)) {
        $q5 = myquery("INSERT INTO log2 SELECT 0,NOW(), " . intval($userid) . ", m.id, d.id, 0, 0, 0, '" . my_escape($_SERVER['REMOTE_ADDR']) . "' FROM log2_modul AS m, log2_dogadjaj AS d WHERE m.naziv='{$sta}' AND d.opis='poziv zamgerlog2 funkcije nije ispravan'");
        // Dodajemo blob
        $id = mysql_insert_id();
        $tekst_bloba = "";
        if ($objekat1 !== intval($objekat1)) {
            $tekst_bloba .= "objekat1: {$objekat1} ";
        }
        if ($objekat2 !== intval($objekat2)) {
            $tekst_bloba .= "objekat2: {$objekat2} ";
        }
        if ($objekat3 !== intval($objekat3)) {
            $tekst_bloba .= "objekat3: {$objekat3} ";
        }
        $q7 = myquery("INSERT INTO log2_blob SET log2={$id}, tekst='{$tekst_bloba}'");
        $objekat1 = intval($objekat1);
        $objekat2 = intval($objekat2);
        $objekat3 = intval($objekat3);
    }
    // $userid izgleda nekada može biti i prazan string?
    $q5 = myquery("INSERT INTO log2 SELECT 0,NOW(), " . intval($userid) . ", m.id, d.id, {$objekat1}, {$objekat2}, {$objekat3}, '" . my_escape($_SERVER['REMOTE_ADDR']) . "' FROM log2_modul AS m, log2_dogadjaj AS d WHERE m.naziv='{$sta}' AND d.opis='{$tekst}'");
    if (mysql_affected_rows() == 0) {
        // Nije ništa ubačeno, vjerovatno fale polja u tabelama
        $q10 = myquery("SELECT COUNT(*) FROM log2_modul WHERE naziv='{$sta}'");
        if (mysql_result($q10, 0, 0) == 0) {
            // U ovim slučajevima će se pozvati zamgerlog2 sa invalidnim modulom
            if ($tekst == "login" || $tekst == "sesija istekla" || $tekst == "nepoznat korisnik") {
                $sta == "";
            } else {
                $q20 = myquery("INSERT INTO log2_modul SET naziv='{$sta}'");
            }
        }
        $q30 = myquery("SELECT COUNT(*) FROM log2_dogadjaj WHERE opis='{$tekst}'");
        if (mysql_result($q30, 0, 0) == 0) {
            // Neka admin manuelno u bazi definiše ako je događaj različitog nivoa od 2
            $q40 = myquery("INSERT INTO log2_dogadjaj SET opis='{$tekst}', nivo=2");
        }
        $q50 = myquery("INSERT INTO log2 SELECT 0,NOW(), " . intval($userid) . ", m.id, d.id, {$objekat1}, {$objekat2}, {$objekat3}, '" . my_escape($_SERVER['REMOTE_ADDR']) . "' FROM log2_modul AS m, log2_dogadjaj AS d WHERE m.naziv='{$sta}' AND d.opis='{$tekst}'");
        // Ako sada nije uspjelo ubacivanje, nije nas briga :)
    }
    if ($blob !== "") {
        // Dodajemo blob
        $id = mysql_insert_id();
        $q60 = myquery("INSERT INTO log2_blob SET log2={$id}, tekst='{$blob}'");
    }
}
Exemplo n.º 24
0
    $mmentorstvo = intval($_REQUEST['mmentorstvo']);
    myquery("INSERT INTO hr_mentorstvo (osoba ,datum ,ime_kandidata ,naziv_teme ,fakultet,vrsta_mentora)VALUES ('{$osoba}',  FROM_UNIXTIME('{$datum}'),  '{$ime_kandidata}',  '{$naziv_teme}',  {$mfakultet},{$mmentorstvo})");
}
if (intval($_REQUEST['save']) == 5) {
    // Publikacije
    $datum = strtotime(my_escape($_REQUEST['datum_publikacije']));
    $naziv = my_escape($_REQUEST['naziv_publikacije']);
    $casopis = my_escape($_REQUEST['naziv_ci']);
    $fk_tip_publikacije = intval($_REQUEST['vrsta_publikacije']);
    myquery("INSERT INTO  hr_publikacija (osoba,datum ,naziv ,casopis ,tip_publikacije) VALUES ('{$osoba}',  FROM_UNIXTIME('{$datum}'),  '{$naziv}',  '{$casopis}',  {$fk_tip_publikacije})");
}
if (intval($_REQUEST['save']) == 6) {
    // Nagrade
    $datum = strtotime(my_escape($_REQUEST['datum_nagrade']));
    $naziv = my_escape($_REQUEST['naziv_nagrade']);
    $opis = my_escape($_REQUEST['opis_nagrade']);
    myquery("INSERT INTO `hr_nagrade_priznanja` (`osoba`, `datum`, `naziv`, `opis`) VALUES ('{$osoba}',  FROM_UNIXTIME('{$datum}'),  '{$naziv}',  '{$opis}')");
}
if (intval($_REQUEST['save']) == 7) {
    // Jezik
    $jezik = intval($_REQUEST['jezik']);
    $razumjevanje = intval($_REQUEST['razumjevanje']);
    $govor = intval($_REQUEST['govor']);
    $pisanje = intval($_REQUEST['pisanje']);
    myquery("INSERT INTO `hr_kompetencije` (`osoba`, `jezik`, `razumjevanje`, `govor`, pisanje) VALUES ('{$osoba}', {$jezik}, {$razumjevanje},{$govor}, {$pisanje} )");
}
?>

<link rel="stylesheet" href="css/libs/hr.css" type="text/css" media="screen" />
<link rel="stylesheet" href="css/libs/ui.all.css" type="text/css" media="screen" />
Exemplo n.º 25
0
 protected function output_container($pp, $level, &$var)
 {
     parent::output_container($pp, $level + 1, $var);
     if ($this->issued) {
         pretty_print("<dcterms:issued>" . $this->issued . "</dcterms:issued>", $pp, $level + 1, $var);
     }
     if ($this->publisher) {
         pretty_print("<dcterms:publisher>" . my_escape($this->publisher) . "</dcterms:publisher>", $pp, $level + 1, $var);
     }
     foreach ($this->categories as &$category) {
         $str = "<category term='" . my_escape($category["term"]) . "'";
         if ($category["scheme"]) {
             $str .= " scheme='" . my_escape($category["scheme"]) . "'";
         }
         if ($category["label"]) {
             $str .= " label='" . my_escape($category["label"]) . "'";
         }
         $str .= "/>";
         pretty_print($str, $pp, $level + 1, $var);
     }
     unset($category);
     foreach ($this->subjects as &$subject) {
         if ($subject["type"]) {
             pretty_print("<dcterms:subject xsi:type='" . $subject["type"] . "'>" . my_escape($subject["subject"]) . "</dcterms:subject>", $pp, $level + 1, $var);
         } else {
             pretty_print("<dcterms:subject>" . my_escape($subject["subject"]) . "</dcterms:subject>", $pp, $level + 1, $var);
         }
     }
     unset($subject);
     foreach ($this->summaries as &$summary) {
         pretty_print("<summary type='" . $summary["type"] . "'>" . my_escape($summary["summary"]) . "</summary>", $pp, $level + 1, $var);
     }
     unset($summary);
 }
Exemplo n.º 26
0
    ?>
		      <tr >
		        <td ><?php 
    echo my_escape($dat[0]);
    ?>
</td>
		        <td ><?php 
    echo my_escape($r420['naziv_usavrsavanja']);
    ?>
</td>
		        <td><?php 
    echo my_escape($r420['obrazovna_institucija']);
    ?>
</td>
		        <td ><?php 
    echo my_escape($r420['kvalifikacija']);
    ?>
</td>
		        <td style="text-align:center;" ><a href="#<?php 
    echo intval($r420['id']);
    ?>
"><img src="images/16x16/brisanje.png" /></a></td>
		      </tr>
	    <?php 
}
?>

	</table>
	<p>&nbsp;</p>
        <table border="0" width="600">
	      <tr>
Exemplo n.º 27
0
	    <?php 
$q420 = myquery("select * from hr_nagrade_priznanja where osoba={$userid}");
while ($r420 = mysql_fetch_assoc($q420)) {
    $dat = explode(" ", $r420['datum']);
    ?>
		      <tr >
		        <td ><?php 
    echo my_escape($dat[0]);
    ?>
</td>
		        <td ><?php 
    echo my_escape($r420['naziv']);
    ?>
</td>
		        <td><?php 
    echo my_escape($r420['opis']);
    ?>
</td>
		        <td style="text-align:center;" ><a href="#<?php 
    echo intval($r420['id']);
    ?>
"><img src="images/16x16/brisanje.png" /></a></td>
		      </tr>
	    <?php 
}
?>

	      </table>
	     
	     
    </div>
Exemplo n.º 28
0
function _izmijeni_profil($student, $predmet)
{
    $ime = my_escape($_POST['ime']);
    $prezime = my_escape($_POST['prezime']);
    $brind = my_escape($_POST['brind']);
    if ($brind == 0) {
        // Obsolete?
        zamgerlog("broj indexa nije broj ({$brind})", 3);
        niceerror("Broj indexa mora biti BROJ :)");
        return;
    }
    $grupa = intval($_POST['grupa']);
    $q200 = myquery("select count(*) from labgrupa where id={$grupa} and predmet={$predmet}");
    if (mysql_result($q200, 0, 0) < 1) {
        zamgerlog("nepoznata grupa ({$grupa}) ili nije na predmetu pp{$predmet}", 3);
        niceerror("Nepoznata grupa.");
        return;
    }
    $q210 = myquery("update osoba set ime='{$ime}', prezime='{$prezime}', brindexa='{$brind}' where id={$student}");
    // Update grupe - prvo obrisati staru pa ubaciti novu
    $q220 = myquery("select sl.labgrupa from student_labgrupa as sl,labgrupa where sl.student={$student} and sl.labgrupa=labgrupa.id and labgrupa.predmet={$predmet} and labgrupa.virtualna=0");
    $vec_upisan_u_grupu = 0;
    while ($r220 = mysql_fetch_row($q220)) {
        if ($r220[0] == $grupa) {
            $vec_upisan_u_grupu = 1;
        } else {
            $q230 = myquery("delete from student_labgrupa where student={$student} and labgrupa={$r220['0']}");
            // Brisanje prisustva za staru grupu
            $q235 = myquery("delete from prisustvo where student={$student} and cas=ANY(select id from cas where labgrupa={$r220['0']})");
        }
    }
    if ($vec_upisan_u_grupu == 0) {
        $q240 = myquery("insert into student_labgrupa set student={$student}, labgrupa={$grupa}");
        // Update komponente za prisustvo
        $q250 = myquery("select tpk.komponenta from tippredmeta_komponenta as tpk, ponudakursa as pk, komponenta as k, akademska_godina_predmet as agp where pk.id={$predmet} and pk.predmet=agp.predmet and agp.akademska_godina={$ag} and agp.tippredmeta=tpk.tippredmeta and tpk.komponenta=k.id and k.tipkomponente=3");
        // tipkomponente 3 = prisustvo
        // Ovo za sada ne radi jer update_komponente trazi ponudukursa sto mi ovdje ne mozemo znati
        /*		while ($r250 = mysql_fetch_row($q250))
        			update_komponente($student, $predmet, $r250[0]);*/
    }
    zamgerlog("update profila i labgrupe za studenta u{$student}", 2);
    // nivo 2: edit
    return $grupa;
}
Exemplo n.º 29
0
    do {
        $result = substr($string, $start, $len);
        $len++;
    } while (ord(substr($result, strlen($result) - 1, 1)) > 128);
    return $result;
}
$broj_poruka = 10;
require "lib/libvedran.php";
require "lib/zamger.php";
require "lib/config.php";
dbconnect2($conf_dbhost, $conf_dbuser, $conf_dbpass, $conf_dbdb);
// Parametri potrebni za Moodle integraciju
global $conf_moodle, $conf_moodle_url, $conf_moodle_db, $conf_moodle_prefix, $conf_moodle_reuse_connection, $conf_moodle_dbhost, $conf_moodle_dbuser, $conf_moodle_dbpass;
global $__lv_connection, $conf_use_mysql_utf8;
// Pretvaramo rss id u userid
$id = my_escape($_REQUEST['id']);
$q1 = myquery("select auth from rss where id='{$id}'");
if (mysql_num_rows($q1) < 1) {
    print "Greska! Nepoznat RSS ID {$id}";
    return 0;
}
$userid = mysql_result($q1, 0, 0);
// Update timestamp
$q2 = myquery("update rss set access=NOW() where id='{$id}'");
// Ime studenta
$q5 = myquery("select ime,prezime from osoba where id={$userid}");
if (mysql_num_rows($q5) < 1) {
    print "Greska! Nepoznat userid {$userid}";
    return 0;
}
$ime = mysql_result($q5, 0, 0);
Exemplo n.º 30
0
function updatePost($data, $id)
{
    $query = sprintf("UPDATE bb_post SET naslov='%s' WHERE id='%d' LIMIT 1", my_escape($data['naslov']), intval($id));
    $result = myquery($query);
    if ($result == false) {
        return false;
    }
    $query = sprintf("UPDATE bb_post_text SET tekst='%s' WHERE post='%d' LIMIT 1", my_escape($data['tekst']), intval($id));
    $result = myquery($query);
    return $result == false ? false : true;
}