/// <summary>
        /// Metoda koja se poziva prilikom klika na gumb "Spremi promjene"
        /// (materijal se ažurira/dodaje se novi materijal u bazu)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void BtnSpremiPromjene_Click(object sender, EventArgs e)
        {
            // varijabla koja se koristi u slučaju greške (sadržava poruku koja će se prikazati)
            string poruka = "";

            // kod se nalazi unutar try-catch-finally bloka kako bi uspješno detektirali greške kao što su CONSTRAINT Violation
            try
            {
                using (var db = new Entities(Konstante.GetConnectionString()))
                {
                    if (materijal == null)
                    {
                        materijal noviMaterijal = new materijal()
                        {
                            naziv_materijala    = tbNazivMaterijala.Text,
                            dimenzije           = tbDimenzije.Text,
                            sastav              = tbSastav.Text,
                            dodatne_informacije = tbDodatneInfo.Text,
                            ID_jed_mjere        = cbJedMjere.SelectedValue.ToString()
                        };

                        if (!string.IsNullOrWhiteSpace(tbNazivMaterijala.Text) && !string.IsNullOrWhiteSpace(tbDimenzije.Text) && !string.IsNullOrWhiteSpace(tbSastav.Text))
                        {
                            db.materijal.Add(noviMaterijal);
                            db.SaveChanges();
                        }
                        else
                        {
                            poruka = "Material name, dimensions and composition are mandatory fields!";
                        }
                    }
                    else
                    {
                        db.materijal.Attach(materijal);
                        materijal.naziv_materijala    = tbNazivMaterijala.Text;
                        materijal.dimenzije           = tbDimenzije.Text;
                        materijal.sastav              = tbSastav.Text;
                        materijal.dodatne_informacije = tbDodatneInfo.Text;
                        materijal.ID_jed_mjere        = cbJedMjere.SelectedValue.ToString();
                        materijal.ID_materijal        = int.Parse(tbIdMaterijal.Text);

                        if (!string.IsNullOrWhiteSpace(tbNazivMaterijala.Text) && !string.IsNullOrWhiteSpace(tbDimenzije.Text) && !string.IsNullOrWhiteSpace(tbSastav.Text))
                        {
                            db.SaveChanges();
                        }
                        else
                        {
                            poruka = "Material name, dimensions and composition are mandatory fields!";
                        }
                    }
                }
            }
            catch (Exception)
            {
                poruka = "Error occurred while saving material (does this user already exist?)";;
            }
            finally
            {
                if (!string.IsNullOrWhiteSpace(poruka))
                {
                    MessageBox.Show(poruka);
                }
                else
                {
                    Close();
                }
            }
        }
 public FrmUrediDodajMaterijal(object _materijal)
 {
     InitializeComponent();
     materijal           = (materijal)_materijal;
     jedinicaMjereLogika = new JedinicaMjereLogika();
 }