LiteralControl nacrtajInfoPredmetNasoka(PredmetNasoka predmetObj)
 {
     StringBuilder sb = new StringBuilder();
     
     sb.Append("<span class=\"predmetIme\" >");
     sb.Append(predmetObj.PredmetIme);
     sb.Append("</span>");
     sb.Append("<span class=\"predmetTekst\" >");
     sb.Append("Во прилог можете да ги погледнете и превземeте материјалите за " + predmetObj.PredmetIme);
     sb.Append("</span>");
     return new LiteralControl(sb.ToString());
 }
 public RezultatKomanda deleteMaterijalOdPredmet(Materijal matObj, PredmetNasoka predmetNasokaObj, int DelID)
 {
     RezultatKomanda rezultat = new RezultatKomanda(false);
     try
     {
         if (predmetNasokaObj != null && predmetNasokaObj != null)
         {
             rezultat = deleteMaterijalOdPredmet(matObj.MaterijalID, predmetNasokaObj.NasokaID, predmetNasokaObj.PredmetID, DelID);
         }
         return rezultat;
     }
     catch (Exception ex)
     {
         rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
         rezultat.Pricina = ex.Message;
         return rezultat;
     }
 }
        public void nacrtajPregledPredmetiZaNasoka(PredmetNasoka predmetNasokaObj)
        {
            this.predmetInfo.Controls.Clear();

            this.predmetInfo.Controls.Add(nacrtajInfoPredmetNasoka(predmetNasokaObj));
        }
 public PretplatenPredmet(PredmetNasoka predmet,Korisnik korisnik) 
 {
     this.PredmetNasoka = predmet;
     this.Korisnik = korisnik;
 }
        public RezultatKomanda getPredmetiPoNasoka(int Nasoka_ID, ref List<PredmetNasoka> predmetiPoNasokaLista)
        {
            RezultatKomanda rezultat = new RezultatKomanda(false);
            try
            {
                parametriKomanda = new LinkedList<SqlParameter>();

                parametriKomanda.Clear();


                //Parametar za @Nasoka_ID =Nasoka_ID 
                //Input Parametar
                SqlParam = new SqlParameter("@Nasoka_ID", SqlDbType.Int);
                SqlParam.Value = Nasoka_ID;
                parametriKomanda.AddLast(SqlParam);

                dsKomanda = BazaDB.GetDataSet(parametriKomanda.ToArray(), "sp_PodigniNasokaPredmeti8", sqlCn: null);

                if (dsKomanda.Tables.Count > 0 && dsKomanda.Tables[0].Rows.Count > 0)
                {
                    predmetiPoNasokaLista = new List<PredmetNasoka>();
                    foreach (DataRow red in dsKomanda.Tables[0].Rows)
                    {

                        PredmetNasoka pnObj = new PredmetNasoka();
                        pnObj.NasokaID = BazaDB.DataRowVoInt(red, "NasokiID");
                        pnObj.NasokaIme = BazaDB.DataRowVoString(red, "NasokiIme");
                        pnObj.PredmetID = BazaDB.DataRowVoInt(red, "PredmetiID");
                        pnObj.PredmetIme = BazaDB.DataRowVoString(red, "PredmetiIme");
                        pnObj.Ime = BazaDB.DataRowVoString(red, "Ime");
                        pnObj.Kod = BazaDB.DataRowVoString(red, "Kod");
                        pnObj.Krediti = BazaDB.DataRowVoInt(red, "Krediti");
                        predmetiPoNasokaLista.Add(pnObj);
                    }

                    rezultat.Rezultat = RezultatKomandaEnum.Uspeh;
                }
                else
                {
                    //Nema nitu edna nasoka
                    rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
                    rezultat.Pricina = "Nema Predmeti za Nasoka";
                }
                return rezultat;
            }
            catch (Exception ex)
            {
                rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
                rezultat.Pricina = ex.Message;
                return rezultat;
            }
        }
        public void pregled1PredmetNasoka()
        {
            try
            {
                IPredmetNasokaPregled1View _viewPN = (IPredmetNasokaPregled1View)_view;
                PredmetNasoka predmetNasObj = new PredmetNasoka();
                RezultatKomanda rezultat = predmetiNasokaDB.getPredmetNasoka(_viewPN.Nasoka_ID_PredmetNasoka_Pregled_Selected, _viewPN.Predmet_ID_PredmetNasoka_Pregled_Selected, ref predmetNasObj);
                if (rezultat.Rezultat == RezultatKomandaEnum.Uspeh)
                {
                    _viewPN.nacrtajPregledPredmetiZaNasoka(predmetNasObj);

                    _viewPN.InfoPoraka = "Prikazani se informacii za predmetot.";
                }
                else if (rezultat.Rezultat == RezultatKomandaEnum.Neuspeh)
                {
                    _viewPN.ErrorPoraka = rezultat.Pricina;
                }
                else if (rezultat.Rezultat == RezultatKomandaEnum.Greska)
                {
                    _viewPN.ErrorPoraka = "Greska pri listanje predmeti za nasoka";
                }
            }
            catch (Exception ex)
            {
                //Greska vo add nasoki
                throw ex;
            }
        }
 public PretplatenPredmet()
 { 
     this._korisnik = new Korisnik();
     this._predmetNasoka = new PredmetNasoka();
 }
        public RezultatKomanda getPredmetiNasokaNepetplaten(int? oblastID,int? nasokaID, string KorisnikID, ref List<PredmetNasoka> predmetiLista)
        {

            RezultatKomanda rezultat = new RezultatKomanda(false);
            dsKomanda = null;
            try
            {
                parametriKomanda = new LinkedList<SqlParameter>();

                parametriKomanda.Clear();

                if (oblastID != null)
                {
                    //Parametar za @oblast_ID  = oblastID
                    //Input Parametar
                    SqlParam = new SqlParameter("@oblast_ID", SqlDbType.Int);
                    SqlParam.Value = oblastID;
                    parametriKomanda.AddLast(SqlParam);
                }
                if (nasokaID != null)
                {
                    //Parametar za @nasoka_ID  = nasokaID
                    //Input Parametar
                    SqlParam = new SqlParameter("@Nasoka_ID", SqlDbType.Int);
                    SqlParam.Value = nasokaID;
                    parametriKomanda.AddLast(SqlParam);
                }

                //Parametar za @korisnik_ID  = korisnikID
                //Input Parametar
                SqlParam = new SqlParameter("@korisnik_ID", SqlDbType.NVarChar);
                SqlParam.Value = KorisnikID;
                parametriKomanda.AddLast(SqlParam);

                dsKomanda = BazaDB.GetDataSet(parametriKomanda.ToArray(), "sp_PodigniKorisnikNePretplateniPredmeti", sqlCn: null);
                if (dsKomanda.Tables.Count > 0 && dsKomanda.Tables[0].Rows.Count > 0)
                {
                    predmetiLista = new List<PredmetNasoka>();
                    PredmetNasoka predmetNasokaObj;
                    foreach (DataRow red in dsKomanda.Tables[0].Rows)
                    {
                        predmetNasokaObj = new PredmetNasoka();
                        predmetNasokaObj.PredmetID = BazaDB.DataRowVoInt(red, "PredmetiID");
                        predmetNasokaObj.PredmetIme = BazaDB.DataRowVoString(red, "PredmetiIme");
                        predmetNasokaObj.PredmetOpis  = BazaDB.DataRowVoString(red, "PredmetiOpis");


                        predmetNasokaObj.NasokaID = BazaDB.DataRowVoInt(red, "NasokiID");
                        predmetNasokaObj.NasokaIme = BazaDB.DataRowVoString(red, "NasokiIme");

                        predmetNasokaObj.Ime = BazaDB.DataRowVoString(red, "Ime");
                        predmetNasokaObj.Kod = BazaDB.DataRowVoString(red, "Kod");
                        predmetNasokaObj.Krediti = BazaDB.DataRowVoInt(red, "Krediti");
                        predmetNasokaObj.TipPredmet = BazaDB.DataRowVoInt(red, "TipPredmet_ID");
                        predmetNasokaObj.Aktiven = BazaDB.DataRowVoChar(red, "Aktiven");

                        predmetiLista.Add(predmetNasokaObj);
                    }


                    rezultat.Rezultat = RezultatKomandaEnum.Uspeh;
                }
                else
                {

                    rezultat.Pricina = "Nema predmeti za koi sto moze da se pretplatite vo izbranata nasoka/oblast.";
                    rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
                }
                return rezultat;
            }
            catch (Exception ex)
            {
                rezultat.Pricina = ex.Message;
                rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
                return rezultat;
            }
        }
        LiteralControl nacrtajPredmetNasoka(PredmetNasoka nepretplatenObj)
        {

            StringBuilder sb = new StringBuilder();

            sb.Append("<div id=\"PredmetIzbor\">");            
            sb.Append("<span id=\"PredmetIme\">");
            sb.Append(nepretplatenObj.PredmetIme);
            sb.Append("</span>");
            sb.Append("<span id=\"PredmetOpis\">");
            sb.Append(nepretplatenObj.PredmetOpis);
            sb.Append("</span>");
            sb.Append("</div>");
            return new LiteralControl("<a href=\"PredmetiStudent.aspx?InstID=" + this.ID_Institucija_Izbor_Selected + "&UstID=" + this.ID_Ustanova_UstanovaFilter_Selected + "&OblID=" + this.ID_Oblast_OblastFilter_Selected + "&NasID=" + this.ID_Nasoka_NasokaFilter_Selected + "&PredID=" +nepretplatenObj.PredmetID + "\">" + sb.ToString() + "</a>");
        }
        public RezultatKomanda getKorisniciPredmet(PredmetNasoka predmetNasokaObj, ref List<Korisnik> korLista)
        {
            RezultatKomanda rezultat = new RezultatKomanda(false);

            try
            {
                if (predmetNasokaObj != null)
                {
                    rezultat = getKorisniciPredmet(predmetNasokaObj.NasokaID, predmetNasokaObj.PredmetID, ref korLista);
                }
                return rezultat;
            }
            catch (Exception ex)
            {
                rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
                rezultat.Pricina = ex.Message;
                return rezultat;
            }
        }
        public RezultatKomanda deleteKorisniciOdPredmet(PredmetNasoka predmetNasokaObj)
        {
            RezultatKomanda rezultat = new RezultatKomanda(false);

            try
            {
                if (predmetNasokaObj != null)
                {
                    rezultat = deleteKorisniciOdPredmet(predmetNasokaObj.NasokaID, predmetNasokaObj.PredmetID);
                }
                return rezultat;
            }
            catch (Exception ex)
            {
                rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
                rezultat.Pricina = ex.Message;
                return rezultat;
            }
        }
        public RezultatKomanda addKorisnikPredmet(PredmetNasoka predmetNasokaObj, Korisnik korisnikObj)
        {
            RezultatKomanda rezultat = new RezultatKomanda(false);

            try
            {
                if (predmetNasokaObj != null && korisnikObj != null)
                {
                    rezultat = addKorisnikPredmet(predmetNasokaObj.NasokaID, predmetNasokaObj.PredmetID, korisnikObj.UserID);
                }
                return rezultat;
            }
            catch (Exception ex)
            {
                rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
                rezultat.Pricina = ex.Message;
                return rezultat;
            }
        }
        public RezultatKomanda getPredmetiNasoka(int? nasokaID, int? predmetID, ref List<PredmetNasoka> predmetiLista)
        {


            RezultatKomanda rezultat = new RezultatKomanda(false);
            dsKomanda = null;
            try
            {
                parametriKomanda = new LinkedList<SqlParameter>();

                parametriKomanda.Clear();
                if (nasokaID != null)
                {
                    //Parametar za @nasoka_ID  = nasokaID
                    //Input Parametar
                    SqlParam = new SqlParameter("@Nasoka_ID", SqlDbType.Int);
                    SqlParam.Value = nasokaID;
                    parametriKomanda.AddLast(SqlParam);
                }

                if (predmetID != null)
                {
                    //Parametar za @predmet_ID  = predmetID
                    //Input Parametar
                    SqlParam = new SqlParameter("@predmet_ID", SqlDbType.Int);
                    SqlParam.Value = predmetID;
                    parametriKomanda.AddLast(SqlParam);
                }

                dsKomanda = BazaDB.GetDataSet(parametriKomanda.ToArray(), "sp_PodigniNasokaPredmeti8", sqlCn: null);
                if (dsKomanda.Tables.Count > 0 && dsKomanda.Tables[0].Rows.Count > 0)
                {
                    predmetiLista = new List<PredmetNasoka>();
                    PredmetNasoka predmetNasokaObj;
                    foreach (DataRow red in dsKomanda.Tables[0].Rows)
                    {
                        predmetNasokaObj = new PredmetNasoka();
                        predmetNasokaObj.PredmetID = BazaDB.DataRowVoInt(red, "PredmetiID");
                        predmetNasokaObj.PredmetIme = BazaDB.DataRowVoString(red, "PredmetiIme");

                        predmetNasokaObj.NasokaID = BazaDB.DataRowVoInt(red, "NasokiID");
                        predmetNasokaObj.NasokaIme = BazaDB.DataRowVoString(red, "NasokiIme");

                        predmetNasokaObj.Ime = BazaDB.DataRowVoString(red, "Ime");
                        predmetNasokaObj.Kod = BazaDB.DataRowVoString(red, "Kod");
                        predmetNasokaObj.Krediti = BazaDB.DataRowVoInt(red, "Krediti");
                        predmetNasokaObj.TipPredmet = BazaDB.DataRowVoInt(red, "TipPredmet_ID");
                        predmetNasokaObj.Aktiven = BazaDB.DataRowVoChar(red, "Aktiven");

                        predmetiLista.Add(predmetNasokaObj);
                    }


                    rezultat.Rezultat = RezultatKomandaEnum.Uspeh;
                }
                else
                {

                    rezultat.Pricina = "Ne postoi takov predmetid,nasokaID - ID";
                    rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
                }
                return rezultat;
            }
            catch (Exception ex)
            {
                rezultat.Pricina = ex.Message;
                rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
                return rezultat;
            }

        }
        public RezultatKomanda updatePredmetNasoka(PredmetNasoka predmetNasokaObj)
        {
            RezultatKomanda rezultat = new RezultatKomanda(false);

            try
            {
                if (predmetNasokaObj != null)
                {
                    rezultat = updatePredmetNasoka(predmetNasokaObj.NasokaID, predmetNasokaObj.PredmetID, predmetNasokaObj.TipPredmet, predmetNasokaObj.Kod, predmetNasokaObj.Krediti, predmetNasokaObj.Ime);
                }
                return rezultat;
            }
            catch (Exception ex)
            {
                rezultat.Rezultat = RezultatKomandaEnum.Neuspeh;
                rezultat.Pricina = ex.Message;
                return rezultat;
            }
        }