private void dodajCjelinu(Cjelina cjelina, TreeNode parent, bool obicniUcesnik)
        {
            parent.Nodes.Add("c#" + cjelina.CjelinaID.ToString(), cjelina.Naziv, 1);
            TreeNode me = parent.Nodes.Find("c#" + cjelina.CjelinaID.ToString(), false)[0];
            Cjelina  cjelinaZaPretragu = new Cjelina {
                CjelinaRoditeljID = cjelina.CjelinaID, Aktivna = true
            };
            List <Cjelina> podcjeline = MySqlCjelinaDao.Instance.Read(cjelinaZaPretragu);

            if (obicniUcesnik)
            {
                foreach (Cjelina c1 in podcjeline.ToArray())
                {
                    if (!c1.Ucesnici.Contains(Ucesnik))
                    {
                        podcjeline.Remove(c1);
                    }
                }
            }
            foreach (Cjelina c2 in podcjeline)
            {
                dodajCjelinu(c2, me, obicniUcesnik);
            }
            Aktivnost aktivnostZaPretragu = new Aktivnost {
                CjelinaID = cjelina.CjelinaID, Aktivna = true
            };
            List <Aktivnost> aktivnosti = MySqlAktivnostDao.Instance.Read(aktivnostZaPretragu);

            foreach (Aktivnost a in aktivnosti)
            {
                me.Nodes.Add("a#" + a.AktivnostID, a.Naziv, 0);
            }
        }
        public ZadatakDetalji(Cjelina cj)
        {
            InitializeComponent();
            nazivZadatkaLBL.Text   = cj.Naziv;
            datumKreiranjaLBL.Text = "Datum kreiranja: " + Convert.ToDateTime(cj.DatumKreiranja).ToString("dd/MM/yyyy");
            rokLBL.Text            = "Rok: " + Convert.ToDateTime(cj.Rok).ToString("dd/MM//yyyy");
            covjekCasLBL.Text      = "Potreban broj čovjek/časova: " + cj.BrojPotrebnihCovjekCasova.ToString();
            foreach (Ucesnik u in cj.Ucesnici)
            {
                ucesniciLVW.Items.Add(u.Ime + " " + u.Prezime + " \"" + u.KorisnickoIme + "\"");
            }

            procenatZavrsenostiLBL.Text = cj.ProcenatIzvrsenosti + "%";

            for (int i = 0; i < cj.ProcenatIzvrsenosti; i++)
            {
                procenatZavrsenostiPBR.PerformStep();
            }

            List <IstorijaAktivnosti> istorija = MySqlIstorijaAktivnostiDao.Instance.Read(new IstorijaAktivnosti {
                CjelinaID = cj.CjelinaID
            });

            foreach (IstorijaAktivnosti ia in istorija)
            {
                istorijaAktivnostiLVW.Items.Add(ia.Datum + " " + ia.Opis);
            }
        }
        private void dodajZadatakTSB_Click(object sender, EventArgs e)
        {
            TreeNode selected = projektiTVW.SelectedNode;

            if (selected.Name.StartsWith("p"))
            {
                if (MySqlProjekatDao.Instance.Read(new Projekat {
                    ProjekatID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivan = true
                }).Count > 0)
                {
                    int pid = Convert.ToInt32(selected.Name.Split('#')[1]);
                    new ZadatakFormular(null, Convert.ToInt32(selected.Name.Split('#')[1]), null, false).ShowDialog();
                    updateTreeView();
                    prikaziDetaljeByTipAndId("p", pid);
                }
            }
            else if (selected.Name.StartsWith("c"))
            {
                if (MySqlCjelinaDao.Instance.Read(new Cjelina {
                    CjelinaID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                }).Count > 0)
                {
                    Cjelina cj = MySqlCjelinaDao.Instance.Read(new Cjelina {
                        CjelinaID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                    })[0];
                    new ZadatakFormular(null, Convert.ToInt32(cj.ProjekatID), Convert.ToInt32(selected.Name.Split('#')[1]), false).ShowDialog();
                    updateTreeView();
                    prikaziDetaljeByTipAndId("c", cj.CjelinaID);
                }
            }
            else if (selected.Name.StartsWith("a"))
            {
            }
        }
        private void azrirajTSB_Click(object sender, EventArgs e)
        {
            TreeNode selected = projektiTVW.SelectedNode;

            if (selected.Name.StartsWith("p"))
            {
                if (MySqlProjekatDao.Instance.Read(new Projekat {
                    ProjekatID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivan = true
                }).Count > 0)
                {
                    Projekat p = MySqlProjekatDao.Instance.Read(new Projekat {
                        ProjekatID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivan = true
                    })[0];
                    new SefProjekatFormular(p).ShowDialog();
                    updateTreeView();
                    prikaziDetaljeByTipAndId("p", p.ProjekatID);
                }
            }
            else if (selected.Name.StartsWith("c"))
            {
                if (MySqlCjelinaDao.Instance.Read(new Cjelina {
                    CjelinaID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                }).Count > 0)
                {
                    Cjelina ova = MySqlCjelinaDao.Instance.Read(new Cjelina {
                        CjelinaID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                    })[0];
                    new ZadatakFormular(ova, Convert.ToInt32(ova.ProjekatID), ova.CjelinaRoditeljID, true).ShowDialog();
                    updateTreeView();
                    prikaziDetaljeByTipAndId("c", ova.CjelinaID);
                }
            }
            else if (selected.Name.StartsWith("a"))
            {
                if (MySqlAktivnostDao.Instance.Read(new Aktivnost {
                    AktivnostID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                }).Count > 0)
                {
                    Aktivnost ova = MySqlAktivnostDao.Instance.Read(new Aktivnost {
                        AktivnostID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                    })[0];
                    new AktivnostFormular(ova, Convert.ToInt32(ova.CjelinaID), true).ShowDialog();
                    updateTreeView();
                    prikaziDetaljeByTipAndId("a", ova.AktivnostID);
                }
            }
        }
