Esempio n. 1
0
 public function studentiPredmetaCsv()
 {
     // pretestiraj!
     $headers = ['Content-type' => 'application/csv', 'Cache-Control' => 'must-revalidate, post-check=0, pre-check=0', 'Content-type' => 'text/csv', 'Content-Disposition' => 'attachment; filename=galleries.csv', 'Expires' => '0', 'Pragma' => 'public'];
     $predmet = Input::get('predmet');
     $program = Input::get('program');
     $letnik = Input::get('letnik');
     $leto = Input::get('leto');
     $naslov = Input::get('naslov');
     $studenti = Vpisan_predmet::where('Vpisan_predmet.sifra_predmeta', $predmet)->where('Vpisan_predmet.sifra_studijskega_programa', $program)->where('Vpisan_predmet.sifra_letnika', $letnik)->where('Vpisan_predmet.sifra_studijskega_leta_izvedbe_predmeta', $leto)->join('student', 'Vpisan_predmet.vpisna_stevilka', '=', 'student.vpisna_stevilka')->join('vpis', function ($join) {
         $join->on('Vpisan_predmet.vpisna_stevilka', '=', 'Vpis.vpisna_stevilka')->on('Vpisan_predmet.sifra_studijskega_leta', '=', 'Vpis.sifra_studijskega_leta');
     })->join('Vrsta_vpisa', 'Vpis.sifra_vrste_vpisa', '=', 'Vrsta_vpisa.sifra_vrste_vpisa')->select('student.vpisna_stevilka AS vpisna', 'student.priimek_studenta AS priimek', 'student.ime_studenta AS ime', 'Vrsta_vpisa.opis_vrste_vpisa AS vrsta_vpisa')->orderByRaw('priimek COLLATE utf8_slovenian_ci')->get();
     # prva vrstica: imena stolpcev (preveri ce je izpis ok)
     array_unshift($studenti, array_keys($studenti[0]));
     $callback = function () use($studenti) {
         $outCsv = fopen('php://output', 'w');
         foreach ($studenti as $row) {
             fputcsv($outCsv, $row);
         }
         fclose($outCsv);
     };
     return Response::stream($callback, 200, $headers);
 }
 public function izpisi($premet)
 {
     $id_leto = Input::get('id_leto');
     $info = Vpisan_predmet::where('sifra_predmeta', $premet)->where('sifra_studijskega_leta', $id_leto)->lists('vpisna_stevilka');
     $leto = Studijsko_leto::where('sifra_studijskega_leta', $id_leto)->pluck('stevilka_studijskega_leta');
     $profesorDATA = Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $premet)->where('sifra_studijskega_leta', $id_leto)->pluck('sifra_profesorja'))->get()[0];
     $profesor = $profesorDATA->ime_profesorja . " " . $profesorDATA->priimek_profesorja;
     $ime_predmet = Predmet::where('sifra_predmeta', $premet)->pluck('naziv_predmeta');
     $studenti = [];
     for ($i = 0; $i < count($info); $i++) {
         if (!Vpis::where('vpisna_stevilka', $info[$i])->where('sifra_studijskega_leta', $id_leto)->where('vpis_potrjen', 0)->first()) {
             $studenti[$i] = Student::where('vpisna_stevilka', $info[$i])->first();
         }
     }
     usort($studenti, array($this, "cmp"));
     $vrsta = [];
     $vpisni = [];
     for ($i = 0; $i < count($studenti); $i++) {
         $vrsta[$i] = Vrsta_vpisa::where('sifra_vrste_vpisa', Vpis::where('vpisna_stevilka', $studenti[$i]->vpisna_stevilka)->where('sifra_studijskega_leta', $id_leto)->pluck('sifra_vrste_vpisa'))->pluck('opis_vrste_vpisa');
         $vpisni[$i] = $studenti[$i]->vpisna_stevilka;
     }
     $view = view('seznamstudentovnapredmet', ['sifra_predmeta' => $premet, 'vrsta' => $vrsta, 'vpisni' => $vpisni, 'stlet' => $leto, 'ime_predmet' => $ime_predmet, 'profesor' => $profesor, 'student' => $studenti, 'html' => ""])->renderSections()['content'];
     return view('seznamstudentovnapredmet', ['sifra_predmeta' => $premet, 'vrsta' => $vrsta, 'vpisni' => $vpisni, 'stlet' => $leto, 'ime_predmet' => $ime_predmet, 'profesor' => $profesor, 'student' => $studenti, 'html' => $view]);
 }
 public function izpisStudent()
 {
     $email = Auth::user()->email;
     $vs = Student::where('email_studenta', $email)->pluck('vpisna_stevilka');
     $student = Student::where('vpisna_stevilka', $vs)->get();
     $vpis = Vpis::where('vpisna_stevilka', $vs)->where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->get();
     $program = Vpisan_predmet::where('vpisna_stevilka', $vs)->where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->pluck('sifra_studijskega_programa') . " " . Studijski_program::where('sifra_studijskega_programa', Vpisan_predmet::where('vpisna_stevilka', $vs)->where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->pluck('sifra_studijskega_programa'))->pluck('naziv_studijskega_programa');
     $predmeti = Vpisan_predmet::where('vpisna_stevilka', $vs)->where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->lists('sifra_predmeta');
     $predmet = [];
     $sum = 0;
     for ($i = 0; $i < count($predmeti); $i++) {
         $predmet[$i] = [Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $predmeti[$i])->pluck('sifra_profesorja'))->pluck('priimek_profesorja'), Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $predmeti[$i])->pluck('sifra_profesorja'))->pluck('ime_profesorja'), Predmet::where('sifra_predmeta', $predmeti[$i])->pluck('naziv_predmeta'), Predmet::where('sifra_predmeta', $predmeti[$i])->pluck('stevilo_KT')];
         $sum += Predmet::where('sifra_predmeta', $predmeti[$i])->pluck('stevilo_KT');
     }
     $vse = [];
     $vse['vpisnastevilka'] = $vs;
     $vse['priimekime'] = $student[0]->priimek_studenta . ', ' . $student[0]->ime_studenta;
     $vse['datum'] = date('d.m.Y', strtotime($student[0]->datum_rojstva));
     $obc = Obcina::where('sifra_obcine', $student[0]->sifra_obcine_rojstva)->pluck('naziv_obcine');
     if ($obc == "DRUGO") {
         $vse['drzava'] = Drzava::where('sifra_drzave', $student[0]->sifra_drzave_rojstva)->pluck('naziv_drzave');
     } else {
         $vse['drzava'] = Drzava::where('sifra_drzave', $student[0]->sifra_drzave_rojstva)->pluck('naziv_drzave') . ", " . $obc;
     }
     $vse['drzavljanstvo'] = Drzava::where('sifra_drzave', $student[0]->sifra_drzave_drzavljanstva)->pluck('naziv_drzave');
     if ($student[0]->spol == 'M') {
         $vse['spol'] = "Moški";
     } else {
         $vse['spol'] = "Ženski";
     }
     if ($student[0]->emso) {
         $vse['emso'] = $student[0]->emso;
     } else {
         $vse['emso'] = "";
     }
     if ($student[0]->davcna_stevilka) {
         $vse['ds'] = $student[0]->davcna_stevilka;
     } else {
         $vse['ds'] = "";
     }
     $vse['email'] = $student[0]->email_studenta;
     if ($student[0]->prenosni_telefon) {
         $vse['gsm'] = $student[0]->prenosni_telefon;
     } else {
         $vse['gsm'] = "";
     }
     $postna1 = $student[0]->postna_stevilka_stalno . ' ' . Posta::where('postna_stevilka', $student[0]->postna_stevilka_stalno)->pluck('naziv_poste');
     $postna2 = $student[0]->postna_stevilka_zacasno . ' ' . Posta::where('postna_stevilka', $student[0]->postna_stevilka_zacasno)->pluck('naziv_poste');
     if ($postna1 == 9999) {
         $vse['naslov1'] = $student[0]->naslov_stalno;
     } else {
         $vse['naslov1'] = $student[0]->naslov_stalno . ', ' . $postna1;
     }
     $obc = Obcina::where('sifra_obcine', $student[0]->sifra_obcine_stalno)->pluck('naziv_obcine');
     if ($obc == "DRUGO") {
         $vse['obcina1'] = Drzava::where('sifra_drzave', $student[0]->sifra_drzave_stalno)->pluck('naziv_drzave');
     } else {
         $vse['obcina1'] = Drzava::where('sifra_drzave', $student[0]->sifra_drzave_stalno)->pluck('naziv_drzave') . ', ' . $obc;
     }
     if ($student[0]->naslov_zacasno) {
         if ($postna2 == 9999) {
             $vse['naslov2'] = $student[0]->naslov_zacasno;
         } else {
             $vse['naslov2'] = $student[0]->naslov_zacasno . ', ' . $postna2;
         }
     } else {
         $vse['naslov2'] = "";
     }
     if ($student[0]->sifra_obcine_zacasno) {
         if ($obc == "DRUGO") {
             $vse['obcina2'] = Drzava::where('sifra_drzave', $student[0]->sifra_drzave_zacasno)->pluck('naziv_drzave');
         } else {
             $vse['obcina2'] = Drzava::where('sifra_drzave', $student[0]->sifra_drzave_zacasno)->pluck('naziv_drzave') . ', ' . $obc;
         }
     } else {
         $vse['obcina2'] = "";
     }
     $tr1 = false;
     $tr2 = false;
     if ($student[0]->naslov_vrocanja != null) {
         if ($student[0]->naslov_vrocanja == explode(',', $vse['naslov1'])[0]) {
             $tr1 = true;
         } elseif ($student[0]->naslov_vrocanja == explode(',', $vse['naslov2'])[0]) {
             $tr2 = true;
         }
     }
     $vse['program'] = $vpis[0]->sifra_studijskega_programa . " " . Studijski_program::where('sifra_studijskega_programa', $vpis[0]->sifra_studijskega_programa)->pluck('naziv_studijskega_programa');
     if (!$vpis[0]->kraj_izvajanja) {
         $vse['krajizvajanja'] = "/";
     } else {
         $vse['krajizvajanja'] = $vpis[0]->kraj_izvajanja;
     }
     if (!$vpis[0]->zavod) {
         $vse['zavod'] = "/";
     } else {
         $vse['zavod'] = $vpis[0]->zavod;
     }
     $vse['vrstastudija'] = Vrsta_studija::where('sifra_vrste_studija', $vpis[0]->sifra_vrste_studija)->pluck('opis_vrste_studija');
     $vse['vrstevpisa'] = Vrsta_vpisa::where('sifra_vrste_vpisa', $vpis[0]->sifra_vrste_vpisa)->pluck('opis_vrste_vpisa');
     $vse['letnik'] = Letnik::where('sifra_letnika', $vpis[0]->sifra_letnika)->pluck('stevilka_letnika');
     $vse['nacinoblika'] = Nacin_studija::where('sifra_nacina_studija', $vpis[0]->sifra_nacina_studija)->pluck('opis_nacina_studija') . ', ' . Oblika_studija::where('sifra_oblike_studija', $vpis[0]->sifra_oblike_studija)->pluck('opis_oblike_studija');
     $vse['prvivpis'] = '20' . $vs[2] . $vs[3] . '/20' . $vs[2] . ($vs[3] + 1);
     return view('izpisvpisnegalista', ['vse' => $vse, 'predmeti' => $predmet, 'sum' => $sum, 'studijski_program' => $program, 'tr1' => $tr1, 'tr2' => $tr2]);
 }
 public function izpisStudent($vs)
 {
     //--- get profesor id
     $em_prof = Auth::user()->email;
     $id_prof = Profesor::where('email_profesorja', $em_prof)->first()->sifra_profesorja;
     $predmeti = Izvedba_predmeta::where('sifra_profesorja', $id_prof)->orWhere('sifra_profesorja2', $id_prof)->orWhere('sifra_profesorja3', $id_prof)->orderBy('sifra_studijskega_leta')->get();
     //dd($predmeti);
     //---------------
     $student = Student::where('vpisna_stevilka', $vs)->get()[0];
     $ime = $student->ime_studenta;
     $priimek = $student->priimek_studenta;
     $tel = $student->prenosni_telefon;
     $email = $student->email_studenta;
     $rojstni = date('d.m.Y', strtotime($student->datum_rojstva));
     $sklep = Sklep::where('vpisna_stevilka', $vs)->get();
     $tmp = $sklep;
     $vpisan_predmet = [];
     $count = 0;
     for ($i = 0; $i < count($predmeti); $i++) {
         $tmp = Vpisan_predmet::where('vpisna_stevilka', $vs)->where('sifra_predmeta', $predmeti[$i]->sifra_predmeta)->where('sifra_studijskega_programa', $predmeti[$i]->sifra_studijskega_programa)->where('sifra_letnika', $predmeti[$i]->sifra_letnika)->where('sifra_studijskega_leta', $predmeti[$i]->sifra_studijskega_leta)->first();
         if ($tmp != null) {
             $tmp = $predmeti[$i];
             $vpisan_predmet[$count] = $tmp;
             $count++;
         }
         //$vpisan_predmet[$i]=$tmp;
     }
     //dd($vpisan_predmet);
     //$ime_predmet=[];
     $tabela_ocena = [];
     $count = 0;
     // vpisan predmet = izvedba_predmet eloquent
     for ($i = 0; $i < count($vpisan_predmet); $i++) {
         $izpit = Izpit::where('sifra_predmeta', $vpisan_predmet[$i]->sifra_predmeta)->where('vpisna_stevilka', $vs)->where('sifra_studijskega_programa', $vpisan_predmet[$i]->sifra_studijskega_programa)->where('sifra_studijskega_leta', $vpisan_predmet[$i]->sifra_studijskega_leta)->whereNull('cas_odjave')->get();
         //$ime_predmet[$i]=Predmet::where('sifra_predmeta',$vpisan_predmet[$i]->sifra_predmeta)->first()->naziv_predmeta;
         //echo(count($izpit));
         if (count($izpit) == 0) {
             $tabela_ocena[$count][0] = $i + 1;
             $tabela_ocena[$count][1] = $vpisan_predmet[$i]->sifra_predmeta;
             $tabela_ocena[$count][2] = Predmet::where('sifra_predmeta', $vpisan_predmet[$i]->sifra_predmeta)->first()->naziv_predmeta;
             $tabela_ocena[$count][3] = Studijsko_leto::where('sifra_studijskega_leta', $vpisan_predmet[$i]->sifra_studijskega_leta)->first()->stevilka_studijskega_leta;
             $tabela_ocena[$count][4] = "";
             $tabela_ocena[$count][5] = "";
             $tabela_ocena[$count][6] = "";
             $tabela_ocena[$count][7] = "";
             $count++;
         } else {
             for ($j = 0; $j < count($izpit); $j++) {
                 if ($j == 0) {
                     $tabela_ocena[$count][0] = $i + 1;
                     $tabela_ocena[$count][1] = $vpisan_predmet[$i]->sifra_predmeta;
                     $tabela_ocena[$count][2] = Predmet::where('sifra_predmeta', $vpisan_predmet[$i]->sifra_predmeta)->first()->naziv_predmeta;
                     $tabela_ocena[$count][3] = Studijsko_leto::where('sifra_studijskega_leta', $vpisan_predmet[$i]->sifra_studijskega_leta)->first()->stevilka_studijskega_leta;
                 } else {
                     $tabela_ocena[$count][0] = "";
                     $tabela_ocena[$count][1] = "";
                     $tabela_ocena[$count][2] = "";
                     $tabela_ocena[$count][3] = "";
                 }
                 $tabela_ocena[$count][4] = $vpisan_predmet[$i]->sifra_letnika . " letnik";
                 $tabela_ocena[$count][5] = $izpit[$j]->datum;
                 $tabela_ocena[$count][6] = $izpit[$j]->tocke_izpita;
                 $tabela_ocena[$count][7] = $izpit[$j]->ocena;
                 if (is_integer($tabela_ocena[$count][7]) && $tabela_ocena[$count][7] == '0') {
                     $tabela_ocena[$count][7] = "VP";
                 }
                 $count++;
             }
         }
     }
     //dd($tabela_ocena);
     return view('izpisstudent', ['vpisna' => $vs, 'ime' => $ime, 'priimek' => $priimek, 'email' => $email, 'tel' => $tel, 'rojstni' => $rojstni, 'tmp' => $tmp, 'sklep' => $sklep, 'ocene' => $tabela_ocena]);
 }
 public function izberi($vp)
 {
     $stdleto = substr(date('Y'), 2, 2);
     $list = Input::all();
     $vpis = Vpis::where('vpisna_stevilka', $vp)->where('sifra_studijskega_leta', $stdleto)->first();
     $ime = Student::where('vpisna_stevilka', $vp)->pluck('priimek_studenta') . ", " . Student::where('vpisna_stevilka', $vp)->pluck('ime_studenta');
     $vpisna['vpisna'] = $vp;
     $vpisna['sifra_studijskega_leta'] = $stdleto;
     $vpisna['sifra_studijskega_programa'] = $vpis->sifra_studijskega_programa;
     $vpisna['sifra_letnika'] = $vpis->sifra_letnika;
     $strokovno_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_sestavnega_dela', '6')->lists('sifra_predmeta');
     $strokovni = [];
     for ($i = 0; $i < count($strokovno_izbirni); $i++) {
         $strokovni[$i] = Predmet::where('sifra_predmeta', $strokovno_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $strokovno_izbirni[$i])->pluck('stevilo_KT') . " KT";
     }
     if (!empty($strokovni)) {
         array_unshift($strokovni, "");
     }
     $moduli = [];
     if ($vpisna['sifra_letnika'] == 3) {
         $moduli = Sestavni_del_predmetnika::where('sifra_sestavnega_dela', '!=', '6')->where('sifra_sestavnega_dela', '!=', '7')->lists('opis_sestavnega_dela');
         array_unshift($moduli, "");
     }
     $modpredmeti = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_sestavnega_dela', '!=', '6')->where('sifra_sestavnega_dela', '!=', '7')->whereNotNull('sifra_sestavnega_dela')->lists('sifra_predmeta');
     $modularni = [];
     for ($i = 0; $i < count($modpredmeti); $i++) {
         $modularni[$i] = Predmet::where('sifra_predmeta', $modpredmeti[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $modpredmeti[$i])->pluck('stevilo_KT') . " KT";
     }
     if (!empty($modularni)) {
         array_unshift($modularni, "");
     }
     if ($vpisna['sifra_letnika'] == 2) {
         $prosto_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->whereBetween('sifra_sestavnega_dela', [6, 7])->lists('sifra_predmeta');
         $prosti = [];
         for ($i = 0; $i < count($prosto_izbirni); $i++) {
             $prosti[$i] = Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('stevilo_KT') . " KT";
         }
         if (!empty($prosti)) {
             array_unshift($prosti, "");
         }
     } else {
         $prosto_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->whereNotNull('sifra_sestavnega_dela')->lists('sifra_predmeta');
         $prosti = [];
         $j = 0;
         for ($i = 0; $i < count($prosto_izbirni); $i++) {
             $prosti[$j] = Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('stevilo_KT') . " KT";
             $j++;
         }
         if (!empty($prosti)) {
             array_unshift($prosti, "");
         }
     }
     $vpisan = Vpisan_predmet::where('vpisna_stevilka', $vp)->where('sifra_studijskega_leta', $stdleto)->lists('sifra_predmeta');
     $str = 0;
     $pr1 = 0;
     $pr2 = 0;
     $mod1 = 0;
     $mod2 = 0;
     $mod3 = 0;
     $mod4 = 0;
     $mod5 = 0;
     $mod6 = 0;
     $strz = 0;
     $prz1 = 0;
     $prz2 = 0;
     $modz = array_fill(1, 6, 0);
     for ($i = 0; $i < count($vpisan); $i++) {
         $psp = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_predmeta', $vpisan[$i])->pluck('sifra_sestavnega_dela');
         if ($vpisna['sifra_letnika'] == 2) {
             if ($psp == 6 && $str == 0) {
                 $str = array_search($vpisan[$i], $strokovno_izbirni) + 1;
                 $strz = $vpisan[$i];
             } else {
                 if (($psp == 7 || $psp == 6) && $pr1 == 0) {
                     $pr1 = array_search($vpisan[$i], $prosto_izbirni) + 1;
                     $prz1 = $vpisan[$i];
                 }
                 if (($psp == 7 || $psp == 6) && $pr2 == 0) {
                     $pr2 = array_search($vpisan[$i], $prosto_izbirni) + 1;
                     $prz2 = $vpisan[$i];
                 }
             }
         } elseif ($vpisna['sifra_letnika'] == 3) {
             if ($psp != null && ($psp < 6 || $psp > 7)) {
                 if ($mod1 == 0) {
                     $mod1 = array_search($vpisan[$i], $modpredmeti) + 1;
                     $modz[1] = $vpisan[$i];
                 } elseif ($mod2 == 0) {
                     $mod2 = array_search($vpisan[$i], $modpredmeti) + 1;
                     $modz[2] = $vpisan[$i];
                 } elseif ($mod3 == 0) {
                     $mod3 = array_search($vpisan[$i], $modpredmeti) + 1;
                     $modz[3] = $vpisan[$i];
                 } elseif ($mod4 == 0) {
                     $mod4 = array_search($vpisan[$i], $modpredmeti) + 1;
                     $modz[4] = $vpisan[$i];
                 } elseif ($mod5 == 0) {
                     $mod5 = array_search($vpisan[$i], $modpredmeti) + 1;
                     $modz[5] = $vpisan[$i];
                 } elseif ($mod6 == 0) {
                     $mod6 = array_search($vpisan[$i], $modpredmeti) + 1;
                     $modz[6] = $vpisan[$i];
                 } elseif ($pr1 == 0) {
                     $pr1 = array_search($vpisan[$i], $prosto_izbirni) + 1;
                     $prz1 = $vpisan[$i];
                 } elseif ($pr2 == 0) {
                     $pr2 = array_search($vpisan[$i], $prosto_izbirni) + 1;
                     $prz2 = $vpisan[$i];
                 }
             }
             if (($psp == 6 || $psp == 7) && $pr1 == 0) {
                 $pr1 = array_search($vpisan[$i], $prosto_izbirni) + 1;
                 $prz1 = $vpisan[$i];
             } elseif (($psp == 6 || $psp == 7) && $pr2 == 0) {
                 $pr2 = array_search($vpisan[$i], $prosto_izbirni) + 1;
                 $prz2 = $vpisan[$i];
             }
         }
     }
     $stp = Studijski_program::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->pluck('naziv_studijskega_programa');
     if (array_key_exists('prosti', $list) && array_key_exists('prosti2', $list)) {
         if ($list['prosti'] == $list['prosti2'] && $list['prosti'] != 0) {
             if ($vpisna['sifra_letnika'] == 3) {
                 return view('spremeniizbirni', ['mod1' => $mod1, 'mod2' => $mod2, 'mod3' => $mod3, 'mod4' => $mod4, 'mod5' => $mod5, 'mod6' => $mod6, 'pr1' => $pr1, 'pr2' => $pr2, 'str' => $str, 'ime' => $ime, 'studijski_program' => $stp, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vp' => $vp, 'modularni' => $modularni, 'tips' => 0])->withErrors("Izberite različne prosto izbirne predmete!");
             } else {
                 return view('spremeniizbirni', ['mod1' => $mod1, 'mod2' => $mod2, 'mod3' => $mod3, 'mod4' => $mod4, 'mod5' => $mod5, 'mod6' => $mod6, 'pr1' => $pr1, 'pr2' => $pr2, 'str' => $str, 'ime' => $ime, 'studijski_program' => $stp, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vp' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne prosto izbirne predmete!");
             }
         }
     }
     if (array_key_exists('strokovni', $list)) {
         if ($list['prosti'] == $list['strokovni'] && $list['prosti'] != 0) {
             return view('spremeniizbirni', ['mod1' => $mod1, 'mod2' => $mod2, 'mod3' => $mod3, 'mod4' => $mod4, 'mod5' => $mod5, 'mod6' => $mod6, 'pr1' => $pr1, 'pr2' => $pr2, 'str' => $str, 'ime' => $ime, 'studijski_program' => $stp, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vp' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne prosto izbirne predmete!");
         }
         if ($list['prosti2'] == $list['strokovni'] && $list['prosti2'] != 0) {
             return view('spremeniizbirni', ['mod1' => $mod1, 'mod2' => $mod2, 'mod3' => $mod3, 'mod4' => $mod4, 'mod5' => $mod5, 'mod6' => $mod6, 'pr1' => $pr1, 'pr2' => $pr2, 'str' => $str, 'ime' => $ime, 'studijski_program' => $stp, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vp' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne prosto izbirne predmete!");
         }
     } else {
         for ($i = 1; $i <= 6; $i++) {
             if ($modularni[$list['modularni' . $i] - 1] == $prosti[$list['prosti'] - 1] && $list['modularni' . $i] != 0) {
                 return view('spremeniizbirni', ['mod1' => $mod1, 'mod2' => $mod2, 'mod3' => $mod3, 'mod4' => $mod4, 'mod5' => $mod5, 'mod6' => $mod6, 'pr1' => $pr1, 'pr2' => $pr2, 'str' => $str, 'ime' => $ime, 'studijski_program' => $stp, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vp' => $vp, 'modularni' => $modularni, 'tips' => 0])->withErrors("Izberite različne modularne predmete! ");
             }
         }
     }
     if (array_key_exists('modularni' . 1, $list)) {
         for ($i = 1; $i <= 5; $i++) {
             for ($j = $i + 1; $j <= 6; $j++) {
                 if ($list['modularni' . $i] != 0) {
                     if ($list['modularni' . $i] == $list['modularni' . $j]) {
                         return view('spremeniizbirni', ['mod1' => $mod1, 'mod2' => $mod2, 'mod3' => $mod3, 'mod4' => $mod4, 'mod5' => $mod5, 'mod6' => $mod6, 'pr1' => $pr1, 'pr2' => $pr2, 'str' => $str, 'ime' => $ime, 'studijski_program' => $stp, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vp' => $vp, 'modularni' => $modularni, 'tips' => 0])->withErrors("Izberite različne modularne predmete! ");
                     }
                 } else {
                     return view('spremeniizbirni', ['mod1' => $mod1, 'mod2' => $mod2, 'mod3' => $mod3, 'mod4' => $mod4, 'mod5' => $mod5, 'mod6' => $mod6, 'pr1' => $pr1, 'pr2' => $pr2, 'str' => $str, 'ime' => $ime, 'studijski_program' => $stp, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vp' => $vp, 'modularni' => $modularni, 'tips' => 0])->withErrors("Izberite modularne predmete! ");
                 }
             }
         }
         for ($i = 1; $i <= 6; $i++) {
             if ($list['modularni' . $i] != 0) {
                 Vpisan_predmet::where('vpisna_stevilka', $vpisna['vpisna'])->where('sifra_studijskega_leta', $vpisna['sifra_studijskega_leta'])->where('sifra_predmeta', $modz[$i])->update(['sifra_predmeta' => $modpredmeti[$list['modularni' . $i] - 1]]);
             }
         }
     }
     if (array_key_exists('prosti', $list)) {
         if ($list['prosti'] != 0) {
             Vpisan_predmet::where('vpisna_stevilka', $vpisna['vpisna'])->where('sifra_studijskega_leta', $vpisna['sifra_studijskega_leta'])->where('sifra_predmeta', $prz1)->update(['sifra_predmeta' => $prosto_izbirni[$list['prosti'] - 1]]);
         }
     }
     if (array_key_exists('prosti2', $list)) {
         if ($list['prosti2'] != 0) {
             Vpisan_predmet::where('vpisna_stevilka', $vpisna['vpisna'])->where('sifra_studijskega_leta', $vpisna['sifra_studijskega_leta'])->where('sifra_predmeta', $prz2)->update(['sifra_predmeta' => $prosto_izbirni[$list['prosti2'] - 1]]);
         }
     }
     if (array_key_exists('strokovni', $list)) {
         if ($list['strokovni'] != 0) {
             Vpisan_predmet::where('vpisna_stevilka', $vpisna['vpisna'])->where('sifra_studijskega_leta', $vpisna['sifra_studijskega_leta'])->where('sifra_predmeta', $strz)->update(['sifra_predmeta' => $strokovno_izbirni[$list['strokovni'] - 1]]);
         } else {
             return view('spremeniizbirni', ['mod1' => $mod1, 'mod2' => $mod2, 'mod3' => $mod3, 'mod4' => $mod4, 'mod5' => $mod5, 'mod6' => $mod6, 'pr1' => $pr1, 'pr2' => $pr2, 'str' => $str, 'ime' => $ime, 'studijski_program' => $stp, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vp' => $vp, 'modularni' => [], 'tips' => 1])->withErrors("Izberite en strokovni predmet!");
         }
     }
     $predmeti = Vpisan_predmet::where('vpisna_stevilka', $vpisna['vpisna'])->where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_studijskega_leta', $vpisna['sifra_studijskega_leta'])->lists('sifra_predmeta');
     $suma = 0;
     for ($i = 0; $i < count($predmeti); $i++) {
         $suma += Predmet::where('sifra_predmeta', $predmeti[$i])->pluck('stevilo_KT');
     }
     if ($suma < 60) {
         if ($vpisna['sifra_letnika'] == 3 && $vpisna['zeton'] == 1) {
             return view('spremeniizbirni', ['mod1' => $mod1, 'mod2' => $mod2, 'mod3' => $mod3, 'mod4' => $mod4, 'mod5' => $mod5, 'mod6' => $mod6, 'pr1' => $pr1, 'pr2' => $pr2, 'str' => $str, 'ime' => $ime, 'studijski_program' => $stp, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vp' => $vp, 'modularni' => $modularni, 'tips' => 1])->withErrors("Nimate dovolj KT!");
         } else {
             return view('spremeniizbirni', ['mod1' => $mod1, 'mod2' => $mod2, 'mod3' => $mod3, 'mod4' => $mod4, 'mod5' => $mod5, 'mod6' => $mod6, 'pr1' => $pr1, 'pr2' => $pr2, 'str' => $str, 'ime' => $ime, 'studijski_program' => $stp, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vp' => $vp, 'modularni' => [], 'tips' => 1])->withErrors("Nimate dovolj KT!");
         }
     }
     return redirect('home')->with('message', 'Predmeti so bili spremenjeni!');
 }
 public function vrniZadnja()
 {
     $email = Auth::user()->email;
     $student = Student::where('email_studenta', $email)->get()[0];
     $vpisna = $student->vpisna_stevilka;
     $name = $student->priimek_studenta . ", " . $student->ime_studenta . " (" . $vpisna . ")";
     $active = [];
     $active[0] = "";
     $active[1] = "active";
     $programi = Vpisan_predmet::where('vpisna_stevilka', $vpisna)->lists('sifra_studijskega_programa');
     $res2 = array();
     foreach ($programi as $key => $val) {
         $res2[$val] = true;
     }
     $programi = array_keys($res2);
     $studijski_programi = [];
     for ($i = 0; $i < count($programi); $i++) {
         $studijski_programi[$i] = $programi[$i] . " " . Studijski_program::where('sifra_studijskega_programa', $programi[$i])->pluck('naziv_studijskega_programa');
     }
     array_unshift($studijski_programi, "");
     if (Input::get('studiskiprogram') != 0) {
         $studijski_program[0] = $programi[Input::get('studiskiprogram') - 1];
     } else {
         $studijski_program = $programi;
     }
     $povp = [];
     $skupnare = [];
     $skupkt = [];
     $izpiti = [];
     $heading = [];
     $sh = [];
     for ($s = 0; $s < count($studijski_program); $s++) {
         $leta = Vpisan_predmet::where('vpisna_stevilka', $vpisna)->where('sifra_studijskega_programa', $studijski_program[$s])->lists('sifra_studijskega_leta');
         $res2 = array();
         foreach ($leta as $key => $val) {
             $res2[$val] = true;
         }
         $leta = array_keys($res2);
         $stleto = [];
         $stskupaj = [];
         for ($i = 0; $i < count($leta); $i++) {
             $sh[$s][$i] = 0;
             $povp[$s][$i] = 0;
             $skupkt[$s][$i] = 0;
             $st = 0;
             $stleto[$s][$i] = [];
             $he = Vpis::where('vpisna_stevilka', $vpisna)->where('sifra_studijskega_leta', $leta[$i])->first();
             if ($he) {
                 $heading[$s][$i][0] = Studijsko_leto::where('sifra_studijskega_leta', $leta[$i])->pluck('stevilka_studijskega_leta');
                 $heading[$s][$i][1] = Letnik::where('sifra_letnika', $he->sifra_letnika)->pluck('stevilka_letnika');
                 $heading[$s][$i][2] = Vrsta_vpisa::where('sifra_vrste_vpisa', $he->sifra_vrste_vpisa)->pluck('opis_vrste_vpisa');
                 $heading[$s][$i][3] = Nacin_studija::where('sifra_nacina_studija', $he->sifra_nacina_studija)->pluck('opis_nacina_studija');
                 $predmets = Vpisan_predmet::where('vpisna_stevilka', $vpisna)->where('sifra_studijskega_leta', $leta[$i])->get();
                 for ($j = 0; $j < count($predmets); $j++) {
                     $necinit = 1;
                     $predmet = Izpit::where('vpisna_stevilka', $vpisna)->where('ocena', '>', 0)->where('sifra_studijskega_leta', $leta[$i])->where('sifra_predmeta', $predmets[$j]->sifra_predmeta)->orderBy('datum', 'desc')->first();
                     if ($predmet == null) {
                         $predmet = $predmets[$j];
                         $necinit = 0;
                     }
                     $kaunt = count(Izpit::where('vpisna_stevilka', $vpisna)->where('ocena', '>', 0)->where('sifra_studijskega_leta', $leta[$i])->where('sifra_predmeta', $predmets[$j]->sifra_predmeta)->get());
                     $izpiti[$s][$i][$j][0] = $predmet->sifra_predmeta;
                     $izpiti[$s][$i][$j][7] = Predmet::where('sifra_predmeta', $izpiti[$s][$i][$j][0])->pluck('stevilo_KT');
                     $izpiti[$s][$i][$j][1] = Predmet::where('sifra_predmeta', $izpiti[$s][$i][$j][0])->pluck('naziv_predmeta');
                     $izpiti[$s][$i][$j][3] = Letnik::where('sifra_letnika', $predmet->sifra_letnika)->pluck('stevilka_letnika') . ". letnik";
                     if ($necinit) {
                         $izpiti[$s][$i][$j][2] = Profesor::where('sifra_profesorja', $predmet->sifra_profesorja)->pluck('priimek_profesorja') . ", " . Profesor::where('sifra_profesorja', $predmet->sifra_profesorja)->pluck('ime_profesorja');
                         $izpiti[$s][$i][$j][4] = date('d.m.Y', strtotime($predmet->datum));
                         if (array_key_exists($izpiti[$s][$i][$j][0], $stskupaj)) {
                             $stskupaj[$izpiti[$s][$i][$j][0]] += $kaunt;
                         } else {
                             $stskupaj[$izpiti[$s][$i][$j][0]] = $kaunt;
                         }
                         if (array_key_exists($izpiti[$s][$i][$j][0], $stleto[$s][$i])) {
                             $stleto[$s][$i][$izpiti[$s][$i][$j][0]] += $kaunt;
                         } else {
                             $stleto[$s][$i][$izpiti[$s][$i][$j][0]] = $kaunt;
                         }
                         $izpiti[$s][$i][$j][5] = $stleto[$s][$i][$izpiti[$s][$i][$j][0]];
                         if ($he->sifra_vrste_vpisa == 2 && $stleto[$s][$i - 1][$izpiti[$s][$i][$j][0]] != null) {
                             $izpiti[$s][$i][$j][6] = $stskupaj[$izpiti[$s][$i][$j][0]] . " (-" . $stleto[$s][$i - 1][$izpiti[$s][$i][$j][0]] . ")";
                         } else {
                             $izpiti[$s][$i][$j][6] = $stskupaj[$izpiti[$s][$i][$j][0]];
                         }
                         $izpiti[$s][$i][$j][8] = $predmet->ocena;
                         if ($predmet->ocena > 5) {
                             $skupkt[$s][$i] += $izpiti[$s][$i][$j][7];
                             $povp[$s][$i] += $predmet->ocena;
                             $st++;
                         }
                         $sh[$s][$i]++;
                     } else {
                         $sh[$s][$i]++;
                         $izpiti[$s][$i][$j][2] = "";
                         $izpiti[$s][$i][$j][4] = "";
                         $izpiti[$s][$i][$j][5] = "";
                         $izpiti[$s][$i][$j][6] = "";
                         $izpiti[$s][$i][$j][8] = "";
                     }
                 }
                 $skupnare[$s][$i] = $st;
                 if ($st != 0) {
                     $povp[$s][$i] = round($povp[$s][$i] / $st, 3);
                 } else {
                     $povp[$s][$i] = 0;
                 }
             }
         }
     }
     $glupost = 0;
     if (count($studijski_program) == 1) {
         for ($g = 0; $g < count($studijski_programi); $g++) {
             if (substr($studijski_programi[$g], 0, 7) == $studijski_program[0]) {
                 $glupost = $g;
             }
         }
     }
     $povse = [];
     for ($s = 0; $s < count($studijski_program); $s++) {
         $povse[$s][0] = 0;
         $povse[$s][1] = 0;
         $povse[$s][2] = 0;
         $letnikpredmet = Izpit::where('vpisna_stevilka', $vpisna)->where('sifra_studijskega_programa', $studijski_program[$s])->where('ocena', '>', 5)->lists('sifra_predmeta');
         $res2 = array();
         foreach ($letnikpredmet as $key => $val) {
             $res2[$val] = true;
         }
         $letnikpredmet = array_keys($res2);
         $stevec = 0;
         for ($l = 0; $l < count($letnikpredmet); $l++) {
             $pom = Izpit::where('vpisna_stevilka', $vpisna)->where('sifra_studijskega_programa', $studijski_program[$s])->where('sifra_predmeta', $letnikpredmet[$l])->orderBy('datum', 'desc')->first();
             if ($pom->ocena > 5) {
                 $povse[$s][1] += Predmet::where('sifra_predmeta', $letnikpredmet[$l])->pluck('stevilo_KT');
                 $povse[$s][2] += $pom->ocena;
                 $stevec++;
             }
         }
         $povse[$s][0] = $stevec;
         if ($l != 0) {
             $povse[$s][2] = round($povse[$s][2] / $stevec, 3);
         } else {
             $povse[$s][2] = 0;
         }
     }
     $view = view('kartotecnilist', ['name' => $name, 'povse' => $povse, 'active' => $active, 'studijski_programi' => $studijski_programi, 'skupkt' => $skupkt, 'stpredmetov' => $sh, 'glupost' => $glupost, 'studijski_program' => $studijski_program, 'heading' => $heading, 'izpiti' => $izpiti, 'povp' => $povp, 'skupnare' => $skupnare, 'html' => ""])->renderSections()['content'];
     return view('kartotecnilist', ['name' => $name, 'povse' => $povse, 'active' => $active, 'studijski_programi' => $studijski_programi, 'skupkt' => $skupkt, 'stpredmetov' => $sh, 'glupost' => $glupost, 'studijski_program' => $studijski_program, 'heading' => $heading, 'izpiti' => $izpiti, 'povp' => $povp, 'skupnare' => $skupnare, 'html' => $view]);
 }
 public function izberi2($vp)
 {
     $list = Input::all();
     $vpisna['vpisna'] = substr($vp, 0, 8);
     $vpisna['sifra_studijskega_leta'] = substr($vp, 8, 2);
     $vpisna['sifra_studijskega_programa'] = substr($vp, 10, 7);
     $vpisna['sifra_letnika'] = substr($vp, 17, 1);
     $vpisna['zeton'] = substr($vp, 18, 1);
     Vpisan_predmet::where('vpisna_stevilka', $vpisna['vpisna'])->where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_studijskega_leta', $vpisna['sifra_studijskega_leta'])->delete();
     $obvezni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_sestavnega_dela', NULL)->lists('sifra_predmeta');
     $obvezni_predmeti = [];
     $sum = 0;
     if (!Vpisan_predmet::where('vpisna_stevilka', $vpisna['vpisna'])->where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_studijskega_leta', $vpisna['sifra_studijskega_leta'])->count()) {
         for ($i = 0; $i < count($obvezni); $i++) {
             $obvezni_predmeti[$i] = [Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $obvezni[$i])->pluck('sifra_profesorja'))->pluck('priimek_profesorja'), Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $obvezni[$i])->pluck('sifra_profesorja'))->pluck('ime_profesorja'), Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('naziv_predmeta'), Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('stevilo_KT')];
             $vpisi = new Vpisan_predmet();
             $vpisi->vpisna_stevilka = $vpisna['vpisna'];
             $vpisi->sifra_studijskega_leta = $vpisna['sifra_studijskega_leta'];
             $vpisi->sifra_predmeta = $obvezni[$i];
             $vpisi->sifra_studijskega_programa = $vpisna['sifra_studijskega_programa'];
             $vpisi->sifra_letnika = $vpisna['sifra_letnika'];
             $vpisi->sifra_studijskega_leta_izvedbe_predmeta = $vpisna['sifra_studijskega_leta'];
             $vpisi->save();
             $sum += Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('stevilo_KT');
         }
     } else {
         for ($i = 0; $i < count($obvezni); $i++) {
             $obvezni_predmeti[$i] = [Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $obvezni[$i])->pluck('sifra_profesorja'))->pluck('priimek_profesorja'), Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $obvezni[$i])->pluck('sifra_profesorja'))->pluck('ime_profesorja'), Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('naziv_predmeta'), Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('stevilo_KT')];
             $sum += Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('stevilo_KT');
         }
     }
     $strokovno_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_sestavnega_dela', '6')->lists('sifra_predmeta');
     $strokovni = [];
     for ($i = 0; $i < count($strokovno_izbirni); $i++) {
         $strokovni[$i] = Predmet::where('sifra_predmeta', $strokovno_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $strokovno_izbirni[$i])->pluck('stevilo_KT') . " KT";
     }
     if (!empty($strokovni)) {
         array_unshift($strokovni, "");
     }
     $moduli = [];
     if ($vpisna['sifra_letnika'] == 3) {
         $moduli = Sestavni_del_predmetnika::where('sifra_sestavnega_dela', '!=', '6')->where('sifra_sestavnega_dela', '!=', '7')->lists('opis_sestavnega_dela');
         array_unshift($moduli, "");
     }
     $modpredmeti = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_sestavnega_dela', '!=', '6')->where('sifra_sestavnega_dela', '!=', '7')->whereNotNull('sifra_sestavnega_dela')->lists('sifra_predmeta');
     $modularni = [];
     for ($i = 0; $i < count($modpredmeti); $i++) {
         $modularni[$i] = Predmet::where('sifra_predmeta', $modpredmeti[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $modpredmeti[$i])->pluck('stevilo_KT') . " KT";
     }
     if (!empty($modularni)) {
         array_unshift($modularni, "");
     }
     if ($vpisna['sifra_letnika'] == 2) {
         $prosto_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->whereBetween('sifra_sestavnega_dela', [6, 7])->lists('sifra_predmeta');
         $prosti = [];
         for ($i = 0; $i < count($prosto_izbirni); $i++) {
             $prosti[$i] = Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('stevilo_KT') . " KT";
         }
         if (!empty($prosti)) {
             array_unshift($prosti, "");
         }
     } else {
         $prosto_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->whereNotNull('sifra_sestavnega_dela')->lists('sifra_predmeta');
         $prosti = [];
         $j = 0;
         for ($i = 0; $i < count($prosto_izbirni); $i++) {
             $prosti[$j] = Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('stevilo_KT') . " KT";
             $j++;
         }
         if (!empty($prosti)) {
             array_unshift($prosti, "");
         }
     }
     $stp = Studijski_program::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->pluck('naziv_studijskega_programa');
     if (array_key_exists('modul', $list) && array_key_exists('modul2', $list)) {
         if ($list['modul2'] == $list['modul']) {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne module!");
         } elseif ($list['modul2'] == 0 || $list['modul'] == 0) {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite modul!");
         }
     }
     if (array_key_exists('prosti', $list) && array_key_exists('prosti2', $list)) {
         if ($list['prosti'] == $list['prosti2'] && $list['prosti'] != 0) {
             if ($vpisna['sifra_letnika'] == 3 && $vpisna['zeton'] == 1) {
                 return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => $modularni, 'tips' => 0])->withErrors("Izberite različne prosto izbirne predmete!");
             } else {
                 return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne prosto izbirne predmete!");
             }
         }
     }
     if (array_key_exists('strokovni', $list)) {
         if ($list['prosti'] == $list['strokovni'] && $list['prosti'] != 0) {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne prosto izbirne predmete!");
         }
         if ($list['prosti2'] == $list['strokovni'] && $list['prosti2'] != 0) {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne prosto izbirne predmete!");
         }
     } elseif ($vpisna['sifra_letnika'] == 3 && $vpisna['zeton'] == 1) {
         for ($i = 1; $i <= 6; $i++) {
             if ($modularni[$list['modularni' . $i]] == $prosti[$list['prosti']] && $list['modularni' . $i] != 0) {
                 return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => $modularni, 'tips' => 0])->withErrors("Izberite različne modularne predmete! ");
             }
         }
     } else {
         $module1 = $list['modul'];
         $module2 = $list['modul2'];
         if ($list['modul'] == 6 || $list['modul'] == 7) {
             $module1 = $list['modul'] + 2;
         }
         if ($list['modul2'] == 6 || $list['modul2'] == 7) {
             $module2 = $list['modul2'] + 2;
         }
         $mod1 = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_sestavnega_dela', $module1)->lists('sifra_predmeta');
         $mod2 = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_sestavnega_dela', $module2)->lists('sifra_predmeta');
         if (in_array(Predmet::where('naziv_predmeta', explode(" - ", $prosti[$list['prosti']])[0])->pluck('sifra_predmeta'), $mod1)) {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne modularne predmete! ");
         }
         if (in_array(Predmet::where('naziv_predmeta', explode(" - ", $prosti[$list['prosti']])[0])->pluck('sifra_predmeta'), $mod2)) {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne modularne predmete! ");
         }
         if (in_array(Predmet::where('naziv_predmeta', explode(" - ", $prosti[$list['prosti2']])[0])->pluck('sifra_predmeta'), $mod1)) {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne modularne predmete! ");
         }
         if (in_array(Predmet::where('naziv_predmeta', explode(" - ", $prosti[$list['prosti2']])[0])->pluck('sifra_predmeta'), $mod2)) {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 0])->withErrors("Izberite različne modularne predmete! ");
         }
     }
     if (array_key_exists('modularni' . 1, $list)) {
         for ($i = 1; $i <= 5; $i++) {
             for ($j = $i + 1; $j <= 6; $j++) {
                 if ($list['modularni' . $i] != 0) {
                     if ($list['modularni' . $i] == $list['modularni' . $j]) {
                         return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => $modularni, 'tips' => 0])->withErrors("Izberite različne modularne predmete! ");
                     }
                 } else {
                     return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => $modularni, 'tips' => 0])->withErrors("Izberite modularne predmete! ");
                 }
             }
         }
         for ($i = 1; $i <= 6; $i++) {
             if ($list['modularni' . $i] != 0) {
                 $pre = new Vpisan_predmet();
                 $pre->vpisna_stevilka = $vpisna['vpisna'];
                 $pre->sifra_predmeta = $modpredmeti[$list['modularni' . $i] - 1];
                 $pre->sifra_studijskega_leta = $vpisna['sifra_studijskega_leta'];
                 $pre->sifra_studijskega_programa = $vpisna['sifra_studijskega_programa'];
                 $pre->sifra_letnika = $vpisna['sifra_letnika'];
                 $pre->sifra_studijskega_leta_izvedbe_predmeta = $vpisna['sifra_studijskega_leta'];
                 $pre->save();
             }
         }
     }
     if (array_key_exists('prosti', $list)) {
         if ($list['prosti'] != 0) {
             $pre = new Vpisan_predmet();
             $pre->vpisna_stevilka = $vpisna['vpisna'];
             $pre->sifra_predmeta = $prosto_izbirni[$list['prosti'] - 1];
             $pre->sifra_studijskega_leta = $vpisna['sifra_studijskega_leta'];
             $pre->sifra_studijskega_programa = $vpisna['sifra_studijskega_programa'];
             $pre->sifra_letnika = $vpisna['sifra_letnika'];
             $pre->sifra_studijskega_leta_izvedbe_predmeta = $vpisna['sifra_studijskega_leta'];
             $pre->save();
         }
     }
     if (array_key_exists('prosti2', $list)) {
         if ($list['prosti2'] != 0) {
             $pre = new Vpisan_predmet();
             $pre->vpisna_stevilka = $vpisna['vpisna'];
             $pre->sifra_predmeta = $prosto_izbirni[$list['prosti2'] - 1];
             $pre->sifra_studijskega_leta = $vpisna['sifra_studijskega_leta'];
             $pre->sifra_studijskega_programa = $vpisna['sifra_studijskega_programa'];
             $pre->sifra_letnika = $vpisna['sifra_letnika'];
             $pre->sifra_studijskega_leta_izvedbe_predmeta = $vpisna['sifra_studijskega_leta'];
             $pre->save();
         }
     }
     if (array_key_exists('strokovni', $list)) {
         if ($list['strokovni'] != 0) {
             $pre = new Vpisan_predmet();
             $pre->vpisna_stevilka = $vpisna['vpisna'];
             $pre->sifra_predmeta = $strokovno_izbirni[$list['strokovni'] - 1];
             $pre->sifra_studijskega_leta = $vpisna['sifra_studijskega_leta'];
             $pre->sifra_studijskega_programa = $vpisna['sifra_studijskega_programa'];
             $pre->sifra_letnika = $vpisna['sifra_letnika'];
             $pre->sifra_studijskega_leta_izvedbe_predmeta = $vpisna['sifra_studijskega_leta'];
             $pre->save();
         } else {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 1])->withErrors("Izberite en strokovni predmet!");
         }
     }
     if (array_key_exists('modul', $list)) {
         if ($list['modul'] == 6 || $list['modul'] == 7) {
             $list['modul'] = $list['modul'] + 2;
         }
         $modul = Predmet_studijskega_programa::where('sifra_sestavnega_dela', $list['modul'])->where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->lists('sifra_predmeta');
         for ($i = 0; $i < count($modul); $i++) {
             $pre = new Vpisan_predmet();
             $pre->vpisna_stevilka = $vpisna['vpisna'];
             $pre->sifra_predmeta = $modul[$i];
             $pre->sifra_studijskega_leta = $vpisna['sifra_studijskega_leta'];
             $pre->sifra_studijskega_programa = $vpisna['sifra_studijskega_programa'];
             $pre->sifra_letnika = $vpisna['sifra_letnika'];
             $pre->sifra_studijskega_leta_izvedbe_predmeta = $vpisna['sifra_studijskega_leta'];
             $pre->save();
         }
     }
     if (array_key_exists('modul2', $list)) {
         if ($list['modul2'] == 6 || $list['modul2'] == 7) {
             $list['modul2'] = $list['modul2'] + 2;
         }
         $modul = Predmet_studijskega_programa::where('sifra_sestavnega_dela', $list['modul2'])->where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->lists('sifra_predmeta');
         for ($i = 0; $i < count($modul); $i++) {
             $pre = new Vpisan_predmet();
             $pre->vpisna_stevilka = $vpisna['vpisna'];
             $pre->sifra_predmeta = $modul[$i];
             $pre->sifra_studijskega_leta = $vpisna['sifra_studijskega_leta'];
             $pre->sifra_studijskega_programa = $vpisna['sifra_studijskega_programa'];
             $pre->sifra_letnika = $vpisna['sifra_letnika'];
             $pre->sifra_studijskega_leta_izvedbe_predmeta = $vpisna['sifra_studijskega_leta'];
             $pre->save();
         }
     }
     $predmeti = Vpisan_predmet::where('vpisna_stevilka', $vpisna['vpisna'])->where('sifra_studijskega_programa', $vpisna['sifra_studijskega_programa'])->where('sifra_letnika', $vpisna['sifra_letnika'])->where('sifra_studijskega_leta', $vpisna['sifra_studijskega_leta'])->lists('sifra_predmeta');
     $suma = 0;
     for ($i = 0; $i < count($predmeti); $i++) {
         $suma += Predmet::where('sifra_predmeta', $predmeti[$i])->pluck('stevilo_KT');
     }
     if ($suma < 60) {
         if ($vpisna['sifra_letnika'] == 3 && $vpisna['zeton'] == 1) {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => $modularni, 'tips' => 1])->withErrors("Nimate dovolj KT!");
         } else {
             return view('predmeti', ['studijski_program' => $stp, 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $vp, 'modularni' => [], 'tips' => 1])->withErrors("Nimate dovolj KT!");
         }
     }
     return redirect('home')->with('message', 'Vpisni list je oddan!');
 }
 public function izpisi($premet, $datum)
 {
     $info = Input::get('row');
     $ime_sw = 0;
     if (Input::get('ime')) {
         $ime_sw = 1;
     }
     $profesorDATA = Profesor::where('sifra_profesorja', explode("-", $info)[0])->first();
     $profesor = $profesorDATA->ime_profesorja . " " . $profesorDATA->priimek_profesorja;
     $ime_predmet = Predmet::where('sifra_predmeta', $premet)->pluck('naziv_predmeta');
     $prostor = explode("-", $info)[1];
     $ura = explode("-", $info)[2];
     $stLet = explode("-", $info)[3];
     $studLeto = Studijsko_leto::where('sifra_studijskega_leta', $stLet)->first()->stevilka_studijskega_leta;
     $rezultatiRAW = Izpit::where('sifra_predmeta', $premet)->where('datum', $datum)->whereNotNull('ocena')->where('ocena', '>', 0)->get();
     //KOKAN PEDER
     $studenti = [];
     for ($i = 0; $i < count($rezultatiRAW); $i++) {
         $studenti[$i] = Student::where('vpisna_stevilka', $rezultatiRAW[$i]->vpisna_stevilka)->first();
     }
     usort($studenti, array($this, "cmp"));
     $rezultati = [];
     for ($i = 0; $i < count($studenti); $i++) {
         $rezultati[$i] = Izpit::where('sifra_predmeta', $premet)->where('datum', $datum)->where('vpisna_stevilka', $studenti[$i]->vpisna_stevilka)->first();
     }
     $polaganje = [];
     $polaganjeLetos = [];
     $stLetVpis = [];
     for ($i = 0; $i < count($studenti); $i++) {
         $polaganje[$i] = Izpit::where('sifra_predmeta', $premet)->where('vpisna_stevilka', $studenti[$i]->vpisna_stevilka)->where('ocena', '>', 0)->where('datum', '<', $datum)->count();
         $polaganjeLetos[$i] = Izpit::where('sifra_predmeta', $premet)->where('vpisna_stevilka', $studenti[$i]->vpisna_stevilka)->where('ocena', '>', 0)->where('datum', '<', $datum)->where('sifra_studijskega_leta', $stLet)->count();
         $tmpLetVpis = Vpisan_predmet::where('sifra_predmeta', $premet)->where('vpisna_stevilka', $studenti[$i]->vpisna_stevilka)->orderBy('sifra_studijskega_leta')->first();
         $stLetVpis[$i] = Studijsko_leto::where('sifra_studijskega_leta', $tmpLetVpis->sifra_studijskega_leta)->first()->stevilka_studijskega_leta;
     }
     //dd($polaganje);
     //echo $rezultati;
     //$view="";
     $view = view('oceneizpit', ['rez' => $rezultati, 'sifra_predmeta' => $premet, 'ime_predmet' => $ime_predmet, 'datum' => $datum, 'ura' => $ura, 'prostor' => $prostor, 'profesor' => $profesor, 'polaganje' => $polaganje, 'trig' => $ime_sw, 'student' => $studenti, 'stlet' => $studLeto, 'polaganjeLetos' => $polaganjeLetos, 'stLetVpis' => $stLetVpis, 'html' => ""])->renderSections()['content'];
     //dd($view);
     return view('oceneizpit', ['rez' => $rezultati, 'sifra_predmeta' => $premet, 'ime_predmet' => $ime_predmet, 'datum' => $datum, 'ura' => $ura, 'prostor' => $prostor, 'profesor' => $profesor, 'polaganje' => $polaganje, 'trig' => $ime_sw, 'student' => $studenti, 'stlet' => $studLeto, 'polaganjeLetos' => $polaganjeLetos, 'stLetVpis' => $stLetVpis, 'html' => $view]);
 }
 public function vpisi(Requests\VpisniListRequest $request)
 {
     if ($user = Auth::user()) {
         if ($user->type == 0) {
             $programi = Studijski_program::get();
             $studijski_programi = [];
             for ($i = 0; $i < count($programi); $i++) {
                 $studijski_programi[$i] = $programi[$i]->sifra_studijskega_programa . " " . $programi[$i]->naziv_studijskega_programa;
             }
             $drzave = Drzava::lists('naziv_drzave');
             $obcine = Obcina::lists('naziv_obcine');
             $vrste_vpisa = Vrsta_vpisa::lists('opis_vrste_vpisa');
             $oblik = Oblika_studija::lists('opis_oblike_studija');
             $nacin = Nacin_studija::lists('opis_nacina_studija');
             $posti = Posta::get();
             $poste = [];
             for ($i = 0; $i < count($posti); $i++) {
                 $poste[$i] = $posti[$i]->postna_stevilka . " " . $posti[$i]->naziv_poste;
             }
             array_unshift($poste, "");
             $studija = Vrsta_studija::get();
             $vrste_studija = [];
             for ($i = 0; $i < count($studija); $i++) {
                 $vrste_studija[$i] = $studija[$i]->sifra_vrste_studija . " " . $studija[$i]->opis_vrste_studija;
             }
             $list = $request->all();
             $errors = [];
             if ($list['drzavarojstva'] == 0) {
                 $errors[] = "Selektirajte drazavo rojstva!";
             }
             if ($list['krajrojstva'] == 0) {
                 $errors[] = "Selektirajte občino rojstva!";
             }
             if ($list['drzavljanstvo'] == 0) {
                 $errors[] = "Selektirajte drzavljanstvo!";
             }
             if ($list['postastalno'] == 0) {
                 $errors[] = "Selektirajte pošto stalnega bivališča!";
             }
             if ($list['studiskiprogram'] == 0) {
                 $errors[] = "Selektirajte študujski program!";
             }
             if ($list['vrstastudija'] == 0) {
                 $errors[] = "Selektirajte vrsto študija!";
             }
             if ($list['vrstavpisa'] == 0) {
                 $errors[] = "Selektirajte vrsto vpisa!";
             }
             if ($list['letnikdodatno'] == 0) {
                 $errors[] = "Selektirajte letnika!";
             }
             if ($list['nacin'] == 0) {
                 $errors[] = "Selektirajte načina študija!";
             }
             if ($list['oblika'] == 0) {
                 $errors[] = "Selektirajte obliko študija!";
             }
             if (!empty($errors)) {
                 return Redirect::back()->withInput()->withErrors($errors);
             }
             $emso = $list["emso"];
             $datum = $list["datumrojstva"];
             $std = new Student();
             if (!Student::where('vpisna_stevilka', $list["vstevilka"])->first()) {
                 $std->vpisna_stevilka = $list["vstevilka"];
                 $std->ime_studenta = ucfirst(explode(" ", $list["imepriimek"])[0]);
                 $std->priimek_studenta = ucfirst(explode(" ", $list["imepriimek"])[1]);
                 $std->datum_rojstva = date("Y-m-d", strtotime($datum));
                 $std->sifra_obcine_rojstva = Obcina::where('naziv_obcine', $obcine[$list['krajrojstva'] - 1])->pluck('sifra_obcine');
                 $std->sifra_drzave_rojstva = Drzava::where('naziv_drzave', $drzave[$list['drzavarojstva'] - 1])->pluck('sifra_drzave');
                 $std->sifra_drzave_drzavljanstva = Drzava::where('naziv_drzave', $drzave[$list['drzavljanstvo'] - 1])->pluck('sifra_drzave');
                 $std->spol = strtoupper($list["spol"])[0];
                 if (Drzava::where('sifra_drzave', $std->sifra_drzave_rojstva)->pluck('naziv_drzave') == "Slovenija" && $std->sifra_obcine_rojstva == 999) {
                     return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država rojstva!");
                 } elseif (Drzava::where('sifra_drzave', $std->sifra_drzave_rojstva)->pluck('naziv_drzave') != "Slovenija" && $std->sifra_obcine_rojstva != 999) {
                     return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država rojstva!");
                 }
                 if (substr($datum, 0, 2) == substr($emso, 0, 2) && substr($datum, 3, 2) == substr($emso, 2, 2) && substr($datum, 7, 3) == substr($emso, 4, 3) && substr($emso, 7, 2) > 49 && substr($emso, 7, 2) < 60) {
                     if ($std->spol == "M" && substr($emso, 9, 3) >= 0 && substr($emso, 9, 3) < 500) {
                         $kontrolna = $emso[0] * 7 + $emso[1] * 6 + $emso[2] * 5 + $emso[3] * 4 + $emso[4] * 3 + $emso[5] * 2 + $emso[6] * 7 + $emso[7] * 6 + $emso[8] * 5 + $emso[9] * 4 + $emso[10] * 3 + $emso[11] * 2;
                         $ost = 11 - $kontrolna % 11;
                         if ($emso[12] == $ost) {
                             $std->emso = $emso;
                         } else {
                             return Redirect::back()->withInput()->withErrors("Napačno EMŠO!!! (kontrolna)");
                         }
                     } elseif (($std->spol == "Z" || $std->spol == "Ž") && substr($emso, 9, 3) >= 500 && substr($emso, 9, 3) < 1000) {
                         $kontrolna = $emso[0] * 7 + $emso[1] * 6 + $emso[2] * 5 + $emso[3] * 4 + $emso[4] * 3 + $emso[5] * 2 + $emso[6] * 7 + $emso[7] * 6 + $emso[8] * 5 + $emso[9] * 4 + $emso[10] * 3 + $emso[11] * 2;
                         $ost = 11 - $kontrolna % 11;
                         if ($emso[12] == $ost) {
                             $std->emso = $emso;
                         } else {
                             return Redirect::back()->withInput()->withErrors("Napačno EMŠO!!! (kontrolna)");
                         }
                     } else {
                         return Redirect::back()->withInput()->withErrors("Napačno EMŠO!!! (spol)");
                     }
                 } else {
                     return Redirect::back()->withInput()->withErrors("Napačno EMŠO!!! (datum)");
                 }
                 $std->davcna_stevilka = $list["davcna"];
                 $std->email_studenta = $list["email"];
                 $std->prenosni_telefon = $list["gsm"];
                 $std->postna_stevilka_stalno = explode(" ", $poste[$list['postastalno']])[0];
                 $std->sifra_obcine_stalno = Obcina::where('naziv_obcine', $obcine[$list['obcinastalno'] - 1])->pluck('sifra_obcine');
                 $std->sifra_drzave_stalno = Drzava::where('naziv_drzave', $drzave[$list['drzavastalno'] - 1])->pluck('sifra_drzave');
                 $std->naslov_stalno = $list["naslovstalno"];
                 if (Drzava::where('sifra_drzave', $std->sifra_drzave_stalno)->pluck('naziv_drzave') == "Slovenija" && !$std->sifra_obcine_stalno == 999) {
                     return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država stalnega prebivališča!");
                 } elseif (Drzava::where('sifra_drzave', $std->sifra_drzave_stalno)->pluck('naziv_drzave') != "Slovenija" && $std->sifra_obcine_stalno != 999) {
                     return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država stalnega prebivališča!");
                 }
                 if (!empty($list['obcinazacasno'])) {
                     $std->postna_stevilka_zacasno = explode(" ", $poste[$list['postazacasno']])[0];
                     $std->sifra_obcine_zacasno = Obcina::where('naziv_obcine', $obcine[$list['obcinazacasno'] - 1])->pluck('sifra_obcine');
                     $std->sifra_drzave_zacasno = Drzava::where('naziv_drzave', $drzave[$list['drzavazacasno'] - 1])->pluck('sifra_drzave');
                     $std->naslov_zacasno = $list["naslovzacasno"];
                     if (Drzava::where('sifra_drzave', $std->sifra_drzave_zacasno)->pluck('naziv_drzave') == "Slovenija" && $std->sifra_obcine_zacasno == 999) {
                         return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država začasnega prebivališča!");
                     } elseif (Drzava::where('sifra_drzave', $std->sifra_drzave_zacasno)->pluck('naziv_drzave') != "Slovenija" && $std->sifra_obcine_zacasnoo != 999) {
                         return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država začasnega prebivališča!");
                     }
                 }
                 if ($list['vrocanje'] == 'vstalno') {
                     $std->naslov_vrocanja = $list["naslovstalno"];
                 } elseif ($list['vrocanje'] == 'vzacasno') {
                     $std->naslov_vrocanja = $list["naslovzacasno"];
                 }
                 $std->save();
             }
             $vp = new Vpis();
             $vp->sifra_studijskega_programa = explode(" ", $studijski_programi[$list['studiskiprogram'] - 1])[0];
             $vp->sifra_vrste_studija = explode(" ", $vrste_studija[$list['vrstastudija'] - 1])[0];
             $vp->sifra_vrste_vpisa = Vrsta_vpisa::where('opis_vrste_vpisa', $vrste_vpisa[$list['vrstavpisa'] - 1])->pluck('sifra_vrste_vpisa');
             if ($vp->sifra_vrste_studija == 16204 && !($vp->sifra_studijskega_programa == 1000425 || $vp->sifra_studijskega_programa == 1000475 || $vp->sifra_studijskega_programa == 1001001 || $vp->sifra_studijskega_programa == 1000469)) {
                 return Redirect::back()->withInput()->withErrors("Napačna kombinacija študijski program + vrsta študija UNI");
             } elseif ($vp->sifra_vrste_studija == 16203 && !($vp->sifra_studijskega_programa == 1000470 || $vp->sifra_studijskega_programa == 1000477)) {
                 return Redirect::back()->withInput()->withErrors("Napačna kombinacija študijski program + vrsta študija VS");
             } elseif ($vp->sifra_vrste_studija == 17003 && !($vp->sifra_studijskega_programa == 1000471 || $vp->sifra_studijskega_programa == 1000934)) {
                 return Redirect::back()->withInput()->withErrors("Napačna kombinacija študijski program + vrsta študija MAG");
             }
             $vp->sifra_letnika = $list['letnikdodatno'];
             if ($vp->sifra_vrste_vpisa == 1 && $vp->sifra_letnika != 1) {
                 return Redirect::back()->withInput()->withErrors("Napačѝna kombinacija vrsta vpisa + letnik");
             } elseif ($vp->sifra_vrste_vpisa == 2 && $vp->sifra_letnika == 1) {
                 return Redirect::back()->withInput()->withErrors("Napačna kombinacija vrsta vpisa + letnik");
             } elseif ($vp->sifra_vrste_vpisa == 3 && $vp->sifra_letnika == 1) {
                 return Redirect::back()->withInput()->withErrors("Napačna kombinacija vrsta vpisa + letnik");
             }
             $vp->sifra_nacina_studija = Nacin_studija::where('opis_nacina_studija', $nacin[$list['nacin'] - 1])->pluck('sifra_nacina_studija');
             $vp->sifra_oblike_studija = Oblika_studija::where('opis_oblike_studija', $oblik[$list['oblika'] - 1])->pluck('sifra_oblike_studija');
             $vp->sifra_studijskega_leta = Studijsko_leto::where('stevilka_studijskega_leta', date('Y') . "/" . (date('Y') + 1))->pluck('sifra_studijskega_leta');
             $vp->vpisna_stevilka = $list["vstevilka"];
             if (array_key_exists('zavod', $list)) {
                 $vp->zavod = $list['zavod'];
             }
             if (array_key_exists('krajizvajanja', $list)) {
                 $vp->kraj_izvajanja = $list['krajizvajanja'];
             }
             $vp->save();
             $obvezni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vp->sifra_studijskega_programa)->where('sifra_letnika', $vp->sifra_letnika)->where('sifra_sestavnega_dela', NULL)->lists('sifra_predmeta');
             $obvezni_predmeti = [];
             $sum = 0;
             for ($i = 0; $i < count($obvezni); $i++) {
                 $obvezni_predmeti[$i] = [Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $obvezni[$i])->pluck('sifra_profesorja'))->pluck('priimek_profesorja'), Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $obvezni[$i])->pluck('sifra_profesorja'))->pluck('ime_profesorja'), Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('naziv_predmeta'), Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('stevilo_KT')];
                 $vpisi = new Vpisan_predmet();
                 $vpisi->vpisna_stevilka = $list["vstevilka"];
                 $vpisi->sifra_studijskega_leta = $vp->sifra_studijskega_leta;
                 $vpisi->sifra_predmeta = $obvezni[$i];
                 $vpisi->sifra_studijskega_programa = $vp->sifra_studijskega_programa;
                 $vpisi->sifra_letnika = $vp->sifra_letnika;
                 $vpisi->sifra_studijskega_leta_izvedbe_predmeta = $vp->sifra_studijskega_leta;
                 $vpisi->save();
                 $sum += Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('stevilo_KT');
             }
             $prosto_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vp->sifra_studijskega_programa)->where('sifra_letnika', $vp->sifra_letnika)->where('sifra_sestavnega_dela', '7')->lists('sifra_predmeta');
             $prosti = [];
             for ($i = 0; $i < count($prosto_izbirni); $i++) {
                 $prosti[$i] = Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('stevilo_KT') . " KT";
             }
             if (!empty($prosti)) {
                 array_unshift($prosti, "");
             }
             $strokovno_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vp->sifra_studijskega_programa)->where('sifra_letnika', $vp->sifra_letnika)->where('sifra_sestavnega_dela', '6')->lists('sifra_predmeta');
             $strokovni = [];
             for ($i = 0; $i < count($strokovno_izbirni); $i++) {
                 $strokovni[$i] = Predmet::where('sifra_predmeta', $strokovno_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $strokovno_izbirni[$i])->pluck('stevilo_KT') . " KT";
             }
             if (!empty($strokovni)) {
                 array_unshift($strokovni, "");
             }
             $pomos = $vp->vpisna_stevilka . $vp->sifra_studijskega_leta . $vp->sifra_studijskega_programa . $vp->sifra_letnika;
             return view('predmeti', ['studijski_program' => $studijski_programi[$list['studiskiprogram'] - 1], 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'vpisna' => $pomos, 'tips' => 0]);
         } elseif ($user->type == 1) {
             $list = $request->all();
             $drzave = Drzava::lists('naziv_drzave');
             $obcine = Obcina::lists('naziv_obcine');
             $zet = Zeton::where('vpisna_stevilka', $list["vstevilka"])->where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->where('zeton_porabljen', 0)->get();
             $programi = [];
             $lemnik = [];
             $vpisa = [];
             $oblike = [];
             $nacine = [];
             for ($i = 0; $i < count($zet); $i++) {
                 $zet[0] = $zet[$i];
                 $programi[$i] = $zet[$i]->sifra_studijskega_programa;
                 $lemnik[$i] = $zet[$i]->sifra_letnika;
                 $vpisa[$i] = $zet[$i]->sifra_vrste_vpisa;
                 $oblike[$i] = $zet[$i]->sifra_oblike_studija;
                 $nacine[$i] = $zet[$i]->sifra_nacina_studija;
             }
             Vpis::where('vpisna_stevilka', $list["vstevilka"])->where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->update(['vpis_potrjen' => 0]);
             Vpis::where('vpisna_stevilka', $list["vstevilka"])->where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->delete();
             $studijski_programi = [];
             for ($i = 0; $i < count($programi); $i++) {
                 $studijski_programi[$i] = $programi[$i] . " " . Studijski_program::where('sifra_studijskega_programa', $programi[$i])->pluck('naziv_studijskega_programa');
             }
             array_unshift($studijski_programi, "");
             $letnik = [];
             for ($i = 0; $i < count($lemnik); $i++) {
                 $letnik[$i] = Letnik::where('sifra_letnika', $lemnik[$i])->pluck('stevilka_letnika');
             }
             array_unshift($letnik, "");
             $oblik = [];
             for ($i = 0; $i < count($oblike); $i++) {
                 $oblik[$i] = Oblika_studija::where('sifra_oblike_studija', $oblike[$i])->pluck('opis_oblike_studija');
             }
             array_unshift($oblik, "");
             $nacin = [];
             for ($i = 0; $i < count($nacine); $i++) {
                 $nacin[$i] = Nacin_studija::where('sifra_nacina_studija', $nacine[$i])->pluck('opis_nacina_studija');
             }
             array_unshift($nacin, "");
             $vrste_vpisa = [];
             for ($i = 0; $i < count($vpisa); $i++) {
                 $vrste_vpisa[$i] = Vrsta_vpisa::where('sifra_vrste_vpisa', $vpisa[$i])->pluck('opis_vrste_vpisa');
             }
             array_unshift($vrste_vpisa, "");
             $posti = Posta::get();
             $poste = [];
             for ($i = 0; $i < count($posti); $i++) {
                 $poste[$i] = $posti[$i]->postna_stevilka . " " . $posti[$i]->naziv_poste;
             }
             array_unshift($poste, "");
             $studija = Vrsta_studija::get();
             $vrste_studija = [];
             for ($i = 0; $i < count($studija); $i++) {
                 $vrste_studija[$i] = $studija[$i]->sifra_vrste_studija . " " . $studija[$i]->opis_vrste_studija;
             }
             $errors = [];
             if ($list['drzavarojstva'] == 0) {
                 $errors[] = "Selektirajte drazavo rojstva!";
             }
             if ($list['krajrojstva'] == 0) {
                 $errors[] = "Selektirajte občino rojstva!";
             }
             if ($list['drzavljanstvo'] == 0) {
                 $errors[] = "Selektirajte drzavljanstvo!";
             }
             if ($list['postastalno'] == 0) {
                 $errors[] = "Selektirajte pošto stalnega bivališča!";
             }
             if ($list['studiskiprogram'] == 0) {
                 $errors[] = "Selektirajte študujski program!";
             }
             if ($list['vrstastudija'] == 0) {
                 $errors[] = "Selektirajte vrsto študija!";
             }
             if ($list['vrstavpisa'] == 0) {
                 $errors[] = "Selektirajte vrsto vpisa!";
             }
             if ($list['letnikdodatno'] == 0) {
                 $errors[] = "Selektirajte letnika!";
             }
             if ($list['nacin'] == 0) {
                 $errors[] = "Selektirajte načina študija!";
             }
             if ($list['oblika'] == 0) {
                 $errors[] = "Selektirajte obliko študija!";
             }
             if (!empty($errors)) {
                 return Redirect::back()->withInput()->withErrors($errors);
             }
             $emso = $list["emso"];
             $datum = $list["datumrojstva"];
             Vpisan_predmet::where('vpisna_stevilka', $list["vstevilka"])->where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->delete();
             $std = Student::where('vpisna_stevilka', $list["vstevilka"])->get()[0];
             $std->ime_studenta = ucfirst(explode(" ", $list["imepriimek"])[0]);
             $std->priimek_studenta = ucfirst(explode(" ", $list["imepriimek"])[1]);
             $std->datum_rojstva = date("Y-m-d", strtotime($datum));
             $std->sifra_obcine_rojstva = Obcina::where('naziv_obcine', $obcine[$list['krajrojstva'] - 1])->pluck('sifra_obcine');
             $std->sifra_drzave_rojstva = Drzava::where('naziv_drzave', $drzave[$list['drzavarojstva'] - 1])->pluck('sifra_drzave');
             $std->sifra_drzave_drzavljanstva = Drzava::where('naziv_drzave', $drzave[$list['drzavljanstvo'] - 1])->pluck('sifra_drzave');
             $std->spol = strtoupper($list["spol"])[0];
             if (Drzava::where('sifra_drzave', $std->sifra_drzave_rojstva)->pluck('naziv_drzave') == "Slovenija" && $std->sifra_obcine_rojstva == 999) {
                 return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država rojstva!");
             } elseif (Drzava::where('sifra_drzave', $std->sifra_drzave_rojstva)->pluck('naziv_drzave') != "Slovenija" && $std->sifra_obcine_rojstva != 999) {
                 return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država rojstva!");
             }
             if (substr($datum, 0, 2) == substr($emso, 0, 2) && substr($datum, 3, 2) == substr($emso, 2, 2) && substr($datum, 7, 3) == substr($emso, 4, 3) && substr($emso, 7, 2) > 49 && substr($emso, 7, 2) < 60) {
                 if ($std->spol == "M" && substr($emso, 9, 3) >= 0 && substr($emso, 9, 3) < 500) {
                     $kontrolna = $emso[0] * 7 + $emso[1] * 6 + $emso[2] * 5 + $emso[3] * 4 + $emso[4] * 3 + $emso[5] * 2 + $emso[6] * 7 + $emso[7] * 6 + $emso[8] * 5 + $emso[9] * 4 + $emso[10] * 3 + $emso[11] * 2;
                     $ost = 11 - $kontrolna % 11;
                     if ($emso[12] == $ost) {
                         $std->emso = $emso;
                     } else {
                         return Redirect::back()->withInput()->withErrors("Napačno EMŠO!!! (kontrolna)");
                     }
                 } elseif (($std->spol == "Z" || $std->spol == "Ž") && substr($emso, 9, 3) >= 500 && substr($emso, 9, 3) < 1000) {
                     $kontrolna = $emso[0] * 7 + $emso[1] * 6 + $emso[2] * 5 + $emso[3] * 4 + $emso[4] * 3 + $emso[5] * 2 + $emso[6] * 7 + $emso[7] * 6 + $emso[8] * 5 + $emso[9] * 4 + $emso[10] * 3 + $emso[11] * 2;
                     $ost = 11 - $kontrolna % 11;
                     if ($emso[12] == $ost) {
                         $std->emso = $emso;
                     } else {
                         return Redirect::back()->withInput()->withErrors("Napačno EMŠO!!! (kontrolna)");
                     }
                 } else {
                     return Redirect::back()->withInput()->withErrors("Napačno EMŠO!!! (spol)");
                 }
             } else {
                 return Redirect::back()->withInput()->withErrors("Napačno EMŠO!!! (datum)");
             }
             $std->davcna_stevilka = $list["davcna"];
             $std->email_studenta = $list["email"];
             $std->prenosni_telefon = $list["gsm"];
             $std->postna_stevilka_stalno = explode(" ", $poste[$list['postastalno']])[0];
             $std->sifra_obcine_stalno = Obcina::where('naziv_obcine', $obcine[$list['obcinastalno'] - 1])->pluck('sifra_obcine');
             $std->sifra_drzave_stalno = Drzava::where('naziv_drzave', $drzave[$list['drzavastalno'] - 1])->pluck('sifra_drzave');
             $std->naslov_stalno = $list["naslovstalno"];
             if (Drzava::where('sifra_drzave', $std->sifra_drzave_stalno)->pluck('naziv_drzave') == "Slovenija" && !$std->sifra_obcine_stalno == 999) {
                 return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država stalnega prebivališča!");
             } elseif (Drzava::where('sifra_drzave', $std->sifra_drzave_stalno)->pluck('naziv_drzave') != "Slovenija" && $std->sifra_obcine_stalno != 999) {
                 return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država stalnega prebivališča!");
             }
             if (!empty($list['obcinazacasno'])) {
                 $std->postna_stevilka_zacasno = explode(" ", $poste[$list['postazacasno']])[0];
                 $std->sifra_obcine_zacasno = Obcina::where('naziv_obcine', $obcine[$list['obcinazacasno'] - 1])->pluck('sifra_obcine');
                 $std->sifra_drzave_zacasno = Drzava::where('naziv_drzave', $drzave[$list['drzavazacasno'] - 1])->pluck('sifra_drzave');
                 $std->naslov_zacasno = $list["naslovzacasno"];
                 if (Drzava::where('sifra_drzave', $std->sifra_drzave_zacasno)->pluck('naziv_drzave') == "Slovenija" && $std->sifra_obcine_zacasno == 999) {
                     return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država začasnega prebivališča!");
                 } elseif (Drzava::where('sifra_drzave', $std->sifra_drzave_zacasno)->pluck('naziv_drzave') != "Slovenija" && $std->sifra_obcine_zacasnoo != 999) {
                     return Redirect::back()->withInput()->withErrors("Izbrana napačna občina ali država začasnega prebivališča!");
                 }
             }
             if ($list['vrocanje'] == 'vstalno') {
                 $std->naslov_vrocanja = $list["naslovstalno"];
             } elseif ($list['vrocanje'] == 'vzacasno') {
                 $std->naslov_vrocanja = $list["naslovzacasno"];
             }
             $std->save();
             $vp = new Vpis();
             $vp->vpisna_stevilka = $list["vstevilka"];
             $vp->sifra_vrste_studija = explode(" ", $vrste_studija[$list['vrstastudija']])[0];
             $vp->sifra_studijskega_programa = $programi[$list['studiskiprogram'] - 1];
             $vp->sifra_vrste_vpisa = $vpisa[$list['vrstavpisa'] - 1];
             $vp->sifra_oblike_studija = $oblike[$list['oblika'] - 1];
             $vp->sifra_studijskega_leta = substr(date('Y'), 2, 2);
             $vp->sifra_nacina_studija = $nacine[$list['nacin'] - 1];
             $vp->sifra_letnika = $lemnik[$list['letnikdodatno'] - 1];
             $prostaizbira = $zet[0]->prosta_izbira_predmetov;
             /*if($vp->sifra_vrste_studija == 16204 && !($vp->sifra_studijskega_programa == 1000425 || $vp->sifra_studijskega_programa == 1000475
                       || $vp->sifra_studijskega_programa == 1001001 || $vp->sifra_studijskega_programa == 1000469))
                   return Redirect::back()->withInput()->withErrors("Napačna kombinacija študijski program + vrsta študija UNI");
               elseif($vp->sifra_vrste_studija == 16203 && !($vp->sifra_studijskega_programa == 1000470 || $vp->sifra_studijskega_programa == 1000477))
                   return Redirect::back()->withInput()->withErrors("Napačna kombinacija študijski program + vrsta študija VS");
               elseif($vp->sifra_vrste_studija == 17003 && !($vp->sifra_studijskega_programa == 1000471 || $vp->sifra_studijskega_programa == 1000934))
                   return Redirect::back()->withInput()->withErrors("Napačna kombinacija študijski program + vrsta študija MAG");*/
             if (array_key_exists('zavod', $list)) {
                 $vp->zavod = $list['zavod'];
             }
             if (array_key_exists('krajizvajanja', $list)) {
                 $vp->kraj_izvajanja = $list['krajizvajanja'];
             }
             /*if($vp->sifra_vrste_vpisa == 1 && $vp->sifra_letnika != $let+1)
                                 return Redirect::back()->withInput()->withErrors("Napačna kombinacija vrsta vpisa + letnik");
                             elseif($vp->sifra_vrste_vpisa == 2 &&  $vp->sifra_letnika != $let)
                                 return Redirect::back()->withInput()->withErrors("Napačna kombinacija vrsta vpisa + letnik");
                             elseif($vp->sifra_vrste_vpisa == 3 &&  $vp->sifra_letnika != $let)
                                 return Redirect::back()->withInput()->withErrors("Napačna kombinacija vrsta vpisa + letnik");
             
                             if($vp->sifra_vrste_vpisa == 2)
                                 Vpisan_predmet::where('vpisna_stevilka', $list['vstevilka'])->where('sifra_letnika', $vp->sifra_letnika)->delete();*/
             $vp->save();
             $obvezni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vp->sifra_studijskega_programa)->where('sifra_letnika', $vp->sifra_letnika)->where('sifra_sestavnega_dela', NULL)->lists('sifra_predmeta');
             $obvezni_predmeti = [];
             $sum = 0;
             for ($i = 0; $i < count($obvezni); $i++) {
                 $obvezni_predmeti[$i] = [Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $obvezni[$i])->pluck('sifra_profesorja'))->pluck('priimek_profesorja'), Profesor::where('sifra_profesorja', Izvedba_predmeta::where('sifra_predmeta', $obvezni[$i])->pluck('sifra_profesorja'))->pluck('ime_profesorja'), Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('naziv_predmeta'), Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('stevilo_KT')];
                 $vpisi = new Vpisan_predmet();
                 $vpisi->vpisna_stevilka = $list["vstevilka"];
                 $vpisi->sifra_studijskega_leta = $vp->sifra_studijskega_leta;
                 $vpisi->sifra_predmeta = $obvezni[$i];
                 $vpisi->sifra_studijskega_programa = $vp->sifra_studijskega_programa;
                 $vpisi->sifra_letnika = $vp->sifra_letnika;
                 $vpisi->sifra_studijskega_leta_izvedbe_predmeta = $vp->sifra_studijskega_leta;
                 $vpisi->save();
                 $sum += Predmet::where('sifra_predmeta', $obvezni[$i])->pluck('stevilo_KT');
             }
             $strokovno_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vp->sifra_studijskega_programa)->where('sifra_letnika', $vp->sifra_letnika)->where('sifra_sestavnega_dela', '6')->lists('sifra_predmeta');
             $strokovni = [];
             for ($i = 0; $i < count($strokovno_izbirni); $i++) {
                 $strokovni[$i] = Predmet::where('sifra_predmeta', $strokovno_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $strokovno_izbirni[$i])->pluck('stevilo_KT') . " KT";
             }
             if (!empty($strokovni)) {
                 array_unshift($strokovni, "");
             }
             $moduli = [];
             if ($vp->sifra_letnika == 3) {
                 $moduli = Sestavni_del_predmetnika::where('sifra_sestavnega_dela', '!=', '6')->where('sifra_sestavnega_dela', '!=', '7')->lists('opis_sestavnega_dela');
                 array_unshift($moduli, "");
             }
             $pomos = $list["vstevilka"] . $vp->sifra_studijskega_leta . $vp->sifra_studijskega_programa . $vp->sifra_letnika . $prostaizbira;
             $modularni = [];
             if ($vp->sifra_letnika == 1) {
                 Zeton::where('vpisna_stevilka', $list['vstevilka'])->where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->where('sifra_letnika', $vp->sifra_letnika)->update(['zeton_porabljen' => 1]);
                 return view('predmeti', ['studijski_program' => $studijski_programi[$list['studiskiprogram'] - 1], 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => [], 'strokovni' => [], 'moduli' => [], 'vpisna' => $pomos, 'modularni' => [], 'tips' => 0]);
             }
             if ($vp->sifra_letnika == 2) {
                 $prosto_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vp->sifra_studijskega_programa)->where('sifra_letnika', $vp->sifra_letnika)->whereBetween('sifra_sestavnega_dela', [6, 7])->lists('sifra_predmeta');
                 $prosti = [];
                 for ($i = 0; $i < count($prosto_izbirni); $i++) {
                     $prosti[$i] = Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('stevilo_KT') . " KT";
                 }
             } else {
                 $prosto_izbirni = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vp->sifra_studijskega_programa)->where('sifra_letnika', $vp->sifra_letnika)->whereNotNull('sifra_sestavnega_dela')->lists('sifra_predmeta');
                 $prosti = [];
                 for ($i = 0; $i < count($prosto_izbirni); $i++) {
                     $prosti[$i] = Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $prosto_izbirni[$i])->pluck('stevilo_KT') . " KT";
                 }
             }
             if (!empty($prosti)) {
                 array_unshift($prosti, "");
             }
             if ($vp->sifra_letnika == 3 && $prostaizbira == 1) {
                 $modpredmeti = Predmet_studijskega_programa::where('sifra_studijskega_programa', $vp->sifra_studijskega_programa)->where('sifra_letnika', $vp->sifra_letnika)->where('sifra_sestavnega_dela', '!=', '6')->where('sifra_sestavnega_dela', '!=', '7')->whereNotNull('sifra_sestavnega_dela')->lists('sifra_predmeta');
                 for ($i = 0; $i < count($modpredmeti); $i++) {
                     $modularni[$i] = Predmet::where('sifra_predmeta', $modpredmeti[$i])->pluck('naziv_predmeta') . " - " . Predmet::where('sifra_predmeta', $modpredmeti[$i])->pluck('stevilo_KT') . " KT";
                 }
                 if (!empty($modularni)) {
                     array_unshift($modularni, "");
                 }
             }
             return view('predmeti', ['studijski_program' => $studijski_programi[$list['studiskiprogram'] - 1], 'predmeti' => $obvezni_predmeti, 'sum' => $sum, 'prosti' => $prosti, 'strokovni' => $strokovni, 'moduli' => $moduli, 'vpisna' => $pomos, 'modularni' => $modularni, 'tips' => 0]);
         }
     }
 }
 public function RokiR($vp)
 {
     date_default_timezone_set('Europe/Ljubljana');
     $student = Student::where('vpisna_stevilka', $vp)->get()[0];
     $name = $student->priimek_studenta . ", " . $student->ime_studenta . " (" . $vp . ")";
     $vpis = Vpis::where('vpisna_stevilka', $vp)->where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->first();
     if (!$vpis) {
         $vpis = Vpis::where('vpisna_stevilka', $vp)->orderBy('sifra_studijskega_leta', 'desc')->first();
         if (!$vpis) {
             return redirect('home')->with('message', 'Nimate predmetov!');
         }
     }
     $vpredmeti = Vpisan_predmet::where('vpisna_stevilka', $vp)->where('sifra_studijskega_programa', $vpis->sifra_studijskega_programa)->lists('sifra_predmeta');
     $roki = Izpitni_rok::where('sifra_studijskega_leta', substr(date('Y'), 2, 2))->where('sifra_studijskega_programa', $vpis->sifra_studijskega_programa)->orderBy('datum', 'asc')->get();
     $rok = [];
     $predmeti = [];
     $profesorji = [];
     $stSkupajPrikaz = [];
     $stleto = [];
     $message = [];
     $mozno = [];
     $plakanje = [];
     for ($i = 0; $i < count($roki); $i++) {
         $mozno[$i] = 1;
         $plakanje[$i] = 0;
         if (in_array($roki[$i]->sifra_predmeta, $vpredmeti)) {
             $rok[$i][0] = $roki[$i];
             if ($rok[$i][0]->opombe) {
                 $message[$i] = $rok[$i][0]->opombe;
             } else {
                 $message[$i] = "";
             }
         } else {
             $rok[$i][0] = [];
         }
         $iz = null;
         if (!empty($rok[$i][0])) {
             $iz = Izpit::where('vpisna_stevilka', $vp)->where('datum', $rok[$i][0]->datum)->where('sifra_profesorja', $rok[$i][0]->sifra_profesorja)->where('sifra_predmeta', $roki[$i]->sifra_predmeta)->whereNull('cas_odjave')->first();
             $date = date('Y-m-d 01:00:00', strtotime($rok[$i][0]->datum));
         }
         if ($iz) {
             $rok[$i][1] = 1;
             if (date('Y-m-d H:m:s') > $date) {
                 $message[$i] = "Rok za odjavo je potekel!";
             }
         } else {
             $rok[$i][1] = 0;
         }
         $veke_prijaven = null;
         if (!empty($rok[$i][0])) {
             $veke_prijaven = Izpit::where('vpisna_stevilka', $vp)->where('sifra_predmeta', $roki[$i]->sifra_predmeta)->where('sifra_profesorja', $rok[$i][0]->sifra_profesorja)->where('sifra_studijskega_leta', $rok[$i][0]->sifra_studijskega_leta)->where('datum', $rok[$i][0]->datum)->whereNull('cas_odjave')->first();
         }
         if ($veke_prijaven) {
             $rok[$i][2] = 1;
         } else {
             $rok[$i][2] = 0;
         }
         if (!empty($rok[$i][0])) {
             $esc = 0;
             $predmeti[$i] = Predmet::where('sifra_predmeta', $rok[$i][0]->sifra_predmeta)->pluck('naziv_predmeta');
             $profesorji[$i] = Profesor::where('sifra_profesorja', $rok[$i][0]->sifra_profesorja)->pluck('priimek_profesorja') . ", " . Profesor::where('sifra_profesorja', $rok[$i][0]->sifra_profesorja)->pluck('ime_profesorja');
             $zad = Izpit::where('vpisna_stevilka', $vp)->where('sifra_predmeta', $rok[$i][0]->sifra_predmeta)->where('sifra_studijskega_leta', $rok[$i][0]->sifra_studijskega_leta)->whereNull('cas_odjave')->get();
             $iz2 = Izpit::where('vpisna_stevilka', $vp)->where('sifra_studijskega_leta', $rok[$i][0]->sifra_studijskega_leta)->where('sifra_predmeta', $rok[$i][0]->sifra_predmeta)->get();
             $pavzer = Vpis::where('vpisna_stevilka', $vp)->where('sifra_studijskega_leta', $rok[$i][0]->sifra_studijskega_leta)->get();
             $stOdsteti = 0;
             $leta = Vpis::where('vpisna_stevilka', $vp)->where('sifra_vrste_vpisa', 2)->where('sifra_studijskega_programa', $rok[$i][0]->sifra_studijskega_programa)->pluck('sifra_studijskega_leta');
             if ($pom = Izpit::where('vpisna_stevilka', $vp)->where('sifra_predmeta', $rok[$i][0]->sifra_predmeta)->where('sifra_studijskega_leta', $leta - 1)->get()) {
                 $stOdsteti = count($pom);
             }
             $stleto[$i] = Izpit::where('vpisna_stevilka', $vp)->where('sifra_studijskega_leta', $rok[$i][0]->sifra_studijskega_leta)->where('sifra_predmeta', $rok[$i][0]->sifra_predmeta)->whereNull('cas_odjave')->count();
             $stskupaj[$i] = Izpit::where('vpisna_stevilka', $vp)->where('sifra_predmeta', $rok[$i][0]->sifra_predmeta)->whereNull('cas_odjave')->count();
             if ($stOdsteti > 0) {
                 $stSkupajPrikaz[$i] = $stskupaj[$i] . " (-" . $stOdsteti . ")";
             } else {
                 $stSkupajPrikaz[$i] = $stskupaj[$i];
             }
             if (!$rok[$i][2]) {
                 if ($stskupaj[$i] - $stOdsteti >= 3) {
                     $plakanje[$i] = 1;
                     $message[$i] = 'Za opravljanje izpita je potrebno plačati 80 EUR!';
                     if ($plac = Placljivs::where('vpisna_stevilka', $vp)->where('sifra_predmeta', $rok[$i][0]->sifra_predmeta)->first()) {
                         if (!$plac->placeno) {
                             $message[$i] = 'Imate neporavnan račun.';
                         }
                         $plakanje[$i] = 2;
                     }
                 }
                 if (count($pavzer) == 0) {
                     $plakanje[$i] = 1;
                     $message[$i] = 'Za opravljanje izpita je potrebno plačati 140 EUR! ';
                     if ($plac = Placljivs::where('vpisna_stevilka', $vp)->where('sifra_predmeta', $rok[$i][0]->sifra_predmeta)->first()) {
                         if (!$plac->placeno) {
                             $message[$i] = 'Imate neporavnan račun.';
                         }
                         $plakanje[$i] = 2;
                     }
                 }
                 if (count($iz2) > 0) {
                     for ($k = 0; $k < count($iz2); $k++) {
                         if ($iz2[$k]->cas_odjave == null) {
                             if ($iz2[$k]->ocena == null) {
                                 if ($iz2[$k]->datum > date('Y-m-d')) {
                                     $message[$i] = 'Prijava na izpit za ta predmet že obstaja! ';
                                 } else {
                                     $message[$i] = 'Za prejšnji rok še ni bila zaključena ocena! ';
                                 }
                             } else {
                                 if (count($zad) > 0 && $zad[0]->datum < date('Y-m-d')) {
                                     $limit = date('Y-m-d', strtotime($zad[0]->datum . ' +7 day'));
                                     if ($limit > date('Y-m-d')) {
                                         $message[$i] = 'Ni preteklo dovolj dni od zadnjega polaganja! ';
                                     }
                                 }
                             }
                             if ($iz2[$k]->ocena > 5) {
                                 $esc = 1;
                                 $message[$i] = 'Opravljen izpit!';
                                 $mozno[$i] = 0;
                             }
                         }
                     }
                 }
                 if (!$esc) {
                     if (date('Y-m-d H:m:s') > $date) {
                         $message[$i] = 'Rok za prijavo je potekel! ';
                     }
                     if ($stleto[$i] >= 3) {
                         $message[$i] = 'Prekoračili ste število polaganj v tekočem študijskem letu! ';
                     }
                     if ($stskupaj[$i] - $stOdsteti >= 6) {
                         $message[$i] = 'Prekoračili ste celotno število polaganj! ';
                     }
                 }
             } else {
                 if ($veke_prijaven->ocena != null) {
                     $message[$i] = "Ocenjeno!";
                     if ($veke_prijaven->ocena > 5) {
                         $message[$i] = "Opravljen izpit!";
                     }
                     $mozno[$i] = 0;
                 }
                 if ($veke_prijaven->tocke_izpita != null) {
                     $message[$i] = "Vpisana ocena izpita!";
                     $mozno[$i] = 0;
                 }
             }
         }
     }
     return view('prijavanaizpit', ['rok' => $rok, 'predmeti' => $predmeti, 'name' => $name, 'profesorji' => $profesorji, 'vpisna' => $vp, 'msg' => $message, 'stleto' => $stleto, 'stskupaj' => $stSkupajPrikaz, 'mozno' => $mozno, 'plakanje' => $plakanje]);
 }