コード例 #1
0
 /// <summary>
 /// Spremanje podataka iz polja, ako je novi korisnik kreira se objekt podacima iz polja,
 /// lozinka se pretvara u hash oblika pomoću metode Hash iz HashKlase dll-a Hash,
 /// kreira se zapis lozinke u čitljivom obliku u xml datoteci
 /// Ako je izmjena nova lozinka se hash-ira i sprema se izmjenjena lozinka u čitljivom obliku u xml
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void spremiButton_Click(object sender, EventArgs e)
 {
     if (odabraniKorisnik == null)
     {
         using (var db = new UpravljanjeKorisnicimaEntities())
         {
             Korisnik noviKorisnik = new Korisnik
             {
                 ime             = tboxIme.Text,
                 prezime         = tboxPrezime.Text,
                 korisnicko_ime  = tboxKorime.Text,
                 lozinka         = HashKlasa.Hash(tboxLozinka.Text),
                 tip_korisnikaId = int.Parse(cboxTip.SelectedValue.ToString())
             };
             db.Korisnik.Add(noviKorisnik);
             db.SaveChanges();
         }
         kreirajZapis(tboxKorime.Text, tboxLozinka.Text);
     }
     else
     {
         using (var db = new UpravljanjeKorisnicimaEntities())
         {
             db.Korisnik.Attach(odabraniKorisnik);
             odabraniKorisnik.ime             = tboxIme.Text;
             odabraniKorisnik.prezime         = tboxPrezime.Text;
             odabraniKorisnik.lozinka         = HashKlasa.Hash(tboxLozinka.Text);
             odabraniKorisnik.korisnicko_ime  = tboxKorime.Text;
             odabraniKorisnik.tip_korisnikaId = int.Parse(cboxTip.SelectedValue.ToString());
             db.SaveChanges();
         }
         spremiLozinku(staroKorime, tboxLozinka.Text, tboxKorime.Text);
     }
     MessageBox.Show("Uspješno dodan korisnik");
 }
コード例 #2
0
ファイル: KorisniciForm.cs プロジェクト: dbukovac/PI_Projekt
        /// <summary>
        /// Provjerava se ako je označen korisnik, javlja se poruka upozorenja, briše se korisnik
        /// ako referencijalni integritet baze to dopušta
        /// uz try catch hvata se iznimka baze ako se ne može brisati
        /// osvježava se datagridview
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void obrisiButton_Click(object sender, EventArgs e)
        {
            Korisnik selektiraniKorisnik = korisnikBindingSource.Current as Korisnik;

            if (selektiraniKorisnik != null)
            {
                if (MessageBox.Show("Da li ste sigurni?", "Upozorenje!", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes)
                {
                    using (var db = new UpravljanjeKorisnicimaEntities())
                    {
                        db.Korisnik.Attach(selektiraniKorisnik);
                        db.Korisnik.Remove(selektiraniKorisnik);
                        try
                        {
                            db.SaveChanges();
                        }
                        catch (Exception)
                        {
                            MessageBox.Show("Nije moguće obrisati korisnika koji se koristi");
                        }
                    }
                    PrikaziKorisnike();
                    MessageBox.Show("Uspješno obrisan korisnik");
                }
            }
        }
コード例 #3
0
ファイル: KorisniciForm.cs プロジェクト: dbukovac/PI_Projekt
        /// <summary>
        /// Metoda za prikazivanje korisnika, dohvaća i tipove korisnika za prikazivanje imena umjesto id-a
        /// </summary>
        private void PrikaziKorisnike()
        {
            BindingList <Korisnik>      listaKorisnika = null;
            BindingList <Tip_korisnika> listaTipova    = new BindingList <Tip_korisnika>();

            using (var db = new UpravljanjeKorisnicimaEntities())
            {
                listaKorisnika = new BindingList <Korisnik>(db.Korisnik.ToList());
                foreach (Korisnik kor in listaKorisnika)
                {
                    listaTipova.Add(kor.Tip_korisnika);
                }
            }
            korisnikBindingSource.DataSource     = listaKorisnika;
            tipkorisnikaBindingSource.DataSource = listaTipova;
        }
コード例 #4
0
        /// <summary>
        /// Ako se radi o izmjeni, polja se pune podacima označenog korisnika,
        /// lozinka se dohvaća pomoću metode dohvatiLozinku, sprema se staro korisničko ime,
        /// za ažuriranje xml datoteke
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void NoviKorisnikForm_Load(object sender, EventArgs e)
        {
            BindingList <Tip_korisnika> listaTipova = null;

            using (var db = new UpravljanjeKorisnicimaEntities())
            {
                listaTipova = new BindingList <Tip_korisnika>(db.Tip_korisnika.ToList());
            }
            tipkorisnikaBindingSource.DataSource = listaTipova;
            if (odabraniKorisnik != null)
            {
                tboxIme.Text     = odabraniKorisnik.ime;
                tboxKorime.Text  = odabraniKorisnik.korisnicko_ime;
                tboxPrezime.Text = odabraniKorisnik.prezime;
                tboxLozinka.Text = dohvatiLozinku(odabraniKorisnik.korisnicko_ime);
                cboxTip.Text     = odabraniKorisnik.Tip_korisnika.naziv;

                staroKorime = odabraniKorisnik.korisnicko_ime;
            }
        }
コード例 #5
0
ファイル: KorisniciForm.cs プロジェクト: dbukovac/PI_Projekt
        /// <summary>
        /// Izmjenom teksta u polju za pretraživanje prikazuju se samo korisnici
        /// čiji naziv paše pretrazi
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void tboxPretrazi_TextChanged(object sender, EventArgs e)
        {
            BindingList <Korisnik>      listaKorisnika        = null;
            BindingList <Korisnik>      bindingListaKorisnika = new BindingList <Korisnik>();
            BindingList <Tip_korisnika> listaTipova           = new BindingList <Tip_korisnika>();

            using (var db = new UpravljanjeKorisnicimaEntities())
            {
                listaKorisnika = new BindingList <Korisnik>(db.Korisnik.ToList());
                foreach (Korisnik kor in listaKorisnika)
                {
                    if (kor.ime.ToLower().Contains(tboxPretrazi.Text))
                    {
                        bindingListaKorisnika.Add(kor);
                        listaTipova.Add(kor.Tip_korisnika);
                    }
                }
            }
            korisnikBindingSource.DataSource     = bindingListaKorisnika;
            tipkorisnikaBindingSource.DataSource = listaTipova;
        }