Ejemplo n.º 5
0
 public UtrosenoSatiUcesnikFormular(AktivnostFormular af, int?cjelinaId, KeyValuePair <Ucesnik, int> pair, bool edit)
 {
     InitializeComponent();
     cid       = cjelinaId;
     this.edit = edit;
     this.af   = af;
     this.p    = pair;
     if (edit)
     {
         ucesniciLVW.Enabled   = false;
         utrosenoSatiNUD.Value = pair.Value;
     }
     else
     {
         if (MySqlCjelinaDao.Instance.Read(new Cjelina {
             CjelinaID = cid, Aktivna = true
         }).Count > 0)
         {
             Cjelina c = MySqlCjelinaDao.Instance.Read(new Cjelina {
                 CjelinaID = cid, Aktivna = true
             })[0];
             foreach (Ucesnik u in c.Ucesnici)
             {
                 bool postoji = false;
                 foreach (ListViewItem it in af.Ucesnici.Items)
                 {
                     if (it.Text.StartsWith(u.UcesnikID + ". " + u.Ime + " " + u.Prezime))
                     {
                         postoji = true;
                         break;
                     }
                 }
                 if (!postoji && !u.Uloga.Naziv.Equals("sef"))
                 {
                     ucesniciLVW.Items.Add(u.UcesnikID + ". " + u.Ime + " " + u.Prezime);
                 }
             }
         }
     }
 }
        private void dodajUcesnikaTSB_Click(object sender, EventArgs e)
        {
            TreeNode selected = projektiTVW.SelectedNode;

            if (selected.Name.StartsWith("p"))
            {
                if (MySqlProjekatDao.Instance.Read(new Projekat {
                    ProjekatID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivan = true
                }).Count > 0)
                {
                    Projekat p = MySqlProjekatDao.Instance.Read(new Projekat {
                        ProjekatID = Convert.ToInt32(selected.Name.Split('#')[1])
                    })[0];
                    new DodajUcesnikaForma(p, null).ShowDialog();
                    updateTreeView();
                    prikaziDetaljeByTipAndId("p", p.ProjekatID);
                }
            }
            else if (selected.Name.StartsWith("c"))
            {
                if (MySqlCjelinaDao.Instance.Read(new Cjelina {
                    CjelinaID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                }).Count > 0)
                {
                    Cjelina c = MySqlCjelinaDao.Instance.Read(new Cjelina {
                        CjelinaID = Convert.ToInt32(selected.Name.Split('#')[1])
                    })[0];
                    new DodajUcesnikaForma(null, c).ShowDialog();
                    updateTreeView();
                    prikaziDetaljeByTipAndId("c", c.CjelinaID);
                }
            }
            else if (selected.Name.StartsWith("a"))
            {
            }
        }
