public function dodaj($izvedbe)
 {
     $vse = Input::get();
     if (Input::get('isci')) {
         return $this->najdi2($vse, []);
     } elseif (Input::get('dodajp')) {
         return $this->dodajPredmet($vse);
     } elseif (Input::get('posod')) {
         $prof = Profesor::get();
         $profesor = [];
         for ($i = 0; $i < count($prof); $i++) {
             $profesor[$i + 1] = $prof[$i]->ime_profesorja . " " . $prof[$i]->priimek_profesorja;
         }
         $profesor[""] = "/";
         asort($profesor);
         $izv = explode(" ", $izvedbe);
         $studleto = Studijsko_leto::get();
         $leto = [];
         for ($i = 0; $i < count($studleto); $i++) {
             $leto[$i] = $studleto[$i]->stevilka_studijskega_leta;
         }
         array_unshift($leto, "");
         $stleto = $vse['stleto'];
         $stlet = Studijsko_leto::where('stevilka_studijskega_leta', $leto[$stleto])->pluck('sifra_studijskega_leta');
         $izvajalci = [];
         for ($i = 0; $i < count($izv) - 1; $i++) {
             $prof1 = Input::get('prof1' . $i);
             $prof2 = Input::get('prof2' . $i);
             $prof3 = Input::get('prof3' . $i);
             $sifra1 = Profesor::where('ime_profesorja', explode(" ", $profesor[$prof1])[0])->where('priimek_profesorja', implode(" ", array_slice(explode(" ", $profesor[$prof1]), 1, count(explode(" ", $profesor[$prof1])) + 1)))->pluck('sifra_profesorja');
             $sifra2 = Profesor::where('ime_profesorja', explode(" ", $profesor[$prof2])[0])->where('priimek_profesorja', implode(" ", array_slice(explode(" ", $profesor[$prof2]), 1, count(explode(" ", $profesor[$prof2])) + 1)))->pluck('sifra_profesorja');
             $sifra3 = Profesor::where('ime_profesorja', explode(" ", $profesor[$prof3])[0])->where('priimek_profesorja', implode(" ", array_slice(explode(" ", $profesor[$prof3]), 1, count(explode(" ", $profesor[$prof3])) + 1)))->pluck('sifra_profesorja');
             if ($sifra1 == null) {
                 if ($sifra2 != null) {
                     $sifra1 = $sifra2;
                     $sifra2 = $sifra3;
                     $sifra3 = null;
                 } elseif ($sifra3 != null) {
                     $sifra1 = $sifra3;
                     $sifra3 = null;
                 }
             }
             if ($sifra2 == null) {
                 if ($sifra3 != null) {
                     $sifra2 = $sifra3;
                     $sifra3 = null;
                 }
             }
             if ($sifra1 == null) {
                 $sifra1 = $i + 10000;
             }
             if ($sifra2 == null) {
                 $sifra2 = $i + 20001;
             }
             if ($sifra3 == null) {
                 $sifra3 = $i + 30007;
             }
             $izvajalci[$i] = [$sifra1, $sifra2, $sifra3];
         }
         $dup = [];
         $z = 0;
         foreach (array_count_values($izv) as $d) {
             if ($d == 3) {
                 $dup[$z] = 3;
                 $dup[$z + 1] = 3;
                 $dup[$z + 2] = 3;
                 $z += 2;
             }
             if ($d == 2) {
                 $dup[$z] = 2;
                 $dup[$z + 1] = 2;
                 $z++;
             }
             $dup[$z] = 1;
             $z++;
         }
         $messages = [];
         for ($i = 0; $i < count($izv) - 1; $i++) {
             $idpredmeta = Input::get('idpredmeta' . $i);
             if ($dup[$i] == 1) {
                 if (max(array_count_values($izvajalci[$i])) == 1) {
                     if (min($izvajalci[$i]) != $i + 10000) {
                         if ($izvajalci[$i][1] != $i + 20001) {
                             Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => $izvajalci[$i][1]]);
                         } else {
                             Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => null]);
                         }
                         if ($izvajalci[$i][2] != $i + 30007) {
                             Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => $izvajalci[$i][2]]);
                         } else {
                             Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => null]);
                         }
                         if ($izvajalci[$i][0] != $i + 10000) {
                             Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => $izvajalci[$i][0]]);
                         } else {
                             Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => null]);
                         }
                     }
                 } else {
                     $messages[] = "Ne sme biti dvakrat isti profesor! (predmet: " . explode(" ", $izvedbe)[$i] . ")";
                 }
             } elseif ($dup[$i] == 2) {
                 $result = array_diff($izvajalci[$i], $izvajalci[$i + 1]);
                 $filtered = array_filter($result, function ($x) {
                     return $x <= 10000;
                 });
                 if (!empty($filtered)) {
                     if (max(array_count_values($izvajalci[$i])) == 1) {
                         if (min($izvajalci[$i]) != $i + 10000) {
                             if ($izvajalci[$i][1] != $i + 20001) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => $izvajalci[$i][1]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => null]);
                             }
                             if ($izvajalci[$i][2] != $i + 30007) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => $izvajalci[$i][2]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => null]);
                             }
                             if ($izvajalci[$i][0] != $i + 10000) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => $izvajalci[$i][0]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => null]);
                             }
                         }
                     } else {
                         $messages[] = "Ne sme biti dvakrat isti profesor! (predmet: " . explode(" ", $izvedbe)[$i] . ")";
                     }
                     $i++;
                     $idpredmeta = Input::get('idpredmeta' . $i);
                     if (max(array_count_values($izvajalci[$i])) == 1) {
                         if (min($izvajalci[$i]) != $i + 10000) {
                             if ($izvajalci[$i][1] != $i + 20001) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => $izvajalci[$i][1]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => null]);
                             }
                             if ($izvajalci[$i][2] != $i + 30007) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => $izvajalci[$i][2]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => null]);
                             }
                             if ($izvajalci[$i][0] != $i + 10000) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => $izvajalci[$i][0]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => null]);
                             }
                         }
                     } else {
                         $messages[] = "Ne sme biti dvakrat isti profesor! (predmet: " . explode(" ", $izvedbe)[$i] . ")";
                     }
                 } else {
                     $messages[] = "Isto trojico profesorjev! (predmet: " . explode(" ", $izvedbe)[$i] . ")";
                 }
             } else {
                 $result = array_diff($izvajalci[$i], $izvajalci[$i + 1]);
                 $result2 = array_diff($izvajalci[$i], $izvajalci[$i + 2]);
                 $result3 = array_diff($izvajalci[$i + 1], $izvajalci[$i + 2]);
                 $filtered = array_filter($result, function ($x) {
                     return $x <= 10000;
                 });
                 $filtered2 = array_filter($result2, function ($x) {
                     return $x <= 10000;
                 });
                 $filtered3 = array_filter($result3, function ($x) {
                     return $x <= 10000;
                 });
                 if (!empty($filtered) && !empty($filtered2) && !empty($filtered3)) {
                     if (max(array_count_values($izvajalci[$i])) == 1) {
                         if (min($izvajalci[$i]) != $i + 10000) {
                             if ($izvajalci[$i][1] != $i + 20001) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => $izvajalci[$i][1]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => null]);
                             }
                             if ($izvajalci[$i][2] != $i + 30007) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => $izvajalci[$i][2]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => null]);
                             }
                             if ($izvajalci[$i][0] != $i + 10000) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => $izvajalci[$i][0]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => null]);
                             }
                         }
                     } else {
                         $messages[] = "Ne sme biti dvakrat isti profesor! (predmet: " . explode(" ", $izvedbe)[$i] . ")";
                     }
                     $i++;
                     $idpredmeta = Input::get('idpredmeta' . $i);
                     if (max(array_count_values($izvajalci[$i])) == 1) {
                         if (min($izvajalci[$i]) != $i + 10000) {
                             if ($izvajalci[$i][1] != $i + 20001) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => $izvajalci[$i][1]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => null]);
                             }
                             if ($izvajalci[$i][2] != $i + 30007) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => $izvajalci[$i][2]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => null]);
                             }
                             if ($izvajalci[$i][0] != $i + 10000) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => $izvajalci[$i][0]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => null]);
                             }
                         }
                     } else {
                         $messages[] = "Ne sme biti dvakrat isti profesor! (predmet: " . explode(" ", $izvedbe)[$i] . ")";
                     }
                     $i++;
                     $idpredmeta = Input::get('idpredmeta' . $i);
                     if (max(array_count_values($izvajalci[$i])) == 1) {
                         if (min($izvajalci[$i]) != $i + 10000) {
                             if ($izvajalci[$i][1] != $i + 20001) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => $izvajalci[$i][1]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja2' => null]);
                             }
                             if ($izvajalci[$i][2] != $i + 30007) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => $izvajalci[$i][2]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja3' => null]);
                             }
                             if ($izvajalci[$i][0] != $i + 10000) {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => $izvajalci[$i][0]]);
                             } else {
                                 Izvedba_predmeta::where('sifra_predmeta', explode(" ", $izvedbe)[$i])->where('sifra_studijskega_leta', $stlet)->where('id', $idpredmeta)->update(['sifra_profesorja' => null]);
                             }
                         }
                     } else {
                         $messages[] = "Ne sme biti dvakrat isti profesor! (predmet: " . explode(" ", $izvedbe)[$i] . ")";
                     }
                 } else {
                     $messages[] = "Isto trojico profesorjev! (predmet: " . explode(" ", $izvedbe)[$i] . ")";
                 }
             }
         }
         return $this->najdi2($vse, $messages);
     } else {
         return $this->brisiPredmet($vse);
     }
 }