private void Window_Activated(object sender, EventArgs e)
        {
            //ucitavanje u combobox
            PasDAO p = new PasDAO("localhost", "Centar", "root", "");
            List<Pas> psi = new List<Pas>();
            psi = p.getAllUdomljeneINeudomljene();

            foreach (Pas kl in psi)
            {
                comboBox_vlasnikPsa.Items.Add(kl);
            }

            textBox_jmb_edit.Text = klijent.jmb;
            textBox_ime_edit.Text = klijent.ime;
            textBox_prezime_edit.Text = klijent.prezime;
            textBox_adresa_edit.Text = klijent.adresa;
            for (int i = 0; i < comboBox_vlasnikPsa.Items.Count; i++)
            {
                if ( ((Pas)comboBox_vlasnikPsa.Items[i]).id==klijent.vlasnikPsa.id)
                {
                    comboBox_vlasnikPsa.SelectedIndex = i;
                }
            }
            datePicker_datumPreuzimanja.SelectedDate = klijent.datumPreuzimanjaPsa;
        }
 public Klijent(String _jmb, String _ime, String _prezime, String _adresa, Pas _vlasnikPsa, DateTime _datumPreuzimanja)
     : base(_jmb, _ime, _prezime, _adresa)
 {
     PasDAO p = new PasDAO("localhost", "Centar", "root", "");
     List<Pas> pas = new List<Pas>();
     pas = p.getByExample(Convert.ToString(_vlasnikPsa.id));
     vlasnikPsa = pas[0];
     datumPreuzimanjaPsa = _datumPreuzimanja;
 }
        public Klijent(String _jmb, String _ime, String _prezime, String _adresa, Int32 _idVlasnikPsa, DateTime _datumPreuzimanja)
            : base(_jmb, _ime, _prezime, _adresa)
        {
            PasDAO p = new PasDAO("localhost", "Centar", "root", "");
            Pas pas = new Pas();
            pas = p.getById(_idVlasnikPsa);

            vlasnikPsa = pas;
            datumPreuzimanjaPsa = _datumPreuzimanja;
        }
        private void button_add_Click(object sender, RoutedEventArgs e)
        {
            Klijent k = new Klijent(textBox_jmb_edit.Text, textBox_ime_edit.Text, textBox_prezime_edit.Text, textBox_adresa_edit.Text, (Pas)comboBox_vlasnikPsa.SelectedItem, datePicker_datumPreuzimanja.SelectedDate.Value);
            KlijentDAO kl = new KlijentDAO("localhost", "Centar", "root", "");
            kl.create(k);

            PasDAO pasDao = new PasDAO("localhost", "Centar", "root", "");
            Pas pas = new Pas(((Pas)comboBox_vlasnikPsa.SelectedItem).id, ((Pas)comboBox_vlasnikPsa.SelectedItem).zdravstvenoStanje, "Udomljen", ((Pas)comboBox_vlasnikPsa.SelectedItem).datumRodjenja, ((Pas)comboBox_vlasnikPsa.SelectedItem).datumCipiranja, ((Pas)comboBox_vlasnikPsa.SelectedItem).sterilizovan, ((Pas)comboBox_vlasnikPsa.SelectedItem).datumSterilizacije);
            pasDao.update(pas);
            this.Close();
        }
 private void textbox_search_TextChanged(object sender, TextChangedEventArgs e)
 {
     listbox_psi.Items.Clear();
     PasDAO pd = new PasDAO("localhost", "Centar", "root", "");
     List<Pas> psi = new List<Pas>();
     psi = pd.getAll();
     foreach (Pas p in psi)
     {
         if (p.id.ToString().Contains(textbox_search.Text))
             listbox_psi.Items.Add(p);
     }
 }
 private void button_sviAAA_Click(object sender, RoutedEventArgs e)
 {
     textbox_search.Visibility = System.Windows.Visibility.Hidden;
     listbox_psi.Items.Clear();
     PasDAO pd = new PasDAO("localhost", "Centar", "root", "");
     List<Pas> psi = new List<Pas>();
     psi = pd.getAll();
     foreach (Pas p in psi)
     {
         listbox_psi.Items.Add(p);
     }
 }
 private void textBox_search_TextChanged(object sender, TextChangedEventArgs e)
 {
     listBox_login.Items.Clear();
     if (textBox_search.Text.Length == 0)
     {
         ProvjeraIDOdavanjeUlistuSvega();
     }
     if (radioButton_searchPsa.IsChecked == true) // pretraga po psu
     {
         PasDAO pas1 = new PasDAO("localhost", "Centar", "root", "");
         List<Pas> p = new List<Pas>();
         p = pas1.getAll();
         listBox_login.Items.Clear();
         foreach (Pas pas in p)
         {
             if(pas.id.ToString().Contains(textBox_search.Text))
                 listBox_login.Items.Add(pas);
         }
     }
     else if (radioButton_searchKlijenta.IsChecked == true) // pretraga po klijentu
     {
         KlijentDAO k1 = new KlijentDAO("localhost", "Centar", "root", "");
         List<Klijent> k = new List<Klijent>();
         k = k1.getAll();
         listBox_login.Items.Clear();
         foreach (Klijent k2 in k)
         {
             if(k2.jmb.ToString().Contains(textBox_search.Text))
                 listBox_login.Items.Add(k2);
         }
     }
     else // pretraga po radnicima
     {
         RadnikDAO radnik1 = new RadnikDAO("localhost", "Centar", "root", "");
         List<Radnik> p = new List<Radnik>();
         p = radnik1.getAll();
         listBox_login.Items.Clear();
         foreach (Radnik r in p)
         {
             if(r.jmb.ToString().Contains(textBox_search.Text))
                 listBox_login.Items.Add(r);
             
         }
     }
 }
        private void Grid_Loaded_1(object sender, RoutedEventArgs e)
        {
            //ucitavanje u combobox
            PasDAO p = new PasDAO("localhost", "Centar", "root", "");
            List<Pas> psi = new List<Pas>();
            psi = p.getAllNeudomljene();

            if (psi == null)
            {
                System.Windows.Forms.MessageBox.Show("Nema pasa spremnih za udomljavanje");
                this.Close();
            }

            foreach (Pas kl in psi)
            {
                comboBox_vlasnikPsa.Items.Add(kl);
            }
        }
        public Ugovor(int sifra, int idPas, int idKlijent, int idRadnik)
        {
            PasDAO p = new PasDAO("localhost", "Centar", "root", "");
            Pas pas = new Pas();
            pas = p.getById(idPas);

            KlijentDAO k = new KlijentDAO("localhost", "Centar", "root", "");
            Klijent klij = new Klijent();
            klij = k.getById(idKlijent);

            RadnikDAO r = new RadnikDAO("localhost", "Centar", "root", "");
            Radnik rad = new Radnik();
            rad = r.getById(idRadnik);

            Sifra = sifra;
            Pas = pas;
            Vlasnik = klij;
            Radnik = rad;
        }
        public Ugovor(int sifra, Pas pasPr, Klijent klijentPr, Radnik radnikPr)
        {
            PasDAO p = new PasDAO("localhost", "Centar", "root", "");
            List<Pas> pas = new List<Pas>();
            pas = p.getByExample(Convert.ToString(pasPr.id));

            KlijentDAO k = new KlijentDAO("localhost", "Centar", "root", "");
            List<Klijent> klij = new List<Klijent>();
            klij = k.getByExample(klijentPr.jmb);

            RadnikDAO r = new RadnikDAO("localhost", "Centar", "root", "");
            List<Radnik> rad = new List<Radnik>();
            rad = r.getByExample(radnikPr.jmb);

            Sifra = sifra;
            Pas = pas[0];
            Vlasnik = klij[0];
            Radnik = rad[0];
        }
        private void Grid_Loaded(object sender, RoutedEventArgs e)
        {
            try
            {
                listbox_psi.Items.Clear();
                listbox_radnici.Items.Clear();
                listbox_klijenti.Items.Clear();

                //ucitavanje neudomljenih pasa
                PasDAO pd = new PasDAO("localhost", "Centar", "root", "");
                List<Pas> psi = new List<Pas>();
                psi = pd.getAllNeudomljene();
                foreach (Pas p in psi)
                {
                    listbox_psi.Items.Add(p);
                }

                //ucitavanje klijenata
                KlijentDAO kd = new KlijentDAO("localhost", "Centar", "root", "");
                List<Klijent> klijenti = new List<Klijent>();
                klijenti = kd.getAll();
                foreach (Klijent p in klijenti)
                {
                    listbox_klijenti.Items.Add(p);
                }

                //ucitavanje radnika
                RadnikDAO rd = new RadnikDAO("localhost", "Centar", "root", "");
                List<Radnik> radnici = new List<Radnik>();
                radnici = rd.getAll();
                foreach (Radnik p in radnici)
                {
                    listbox_radnici.Items.Add(p);
                }
            }
            catch (Exception izuz)
            {
                System.Windows.Forms.MessageBox.Show(izuz.Message);
            }
        }
        private void button_edit_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                klijent = new Klijent(textBox_jmb_edit.Text, textBox_ime_edit.Text, textBox_prezime_edit.Text, textBox_adresa_edit.Text, (Pas)comboBox_vlasnikPsa.SelectedItem, datePicker_datumPreuzimanja.SelectedDate.Value);
                KlijentDAO k = new KlijentDAO("localhost", "Centar", "root", ""); ;
                k.update(klijent);

                PasDAO pasDao = new PasDAO("localhost", "Centar", "root", "");
                Pas pas = new Pas(((Pas)comboBox_vlasnikPsa.SelectedItem).id, ((Pas)comboBox_vlasnikPsa.SelectedItem).zdravstvenoStanje, "Udomljen", ((Pas)comboBox_vlasnikPsa.SelectedItem).datumRodjenja, ((Pas)comboBox_vlasnikPsa.SelectedItem).datumCipiranja, ((Pas)comboBox_vlasnikPsa.SelectedItem).sterilizovan, ((Pas)comboBox_vlasnikPsa.SelectedItem).datumSterilizacije);
                pasDao.update(pas);

                PasDAO pasDao2 = new PasDAO("localhost", "Centar", "root", "");
                Pas pasStari = new Pas(klijent.vlasnikPsa.id, klijent.vlasnikPsa.zdravstvenoStanje, "Ceka udomljavanje", klijent.vlasnikPsa.datumRodjenja , klijent.vlasnikPsa.datumCipiranja , klijent.vlasnikPsa.sterilizovan, klijent.vlasnikPsa.datumSterilizacije);
                pasDao2.update(pasStari);
                this.Close();
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(ex.Message.ToString());
            }
        }
        private void buttton_dodaj_add_Click(object sender, RoutedEventArgs e)
        {
            //dodavanje psa
            try
            {
                Pas pas = new Pas(Convert.ToInt32(textBox_idPsa_add.Text), ComboBox_zdrStanje_add.SelectedItem.ToString(), comboBox_status_add.SelectedItem.ToString());
                if (radioButton_da_add.IsChecked == true)
                    {
                        pas.sterilizovan = true;
                        pas.datumSterilizacije = datePicker_datSter_add.SelectedDate.Value;
                    }
                else pas.sterilizovan = false;

                if (datePicker_datCipiranja_add.SelectedDate != null)
                {
                    pas.datumCipiranja = datePicker_datCipiranja_add.SelectedDate.Value;
                }

                if (datePicker_datRodj_add.SelectedDate != null)
                {
                    pas.datumRodjenja = datePicker_datRodj_add.SelectedDate.Value;
                }

                if (pas.status.ToLower() == "udomljen")
                {
                   // pas.vlasnik = (Klijent)comboBox_vlasnik_add.SelectedItem;
                }

                PasDAO pasDao = new PasDAO("localhost", "Centar", "root", "");
                pasDao.create(pas);
                System.Windows.Forms.MessageBox.Show("Pas uspijesno dodan", "Obavijestenje");
            }
            catch (Exception ex)
            {
                System.Windows.Forms.MessageBox.Show(ex.Message.ToString());
            }
        }
        private void ProvjeraIDOdavanjeUlistuSvega()
        {

            listBox_login.Items.Clear();
            if (ButtonSearch)
            {
                if (radioButton_searchKlijenta.IsChecked == true)
                {
                    KlijentDAO k1 = new KlijentDAO("localhost", "Centar", "root", "");
                    List<Klijent> k = new List<Klijent>();
                    k = k1.getAll();
                    foreach (Klijent kl in k)
                    {
                        listBox_login.Items.Add(kl);
                    }
                }
                else if (radioButton_searchPsa.IsChecked == true)
                {
                    PasDAO pas1 = new PasDAO("localhost", "Centar", "root", "");
                    List<Pas> p = new List<Pas>();
                    p = pas1.getAll();
                    foreach (Pas pas in p)
                    {
                        listBox_login.Items.Add(pas);
                    }

                }
                else if (radioButton_searchRadnika.IsChecked == true)
                {
                    RadnikDAO radnik1 = new RadnikDAO("localhost", "Centar", "root", "");
                    List<Radnik> p = new List<Radnik>();
                    p = radnik1.getAll();
                    foreach (Radnik r in p)
                    {
                        listBox_login.Items.Add(r);

                    }
                }
            }
        }
        private void MenuItemObrisi_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (radioButton_searchKlijenta.IsChecked == true)
                {
                    KlijentDAO k1 = new KlijentDAO("localhost", "Centar", "root", "");
                    Klijent k = new Klijent();
                    k = listBox_login.SelectedItem as Klijent;
                    k1.delete(k);

                }
                else if (radioButton_searchPsa.IsChecked == true)
                {
                    PasDAO pas1 = new PasDAO("localhost", "Centar", "root", "");
                    Pas p = new Pas();
                    p = listBox_login.SelectedItem as Pas;
                    pas1.delete(p);

                }
                else if (radioButton_searchRadnika.IsChecked == true)
                {
                    RadnikDAO radnik1 = new RadnikDAO("localhost", "Centar", "root", "");
                    Radnik r = new Radnik();
                    r = listBox_login.SelectedItem as Radnik;
                    radnik1.delete(r);
                }
                listBox_login.Items.Remove(listBox_login.SelectedItem);
            }
            catch (Exception izuz)
            {
                System.Windows.Forms.MessageBox.Show(izuz.Message);
            }
        }
        private void button_potpisi_Click(object sender, RoutedEventArgs e)
        {
            try 
	        {	        
		        Random r=new Random();
                petlja:
                int sif=r.Next(100000,999999);
                
                UgovorDAO ugovorD1 = new UgovorDAO("localhost", "Centar", "root", "");
                Ugovor Ugovor = new Ugovor();
                Ugovor = ugovorD1.getById(sif);
                if (Ugovor.Sifra==sif)
                {
                    goto petlja; 
                }
                    
                UgovorDAO ugovorD = new UgovorDAO("localhost", "Centar", "root", "");
                Ugovor ugovorNovi = new Ugovor(sif,((Pas)listbox_psi.SelectedItem),((Klijent)listbox_klijenti.SelectedItem),((Radnik)listbox_radnici.SelectedItem));
                ugovorD.create(ugovorNovi);

                //update psa... stanje u udomljen
                Pas p= new Pas();
                p = (Pas)listbox_psi.SelectedItem;
                p.status = "Udomljen";
                PasDAO pasKonekcija = new PasDAO("localhost", "Centar", "root", "");
                pasKonekcija.update(p);

                System.Windows.Forms.MessageBox.Show("Novi ugovor je zakljucen","Obavjestenje");
	        }
	        catch (Exception izuz)
	        {
		        System.Windows.Forms.MessageBox.Show(izuz.Message);
	        }
            Ugovor_Opcije ug = new Ugovor_Opcije();
            ug.Show();
            this.Close();
            
        }