Ejemplo n.º 7
0
 public DodajUcesnikaForma(Projekat pr, Cjelina cj)
 {
     InitializeComponent();
     projekat = pr;
     cjelina  = cj;
     if (pr != null)
     {
         List <Ucesnik> ucesniciVanProjekta = new List <Ucesnik>();
         Uloga          korisnik            = MySqlUlogaDao.Instance.Read(new Uloga {
             Naziv = "korisnik"
         })[0];
         foreach (Ucesnik uc in MySqlUcesnikDao.Instance.Read(new Ucesnik {
             Aktivan = true
         }))
         {
             if (!pr.UcesniciNaProjektu.Keys.Contains(uc) && (uc.Uloga.Naziv.Equals(korisnik.Naziv)))
             {
                 ucesniciVanProjekta.Add(uc);
             }
         }
         foreach (Ucesnik u in ucesniciVanProjekta)
         {
             moguciUcesniciCBX.Items.Add(u.Ime + " " + u.Prezime + " \"" + u.KorisnickoIme + "\"");
         }
     }
     else if (cj != null)
     {
         List <Ucesnik> ucesniciVanProjekta = new List <Ucesnik>();
         if (cj.CjelinaRoditeljID == null)
         {
             Projekat p = MySqlProjekatDao.Instance.Read(new Projekat {
                 ProjekatID = cj.ProjekatID
             })[0];
             foreach (Ucesnik uc in p.UcesniciNaProjektu.Keys)
             {
                 if (!cj.Ucesnici.Contains(uc) && (p.UcesniciNaProjektu[uc].Naziv.Equals("ucesnik")))
                 {
                     ucesniciVanProjekta.Add(uc);
                 }
             }
             foreach (Ucesnik u in ucesniciVanProjekta)
             {
                 moguciUcesniciCBX.Items.Add(u.Ime + " " + u.Prezime + " \"" + u.KorisnickoIme + "\"");
             }
         }
         else
         {
             Cjelina nadcjelina = MySqlCjelinaDao.Instance.Read(new Cjelina {
                 CjelinaID = cj.CjelinaRoditeljID
             })[0];
             Projekat p = MySqlProjekatDao.Instance.Read(new Projekat {
                 ProjekatID = nadcjelina.ProjekatID
             })[0];
             foreach (Ucesnik uc in nadcjelina.Ucesnici)
             {
                 if (!cj.Ucesnici.Contains(uc) && (p.UcesniciNaProjektu[uc].Naziv.Equals("ucesnik")))
                 {
                     ucesniciVanProjekta.Add(uc);
                 }
             }
         }
     }
     else
     {
         this.Close();
     }
 }
        private void prikaziDetalje()
        {
            TreeNode selected      = projektiTVW.SelectedNode;
            String   ulogaUcesnika = "";
            TreeNode temp          = selected;

            while (temp.Parent != null)
            {
                temp = temp.Parent;
            }
            Console.WriteLine(temp.Name);
            String izabraniId = temp.Name.Split('#')[1];

            if (MySqlProjekatDao.Instance.Read(new Projekat {
                ProjekatID = Convert.ToInt32(izabraniId), Aktivan = true
            }).Count > 0)
            {
                Projekat izabraniProjekat = MySqlProjekatDao.Instance.Read(new Projekat {
                    ProjekatID = Convert.ToInt32(izabraniId), Aktivan = true
                })[0];
                if (izabraniProjekat.UcesniciNaProjektu.Keys.Contains(Ucesnik))
                {
                    ulogaUcesnika = izabraniProjekat.UcesniciNaProjektu[Ucesnik].Naziv;
                }
                else
                {
                    return;
                }

                if (selected.Name.StartsWith("p"))
                {
                    if (ulogaUcesnika.Equals("sef"))
                    {
                        detaljiPNL.Controls.Clear();
                        detaljiPNL.Controls.Add(new SefNadzorProjekatDetalji(izabraniProjekat));
                        azrirajTSB.Enabled          = true;
                        obrisiTSB.Enabled           = false;
                        dodajAktivnostTSB.Enabled   = false;
                        dodajZadatakTSB.Enabled     = true;
                        prikaziIzvjestajTSB.Enabled = true;
                        dodajUcesnikaTSB.Enabled    = true;
                    }
                    else if (ulogaUcesnika.Equals("ucesnik"))
                    {
                        detaljiPNL.Controls.Clear();
                        azrirajTSB.Enabled          = false;
                        obrisiTSB.Enabled           = false;
                        dodajAktivnostTSB.Enabled   = false;
                        dodajZadatakTSB.Enabled     = false;
                        prikaziIzvjestajTSB.Enabled = false;
                        dodajUcesnikaTSB.Enabled    = false;
                        detaljiPNL.Controls.Add(new UcesnikProjekatDetalji(izabraniProjekat));
                    }
                    else if (ulogaUcesnika.Equals("nadzor"))
                    {
                        detaljiPNL.Controls.Clear();
                        detaljiPNL.Controls.Add(new SefNadzorProjekatDetalji(izabraniProjekat));
                        azrirajTSB.Enabled          = false;
                        obrisiTSB.Enabled           = false;
                        dodajAktivnostTSB.Enabled   = false;
                        dodajZadatakTSB.Enabled     = false;
                        prikaziIzvjestajTSB.Enabled = true;
                        dodajUcesnikaTSB.Enabled    = false;
                    }
                }
                else if (selected.Name.StartsWith("c"))
                {
                    if (MySqlCjelinaDao.Instance.Read(new Cjelina {
                        CjelinaID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                    }).Count > 0)
                    {
                        Cjelina izabranaCjelina = MySqlCjelinaDao.Instance.Read(new Cjelina {
                            CjelinaID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                        })[0];
                        detaljiPNL.Controls.Clear();
                        detaljiPNL.Controls.Add(new ZadatakDetalji(izabranaCjelina));
                        if (ulogaUcesnika.Equals("sef"))
                        {
                            azrirajTSB.Enabled          = true;
                            obrisiTSB.Enabled           = true;
                            dodajAktivnostTSB.Enabled   = true;
                            dodajZadatakTSB.Enabled     = true;
                            prikaziIzvjestajTSB.Enabled = false;
                            dodajUcesnikaTSB.Enabled    = true;
                        }
                        else if (ulogaUcesnika.Equals("ucesnik"))
                        {
                            azrirajTSB.Enabled          = false;
                            obrisiTSB.Enabled           = false;
                            dodajAktivnostTSB.Enabled   = true;
                            dodajZadatakTSB.Enabled     = false;
                            prikaziIzvjestajTSB.Enabled = false;
                            dodajUcesnikaTSB.Enabled    = false;
                        }
                        else if (ulogaUcesnika.Equals("nadzor"))
                        {
                            azrirajTSB.Enabled          = false;
                            obrisiTSB.Enabled           = false;
                            dodajAktivnostTSB.Enabled   = false;
                            dodajZadatakTSB.Enabled     = false;
                            prikaziIzvjestajTSB.Enabled = false;
                            dodajUcesnikaTSB.Enabled    = false;
                        }
                    }
                }
                else if (selected.Name.StartsWith("a"))
                {
                    if (MySqlAktivnostDao.Instance.Read(new Aktivnost {
                        AktivnostID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                    }).Count > 0)
                    {
                        Aktivnost izabranaAktivnost = MySqlAktivnostDao.Instance.Read(new Aktivnost {
                            AktivnostID = Convert.ToInt32(selected.Name.Split('#')[1]), Aktivna = true
                        })[0];
                        if (ulogaUcesnika.Equals("sef"))
                        {
                            detaljiPNL.Controls.Clear();
                            azrirajTSB.Enabled          = true;
                            obrisiTSB.Enabled           = true;
                            dodajAktivnostTSB.Enabled   = false;
                            dodajZadatakTSB.Enabled     = false;
                            prikaziIzvjestajTSB.Enabled = false;
                            dodajUcesnikaTSB.Enabled    = false;
                            detaljiPNL.Controls.Add(new SefUcesnikAktivnostDetalji(izabranaAktivnost, Ucesnik, this));
                        }
                        else if (ulogaUcesnika.Equals("ucesnik"))
                        {
                            detaljiPNL.Controls.Clear();
                            azrirajTSB.Enabled          = true;
                            obrisiTSB.Enabled           = true;
                            dodajAktivnostTSB.Enabled   = false;
                            dodajZadatakTSB.Enabled     = false;
                            prikaziIzvjestajTSB.Enabled = false;
                            dodajUcesnikaTSB.Enabled    = false;
                            detaljiPNL.Controls.Add(new SefUcesnikAktivnostDetalji(izabranaAktivnost, Ucesnik, this));
                        }
                        else if (ulogaUcesnika.Equals("nadzor"))
                        {
                            detaljiPNL.Controls.Clear();
                            azrirajTSB.Enabled          = false;
                            obrisiTSB.Enabled           = false;
                            dodajAktivnostTSB.Enabled   = false;
                            dodajZadatakTSB.Enabled     = false;
                            prikaziIzvjestajTSB.Enabled = false;
                            dodajUcesnikaTSB.Enabled    = false;
                            detaljiPNL.Controls.Add(new NadzorAktivnostDetalji(izabranaAktivnost));
                        }
                    }
                }
            }
        }
        private void updateTreeView()
        {
            projektiTVW.Nodes.Clear();
            List <Projekat> projekti = MySqlProjekatDao.Instance.ReadProjekatByUcesnikID(Ucesnik);
            Uloga           uloga    = null;

            foreach (Projekat p in projekti)
            {
                if (p.UcesniciNaProjektu.ContainsKey(Ucesnik) && p.Aktivan == true)
                {
                    if (p.UcesniciNaProjektu.TryGetValue(Ucesnik, out uloga) && (uloga.Naziv.Equals("sef") || uloga.Naziv.Equals("nadzor")))
                    {
                        Console.WriteLine("Projekat: " + p.Naziv + " Uloga: nadzor ili sef");
                        projektiTVW.Nodes.Add("p#" + p.ProjekatID.ToString(), p.Naziv, 2); //dodaj projekat u tree view
                        TreeNode me = projektiTVW.Nodes.Find("p#" + p.ProjekatID.ToString(), false)[0];
                        Cjelina  cjelinaZaPretragu = new Cjelina {
                            ProjekatID = p.ProjekatID, Aktivna = true
                        };
                        List <Cjelina> cjeline = MySqlCjelinaDao.Instance.Read(cjelinaZaPretragu);
                        foreach (Cjelina c in cjeline)
                        {
                            if (c.CjelinaRoditeljID == null)
                            {
                                dodajCjelinu(c, me, false);
                            }
                        }
                    }
                    else if (p.UcesniciNaProjektu.TryGetValue(Ucesnik, out uloga) && uloga.Naziv.Equals("ucesnik"))
                    {
                        Console.WriteLine("Projekat: " + p.Naziv + " Uloga: ucesnik");
                        projektiTVW.Nodes.Add("p#" + p.ProjekatID.ToString(), p.Naziv, 2); //dodaj projekat u tree view
                        TreeNode me = projektiTVW.Nodes.Find("p#" + p.ProjekatID.ToString(), false)[0];
                        Cjelina  cjelinaZaPretragu = new Cjelina {
                            ProjekatID = p.ProjekatID, Aktivna = true
                        };
                        List <Cjelina> cjeline = MySqlCjelinaDao.Instance.Read(cjelinaZaPretragu);
                        foreach (Cjelina c1 in cjeline.ToArray())
                        {
                            if (!c1.Ucesnici.Contains(Ucesnik))
                            {
                                cjeline.Remove(c1);
                                Console.WriteLine(c1.Naziv);
                            }
                        }
                        foreach (Cjelina c2 in cjeline)
                        {
                            if (c2.CjelinaRoditeljID == null)
                            {
                                dodajCjelinu(c2, me, true);
                            }
                        }
                    }
                    else
                    {
                        Application.Exit();
                    }
                }
                else
                {
                    //nista
                }
            }
            azrirajTSB.Enabled          = false;
            obrisiTSB.Enabled           = false;
            dodajAktivnostTSB.Enabled   = false;
            dodajZadatakTSB.Enabled     = false;
            prikaziIzvjestajTSB.Enabled = false;
            dodajUcesnikaTSB.Enabled    = false;
            detaljiPNL.Controls.Clear();
        }
        public static void updateNadcjeline(int?ncid)
        {
            int?id = ncid;

            while (id != null)
            {
                if (MySqlCjelinaDao.Instance.Read(new Cjelina {
                    Aktivna = true, CjelinaID = id
                }).Count > 0)
                {
                    Cjelina c = MySqlCjelinaDao.Instance.Read(new Cjelina {
                        Aktivna = true, CjelinaID = id
                    })[0];
                    int    proc       = 0;
                    int    potrebnoCC = 0;
                    double zavrseno   = 0;
                    foreach (Cjelina cj in c.Podcjeline)
                    {
                        potrebnoCC += Convert.ToInt32(cj.BrojPotrebnihCovjekCasova);
                        zavrseno   += ((double)Convert.ToInt32(cj.ProcenatIzvrsenosti) * 0.01 * (double)Convert.ToInt32(cj.BrojPotrebnihCovjekCasova));
                    }

                    int brojAktivnosti = 0;
                    foreach (Aktivnost a in c.Aktivnosti)
                    {
                        if (a.Aktivna == true)
                        {
                            brojAktivnosti++;
                        }
                    }
                    int potrebnoZaPodcjeline = 0;
                    foreach (Cjelina pc in c.Podcjeline)
                    {
                        if (pc.Aktivna == true)
                        {
                            potrebnoZaPodcjeline += Convert.ToInt32(pc.BrojPotrebnihCovjekCasova);
                        }
                    }
                    if (brojAktivnosti > 0)
                    {
                        int?brojPreostalihCC = c.BrojPotrebnihCovjekCasova - potrebnoZaPodcjeline;
                        if (brojPreostalihCC > 0)
                        {
                            foreach (Aktivnost ak in c.Aktivnosti)
                            {
                                if (ak.Aktivna == true)
                                {
                                    if (ak.Zavrsena == true)
                                    {
                                        zavrseno   += (int)((double)brojPreostalihCC / (double)brojAktivnosti);
                                        potrebnoCC += (int)((double)brojPreostalihCC / (double)brojAktivnosti);
                                    }
                                    else
                                    {
                                        potrebnoCC += (int)((double)brojPreostalihCC / (double)brojAktivnosti);
                                    }
                                }
                            }
                        }
                    }

                    if (potrebnoCC != 0)
                    {
                        proc = (int)(100.00 * (zavrseno / (double)potrebnoCC));
                    }
                    else
                    {
                        proc = 0;
                    }
                    c.ProcenatIzvrsenosti = proc;
                    MySqlCjelinaDao.Instance.Update(c);
                    id = c.CjelinaRoditeljID;
                }
            }
        }
        private void obrisiTSB_Click(object sender, EventArgs e)
        {
            BrisanjeForma dijalog = new BrisanjeForma();

            dijalog.ShowDialog();
            if (dijalog.DialogResult == DialogResult.Yes)
            {
                TreeNode selected = projektiTVW.SelectedNode;
                if (selected.Name.StartsWith("p"))
                {
                }
                else if (selected.Name.StartsWith("c"))
                {
                    if (MySqlCjelinaDao.Instance.Read(new Cjelina {
                        Aktivna = true, CjelinaID = Convert.ToInt32(selected.Name.Split('#')[1])
                    }).Count > 0)
                    {
                        Cjelina c = MySqlCjelinaDao.Instance.Read(new Cjelina {
                            Aktivna = true, CjelinaID = Convert.ToInt32(selected.Name.Split('#')[1])
                        })[0];
                        int?ncid = c.CjelinaRoditeljID;
                        MySqlCjelinaDao.Instance.Delete(Convert.ToInt32(c.CjelinaID));
                        updateNadcjeline(ncid);
                        updateTreeView();
                        if (projektiTVW.Nodes.Count > 0)
                        {
                            projektiTVW.SelectedNode = projektiTVW.Nodes[0];
                            projektiTVW.Select();
                        }
                        else
                        {
                            detaljiPNL.Controls.Clear();
                        }
                    }
                }
                else if (selected.Name.StartsWith("a"))
                {
                    if (MySqlAktivnostDao.Instance.Read(new Aktivnost {
                        Aktivna = true, AktivnostID = Convert.ToInt32(selected.Name.Split('#')[1])
                    }).Count > 0)
                    {
                        Aktivnost a = MySqlAktivnostDao.Instance.Read(new Aktivnost {
                            Aktivna = true, AktivnostID = Convert.ToInt32(selected.Name.Split('#')[1])
                        })[0];
                        int?ncid = a.CjelinaID;
                        MySqlAktivnostDao.Instance.Delete(Convert.ToInt32(a.AktivnostID));
                        updateNadcjeline(ncid);
                        updateTreeView();
                        if (projektiTVW.Nodes.Count > 0)
                        {
                            projektiTVW.SelectedNode = projektiTVW.Nodes[0];
                            projektiTVW.Select();
                        }
                        else
                        {
                            detaljiPNL.Controls.Clear();
                        }
                    }
                }
            }
            else
            {
            }
        }
        public ZadatakFormular(Cjelina cj, Int32 projekatID, Int32?nadcjelinaID, bool edit)
        {
            InitializeComponent();
            this.edit = edit;
            pid       = projekatID;
            ncid      = nadcjelinaID;
            if (this.edit && cj != null)
            {
                rokDateTimePicker.MinDate = Convert.ToDateTime(cj.DatumKreiranja);
            }
            else
            {
                rokDateTimePicker.MinDate = DateTime.Now;
            }

            if (nadcjelinaID == null)
            {
                brojPotrebnihCovjekCasovaNumericUpDown.Maximum = 100000;
            }
            else if (MySqlCjelinaDao.Instance.Read(new Cjelina {
                CjelinaID = nadcjelinaID, Aktivna = true
            }).Count > 0)
            {
                Cjelina nadcjelina = MySqlCjelinaDao.Instance.Read(new Cjelina {
                    CjelinaID = nadcjelinaID, Aktivna = true
                })[0];
                int?max = nadcjelina.BrojPotrebnihCovjekCasova;
                foreach (Cjelina c in nadcjelina.Podcjeline)
                {
                    if (c.CjelinaRoditeljID == nadcjelina.CjelinaID && (cj == null || (cj != null && c.CjelinaID != cj.CjelinaID)))
                    {
                        max -= c.BrojPotrebnihCovjekCasova;
                    }
                }
                brojPotrebnihCovjekCasovaNumericUpDown.Maximum = Convert.ToInt32(max);
            }
            if (cj != null)
            {
                cjelina           = cj;
                nazivTextBox.Text = cj.Naziv;
                if (!cj.Rok.Value.Date.Equals(cj.DatumKreiranja.Value.Date))
                {
                    rokDateTimePicker.Value = Convert.ToDateTime(cj.Rok);
                }
                if (cj.BrojPotrebnihCovjekCasova <= brojPotrebnihCovjekCasovaNumericUpDown.Maximum && cj.BrojPotrebnihCovjekCasova >= brojPotrebnihCovjekCasovaNumericUpDown.Minimum)
                {
                    brojPotrebnihCovjekCasovaNumericUpDown.Value = Convert.ToInt32(cj.BrojPotrebnihCovjekCasova);
                }
                else
                {
                    brojPotrebnihCovjekCasovaNumericUpDown.Value = brojPotrebnihCovjekCasovaNumericUpDown.Maximum;
                }
                foreach (Ucesnik u in cj.Ucesnici)
                {
                    ucesniciZadatkaListBox.Items.Add(u.Ime + " " + u.Prezime + " \"" + u.KorisnickoIme + "\"");
                }
                if (nadcjelinaID == null)
                {
                    if (MySqlProjekatDao.Instance.Read(new Projekat {
                        ProjekatID = cj.ProjekatID, Aktivan = true
                    }).Count > 0)
                    {
                        Projekat proj = MySqlProjekatDao.Instance.Read(new Projekat {
                            ProjekatID = cj.ProjekatID, Aktivan = true
                        })[0];
                        foreach (Ucesnik u in proj.UcesniciNaProjektu.Keys)
                        {
                            if (!cj.Ucesnici.Contains(u) && !proj.UcesniciNaProjektu[u].Naziv.Equals("sef"))
                            {
                                dostupniUcesniciListBox.Items.Add(u.Ime + " " + u.Prezime + " \"" + u.KorisnickoIme + "\"");
                            }
                        }
                    }
                }
                else
                {
                    if (MySqlCjelinaDao.Instance.Read(new Cjelina {
                        CjelinaID = nadcjelinaID, Aktivna = true
                    }).Count > 0)
                    {
                        if (MySqlCjelinaDao.Instance.Read(new Cjelina {
                            CjelinaID = nadcjelinaID, Aktivna = true
                        }).Count > 0)
                        {
                            foreach (Ucesnik u in MySqlCjelinaDao.Instance.Read(new Cjelina {
                                CjelinaID = nadcjelinaID, Aktivna = true
                            })[0].Ucesnici)
                            {
                                if (!cj.Ucesnici.Contains(u))
                                {
                                    dostupniUcesniciListBox.Items.Add(u.Ime + " " + u.Prezime + " \"" + u.KorisnickoIme + "\"");
                                }
                            }
                        }
                    }
                }
            }
            else
            {
                if (nadcjelinaID == null)
                {
                    if (MySqlProjekatDao.Instance.Read(new Projekat {
                        ProjekatID = projekatID, Aktivan = true
                    }).Count > 0)
                    {
                        Projekat proj = MySqlProjekatDao.Instance.Read(new Projekat {
                            ProjekatID = projekatID, Aktivan = true
                        })[0];
                        foreach (Ucesnik u in proj.UcesniciNaProjektu.Keys)
                        {
                            if (!proj.UcesniciNaProjektu[u].Naziv.Equals("sef"))
                            {
                                dostupniUcesniciListBox.Items.Add(u.Ime + " " + u.Prezime + " \"" + u.KorisnickoIme + "\"");
                            }
                        }
                    }
                }
                else
                {
                    if (MySqlCjelinaDao.Instance.Read(new Cjelina {
                        CjelinaID = nadcjelinaID, Aktivna = true
                    }).Count > 0)
                    {
                        foreach (Ucesnik u in MySqlCjelinaDao.Instance.Read(new Cjelina {
                            CjelinaID = nadcjelinaID, Aktivna = true
                        })[0].Ucesnici)
                        {
                            dostupniUcesniciListBox.Items.Add(u.Ime + " " + u.Prezime + " \"" + u.KorisnickoIme + "\"");
                        }
                    }
                }
            }
        }