예제 #1
0
        private void PopuniPolaznike(ErsteModel ersteModel)
        {
            var list = ersteModel.polaznici
                       .Where(e => e.grupe.Any(g => g.Id == grupa.Id))
                       .ToList();

            list.Sort((a, b) =>
            {
                int res;
                if ((res = string.Compare(a.osoba.Ime, b.osoba.Ime, StringComparison.Ordinal)) != 0)
                {
                    return(res);
                }
                return(string.Compare(a.osoba.Prezime, b.osoba.Prezime, StringComparison.Ordinal));
            });

            PolazniciTable.Items.Clear();
            PolazniciTable.ItemsSource = null;
            foreach (var polaznik in list)
            {
                if (polaznik.osoba != null)
                {
                    PolazniciTable.Items.Add(polaznik);
                }
            }
        }
예제 #2
0
        private void Load_Data()
        {
            DataGrid.Items.Clear();
            DataGrid.ItemsSource = null;
            DataGrid.Items.Refresh();
            try
            {
                using (var ersteModel = new ErsteModel())
                {
                    var sluzbenici = (from sluzbenik in ersteModel.sluzbenici.Include("osoba")
                                      join osoba in ersteModel.osobe.Include("sluzbenik") on sluzbenik.Id equals osoba.Id
                                      select sluzbenik).ToList();

                    foreach (var sluzbenik in sluzbenici)
                    {
                        if (sluzbenik.osoba != null)
                        {
                            DataGrid.Items.Add(sluzbenik);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("MySQL Exception: " + ex.ToString());
            }
        }
예제 #3
0
        private void Load_Data()
        {
            DataGrid.Items.Clear();
            DataGrid.ItemsSource = null;
            DataGrid.Items.Refresh();
            try
            {
                using (var ersteModel = new ErsteModel())
                {
                    var profesori = (from profesor in ersteModel.profesori
                                     join osoba in ersteModel.osobe on profesor.Id equals osoba.Id
                                     select profesor).ToList();

                    foreach (var profesor in profesori)
                    {
                        if (profesor.osoba != null)
                        {
                            DataGrid.Items.Add(profesor);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("MySQL Exception: " + ex.ToString());
            }
        }
예제 #4
0
        public void AddButtonActions(params Button[] buttons)
        {
            buttons[0].Click += (sender, args) =>
            {
                NalogSluzbenikaDialog nalogSluzbenikaDialog = new NalogSluzbenikaDialog(null);
                nalogSluzbenikaDialog.ShowDialog();

                Load_Data();
            };
            buttons[1].Click += (sender, args) =>
            {
                var dataGridSelectedItems = DataGrid.SelectedItems;
                using (var ersteModel = new ErsteModel())
                {
                    foreach (var dataGridSelectedItem in dataGridSelectedItems)
                    {
                        var sluzbenikRemove = ersteModel.sluzbenici.Find(((sluzbenik)dataGridSelectedItem).Id);
                        if (sluzbenikRemove?.osoba != null)
                        {
                            ersteModel.osobe.Remove(sluzbenikRemove.osoba);
                            ersteModel.SaveChanges();
                        }
                    }
                }
                Load_Data();
            };
        }
예제 #5
0
        public void AddButtonActions(params Button[] buttons)
        {
            buttons[0].Click += (sender, args) =>
            {
                EvidencijaProfesoraDialog evidencijaProfesoraDialog = new EvidencijaProfesoraDialog(null);
                evidencijaProfesoraDialog.ShowDialog();

                Load_Data();
            };
            buttons[1].Click += (sender, args) =>
            {
                var dataGridSelectedItems = DataGrid.SelectedItems;
                using (var ersteModel = new ErsteModel())
                {
                    foreach (var dataGridSelectedItem in dataGridSelectedItems)
                    {
                        var profesorRemove = ersteModel.profesori.Find(((profesor)dataGridSelectedItem).Id);
                        if (profesorRemove?.osoba != null)
                        {
                            ersteModel.osobe.Remove(profesorRemove.osoba);
                            ersteModel.SaveChanges();
                        }
                    }
                }
                Load_Data();
            };
        }
예제 #6
0
        private void Load_Data()
        {
            DataGrid.Items.Clear();
            DataGrid.ItemsSource = null;
            DataGrid.Items.Refresh();
            try
            {
                using (var ersteModel = new ErsteModel())
                {
                    var kursevi = (from kurs in ersteModel.kursevi
                                   join jezik in ersteModel.jezici on kurs.JezikId equals jezik.Id
                                   select kurs).ToList();

                    foreach (var kurs in kursevi)
                    {
                        if (kurs.jezik != null)
                        {
                            DataGrid.Items.Add(kurs);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("MySQL Exception: " + ex.ToString());
            }
        }
        private void btn_PrikaziGrupe_Click(object sender, RoutedEventArgs e)
        {
            ResetBorderColors();
            int odabraniJezikInt = chb_Jezik.SelectedIndex;
            int odabraniNivoInt  = chb_Nivo.SelectedIndex;

            if (odabraniJezikInt < 0 || odabraniNivoInt < 0)
            {
                MessageBox.Show("Odaberite jezik i nivo kursa za prikaz grupa.");
                chb_Jezik.BorderBrush = Brushes.Red;
                chb_Nivo.BorderBrush  = Brushes.Red;

                return;
            }
            string odabraniJezik = (string)chb_Jezik.Items.GetItemAt(odabraniJezikInt);
            string odabraniNivo  = (string)chb_Nivo.Items.GetItemAt(odabraniNivoInt);



            if (string.IsNullOrEmpty(odabraniJezik))
            {
                MessageBox.Show("Odaberite jezik za prikaz grupa.");
                chb_Jezik.BorderBrush = Brushes.Red;
                return;
            }
            else if (string.IsNullOrEmpty(odabraniNivo))
            {
                MessageBox.Show("Odaberite nivo kursa za prikaz grupa.");
                chb_Nivo.BorderBrush = Brushes.Red;
                return;
            }

            using (var ersteModel = new ErsteModel())
            {
                var kursGrupa = (from g in ersteModel.grupe join k in ersteModel.kursevi on g.KursId equals k.Id
                                 join j in ersteModel.jezici on k.JezikId equals j.Id
                                 where g.BrojClanova >= 1 && k.DatumDo.CompareTo(DateTime.Now) > 0 &&
                                 j.Naziv.Equals(odabraniJezik) && k.Nivo.Equals(odabraniNivo)
                                 select new GrupaKursZapis {
                    Grupa = g,
                    Kurs = k,
                    Jezik = j
                }).ToList();
                if (kursGrupa.Count == 0)
                {
                    MessageBox.Show("Nema formiranih grupa.");
                    return;
                }
                foreach (var zapis in kursGrupa)
                {
                    if (!GrupeDataGrid.Items.Contains(zapis))
                    {
                        GrupeDataGrid.Items.Add(zapis);
                    }
                }
            }
        }
예제 #8
0
        private void PopuniTermineCombo(ErsteModel ersteModel)
        {
            var termini = ersteModel.termini.Where(e => e.GrupaId != grupa.Id).ToList();

            dodavanjeTermina.Items.Clear();
            foreach (var termin in termini)
            {
                dodavanjeTermina.Items.Add($"{termin.Dan} ({termin.Od:hh\\:mm}-{termin.Do:hh\\:mm})");
            }
        }
예제 #9
0
 private void InitCombos()
 {
     using (ErsteModel ersteModel = new ErsteModel())
     {
         foreach (var naziv in ersteModel.jezici.Select(e => e.Naziv).ToList())
         {
             JezikCombo.Items.Add(naziv);
         }
         foreach (var nivo in ersteModel.kursevi.Select(e => e.Nivo).Distinct().ToList())
         {
             NivoKursaCombo.Items.Add(nivo);
         }
     }
 }
예제 #10
0
        private void PopuniProfesoreCombo(ErsteModel ersteModel)
        {
            var profesori = ersteModel.profesori.ToList();

            foreach (profesor profesor in ProfesoriTable.Items)
            {
                profesori.RemoveAll(e => e.Id == profesor.Id);
            }
            dodavanjeProfesora.Items.Clear();
            foreach (var profesor in profesori)
            {
                dodavanjeProfesora.Items.Add($"{profesor.osoba.Ime} {profesor.osoba.Prezime} ({profesor.osoba.Email})");
            }
        }
예제 #11
0
 private void PromjenaGrupe_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
 {
     if (flag)
     {
         using (ErsteModel ersteModel = new ErsteModel())
         {
             if (e.AddedItems.Count > 0)
             {
                 string text = e.AddedItems[0].ToString();
                 grupa = ersteModel.grupe.First(g => g.Naziv == text);
                 Init();
                 NazivGrupeCombo.Text = text;
             }
         }
     }
 }
        private void loadChb()
        {
            using (var ersteModel = new ErsteModel())
            {
                var jezici = (from j in ersteModel.jezici select j).Select(j => j.Naziv);
                //var nivoi = (from k in ersteModel.kursevi select k).Select(k => k.Nivo);

                // nivoi = nivoi.Distinct();

                foreach (string naziv in jezici)
                {
                    chb_Jezik.Items.Add(naziv);
                }
                //foreach( string nivo in nivoi)
                //     chb_Nivo.Items.Add(nivo);
            }
        }
예제 #13
0
 private void Init()
 {
     if (grupa == null)
     {
         using (ErsteModel model = new ErsteModel())
         {
             grupa = model.grupe.FirstOrDefault();
         }
     }
     if (grupa is null)
     {
         NazivGrupeCombo.IsEnabled = false;
         return;
     }
     using (ErsteModel ersteModel = new ErsteModel())
     {
         BrojClanovaBox.Text = $"{ersteModel.polaznici.Count(e => e.grupe.Any(g => g.Id == grupa.Id))}";
         kurs kurs = ersteModel.kursevi.First(e => e.grupe.Any(p => p.Id == grupa.Id));
         if (!(kurs is null))
         {
             NazivGrupeCombo.Items.Clear();
             NazivGrupeCombo.ItemsSource = null;
             var grupe = ersteModel.grupe.Select(e => e.Naziv).ToList();
             foreach (var naziv in grupe)
             {
                 NazivGrupeCombo.Items.Add(naziv);
             }
             //NazivGrupeCombo.Text = $"{grupa.Naziv}";
             flag = false;
             NazivGrupeCombo.SelectedIndex = grupe.IndexOf(grupa.Naziv);
             flag           = true;
             NivoKursa.Text = $"{kurs.Nivo}";
             jezik jezik = ersteModel.jezici.Find(kurs.JezikId);
             if (!(jezik is null))
             {
                 jezikKursa.Text = $"{jezik.Naziv}";
             }
         }
         PopuniTermine(ersteModel);
         PopuniPolaznike(ersteModel);
         PopuniProfesore(ersteModel);
         PopuniPolaznikeCombo(ersteModel);
         PopuniProfesoreCombo(ersteModel);
         PopuniTermineCombo(ersteModel);
     }
 }
예제 #14
0
        private void DodavanjePolaznika_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            Func <string, string[]> parser = s =>
            {
                string[] result         = new string[3];
                var      splittedString = s.Split(' ');
                if (splittedString.Length >= 3)
                {
                    result[2] = splittedString[splittedString.Length - 1].Substring(1, splittedString[splittedString.Length - 1].Length - 2);
                    result[1] = splittedString[splittedString.Length - 2];
                    result[0] = splittedString.Take(splittedString.Length - 2).Aggregate("", (acc, x) => acc + x);;
                }
                return(result);
            };

            if (flag)
            {
                using (ErsteModel ersteModel = new ErsteModel())
                {
                    if (e.AddedItems.Count > 0)
                    {
                        string   text     = e.AddedItems[0].ToString();
                        var      p        = parser(text);
                        string   ime      = p[0];
                        string   prezime  = p[1];
                        string   email    = p[2];
                        polaznik polaznik = ersteModel.polaznici.First(g => g.osoba.Ime == ime && g.osoba.Prezime == prezime && g.osoba.Email == email);
                        grupa    grupica  = ersteModel.grupe.Where(gr => gr.Id == grupa.Id).ToList().First();
                        grupica.polaznici.Add(polaznik);
                        polaznik.grupe.Add(grupica);
                        string odabraniNivo        = NivoKursa.Text;
                        string odabraniJezik       = jezikKursa.Text;
                        polaznik_na_cekanju p_na_c = polaznik.polaznik_na_cekanju;
                        kurs kurs_za_p_na_c        = p_na_c.kursevi.First(k => k.Nivo.Equals(odabraniNivo) &&
                                                                          k.jezik.Naziv.Equals(odabraniJezik));
                        kurs_za_p_na_c.polaznici_na_cekanju.Remove(p_na_c);
                        p_na_c.kursevi.Remove(kurs_za_p_na_c);
                        p_na_c.polaznik.polaznik_na_cekanju = null;
                        ersteModel.SaveChanges();
                        Init();
                        NazivGrupeCombo.Text = text;
                    }
                }
            }
        }
예제 #15
0
        private async void Potvrdi_Click(object sender, RoutedEventArgs e)
        {
            if (string.IsNullOrWhiteSpace(DanCombo.Text))
            {
                MessageBox.Show("Odaberite dan termina.");
                return;
            }
            if (string.IsNullOrWhiteSpace(TimePickerOd.Value.ToString()) || string.IsNullOrWhiteSpace(TimePickerDo.Value.ToString()))
            {
                MessageBox.Show("Popunite termine.");
                return;
            }
            Func <DateTime?, DateTime?, bool> compare = (a, b) => a?.TimeOfDay.CompareTo(b?.TimeOfDay) > 0;

            if (compare(TimePickerOd.Value, TimePickerDo.Value))
            {
                MessageBox.Show("Termin početka mora biti prije termina završetka.");
                return;
            }

            using (ErsteModel ersteModel = new ErsteModel())
            {
                termin termin = await ersteModel.termini.FindAsync(item.termin.Id);

                if (termin != null)
                {
                    termin.Dan = DanCombo.Text;
                    if (TimePickerOd.Value != null)
                    {
                        termin.Od = TimePickerOd.Value.Value.TimeOfDay;
                    }
                    if (TimePickerDo.Value != null)
                    {
                        termin.Do = TimePickerDo.Value.Value.TimeOfDay;
                    }
                    if (GrupaCombo.Text != "Nije dodijeljena grupa" && !string.IsNullOrWhiteSpace(GrupaCombo.Text))
                    {
                        termin.GrupaId = (await ersteModel.grupe.FirstAsync(g => g.Naziv == GrupaCombo.Text)).Id;
                    }
                    await ersteModel.SaveChangesAsync();
                }
            }
            Close();
            refresh();
        }
예제 #16
0
 private void ObrisiKurs()
 {
     try
     {
         using (var ersteModel = new ErsteModel())
         {
             kurs kurs_remove = ersteModel.kursevi.Find(kurs.Id);
             ersteModel.kursevi.Remove(kurs_remove);
             ersteModel.SaveChanges();
         }
         MessageBox.Show("Kurs je uspješno obrisan.");
         Close();
     }
     catch (Exception ex)
     {
         MessageBox.Show("MySQL Exception: " + ex.ToString());
     }
 }
예제 #17
0
        private async void PregledGrupe_OnMouseUp(object sender, MouseButtonEventArgs e)
        {
            string NazivGrupe = null;
            grupa  grupa;

            if (Dispatcher != null)
            {
                await Dispatcher.InvokeAsync(() =>
                {
                    NazivGrupe = GrupaCombo.SelectedItem.ToString();
                });
            }

            if (NazivGrupe == null || NazivGrupe == "Nije dodijeljena grupa")
            {
                MessageBox.Show("Nije dodijeljena grupa.");
                return;
            }

            using (ErsteModel ersteModel = new ErsteModel())
            {
                //grupa = await ersteModel.grupe.FirstAsync(g => g.termini!=null && g.profesori!=null && g.polaznici!=null && g.Naziv == NazivGrupe);
                grupa = await ersteModel.grupe.FirstAsync(g => g.Naziv == NazivGrupe);
            }

            if (grupa != null && Dispatcher != null)
            {
                await Dispatcher.InvokeAsync(() =>
                {
                    PregledGrupe pregledGrupe = new PregledGrupe(grupa);
                    pregledGrupe.ShowDialog();
                });
            }
            else
            {
                if (Dispatcher != null)
                {
                    await Dispatcher.InvokeAsync(() =>
                    {
                        MessageBox.Show("Odaberite grupu, pa je onda pregledajte.");
                    });
                }
            }
        }
예제 #18
0
 private void ObrisiKandidata()
 {
     try
     {
         using (var ersteModel = new ErsteModel())
         {
             polaznik polaznikRemove = ersteModel.polaznici.Find(polaznik.Id);
             if (polaznikRemove?.osoba != null)
             {
                 ersteModel.osobe.Remove(polaznikRemove.osoba);
                 ersteModel.SaveChanges();
             }
         }
         Close();
     }
     catch (Exception ex)
     {
         MessageBox.Show("MySQL Exception: " + ex.ToString());
     }
 }
        private void Chb_Jezik_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            string odabraniJezik = (string)chb_Jezik.SelectedItem;

            using (var ersteModel = new ErsteModel())
            {
                chb_Nivo.IsEnabled = true;
                chb_Nivo.Items.Clear();
                var nivoi = (from k in ersteModel.kursevi
                             join j in ersteModel.jezici on
                             k.JezikId equals j.Id
                             where j.Naziv.Equals(odabraniJezik)
                             select k.Nivo).ToList();
                var distNivoi = nivoi.Distinct();
                foreach (var nivo in distNivoi)
                {
                    chb_Nivo.Items.Add(nivo);
                }
            }
        }
예제 #20
0
        private async Task Load_Data()
        {
            if (Dispatcher != null)
            {
                await Dispatcher.InvokeAsync(() =>
                {
                    DataGrid.Items.Clear();
                    DataGrid.ItemsSource = null;
                    DataGrid.Items.Refresh();
                });
            }


            try
            {
                using (var ersteModel = new ErsteModel())
                {
                    if ("svi".Equals(mode))
                    {
                        var polaznici = await(from polaznik in ersteModel.polaznici.Include("osoba")
                                              join osoba in ersteModel.osobe.Include("polaznik") on polaznik.Id equals osoba.Id
                                              select polaznik).ToListAsync();

                        foreach (var polaznik in polaznici)
                        {
                            if (polaznik.osoba != null && Dispatcher != null)
                            {
                                await Dispatcher.InvokeAsync(() => { DataGrid.Items.Add(polaznik); });
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                if (Dispatcher != null)
                {
                    MessageBox.Show("Greska");
                }
            }
        }
예제 #21
0
        public async Task Load_Data()
        {
            if (Dispatcher != null)
            {
                await Dispatcher.InvokeAsync(() =>
                {
                    DataGrid.Items.Clear();
                    DataGrid.ItemsSource = null;
                    DataGrid.Items.Refresh();
                });
            }

            try
            {
                using (var ersteModel = new ErsteModel())
                {
                    var polazniciNaCekanju = ersteModel.polaznici_na_cekanju.ToList();
                    foreach (var polaznikNaCekanju in polazniciNaCekanju)
                    {
                        var kursevi = polaznikNaCekanju.kursevi.ToList();
                        foreach (var k in kursevi)
                        {
                            PolaznikNaCekanjuKurs pnck = new PolaznikNaCekanjuKurs
                            {
                                Osoba = polaznikNaCekanju.polaznik.osoba,
                                Kurs  = k,
                                Jezik = k.jezik
                            };
                            await Dispatcher.InvokeAsync(() => { DataGrid.Items.Add(pnck); });
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                if (Dispatcher != null)
                {
                    MessageBox.Show("MySQL Exception: " + ex);
                }
            }
        }
예제 #22
0
 private void ObrisiSluzbenika()
 {
     try
     {
         using (var ersteModel = new ErsteModel())
         {
             sluzbenik sluzbenik_remove = ersteModel.sluzbenici.Find(sluzbenik.Id);
             if (sluzbenik_remove.osoba != null)
             {
                 ersteModel.osobe.Remove(sluzbenik_remove.osoba);
                 ersteModel.SaveChanges();
             }
         }
         MessageBox.Show("Korisnik je uspješno obrisan.");
         Close();
     }
     catch (Exception ex)
     {
         MessageBox.Show("MySQL Exception: " + ex.ToString());
     }
 }
 private void ObrisiProfesora()
 {
     try
     {
         using (var ersteModel = new ErsteModel())
         {
             profesor profesor_remove = ersteModel.profesori.Find(profesor.Id);
             if (profesor_remove.osoba != null)
             {
                 ersteModel.osobe.Remove(profesor_remove.osoba);
                 ersteModel.SaveChanges();
             }
         }
         MessageBox.Show("Korisnik je uspješno obrisan.");
         Close();
     }
     catch (Exception ex)
     {
         MessageBox.Show("MySQL Exception: " + ex.ToString());
     }
 }
예제 #24
0
        private void PopuniPolaznikeCombo(ErsteModel ersteModel)
        {
            string odabraniNivo       = NivoKursa.Text;
            string odabraniJezik      = jezikKursa.Text;
            var    polazniciNaCekanju = (from p_na_c in ersteModel.polaznici_na_cekanju
                                         where p_na_c.kursevi.Any(k =>
                                                                  k.Nivo.Equals(odabraniNivo) && k.jezik.Naziv.Equals(odabraniJezik))
                                         select p_na_c).ToList();

            //var polaznici = ersteModel.polaznici.ToList();
            //foreach (polaznik polaznik in PolazniciTable.Items)
            //{
            //    polaznici.RemoveAll(e => e.Id == polaznik.Id);
            //}
            dodavanjePolaznika.Items.Clear();
            foreach (var polaznikNaCekanju in polazniciNaCekanju)
            {
                dodavanjePolaznika.Items.Add($"{polaznikNaCekanju.polaznik.osoba.Ime}" +
                                             $" {polaznikNaCekanju.polaznik.osoba.Prezime} ({polaznikNaCekanju.polaznik.osoba.Email})");
            }
        }
예제 #25
0
        private void DodavanjeTermina_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            Func <string, (string, int, int, int, int)> parser = s =>
            {
                var      splittedString = s.Split(' ');
                string   date           = splittedString[1];
                var      niz            = date.Substring(1, date.Length - 2).Split('-');
                string[] ar1            = niz[0].Split(':');
                string[] ar2            = niz[1].Split(':');
                return(splittedString[0],
                       int.Parse(ar1[0]),
                       int.Parse(ar1[1]),
                       int.Parse(ar2[0]),
                       int.Parse(ar2[1]));
            };

            if (flag)
            {
                using (ErsteModel ersteModel = new ErsteModel())
                {
                    if (e.AddedItems.Count > 0)
                    {
                        string text    = e.AddedItems[0].ToString();
                        var    p       = parser(text);
                        string dan     = p.Item1;
                        int    sat1    = p.Item2;
                        int    min1    = p.Item3;
                        int    sat2    = p.Item4;
                        int    min2    = p.Item5;
                        termin termin  = ersteModel.termini.First(t => t.Dan == dan && t.Od.Hours == sat1 && t.Od.Minutes == min1 && t.Do.Hours == sat2 && t.Do.Minutes == min2);
                        grupa  grupica = ersteModel.grupe.Where(gr => gr.Id == grupa.Id).ToList().First();
                        grupica.termini.Add(termin);
                        termin.grupa = grupica;
                        ersteModel.SaveChanges();
                        Init();
                        NazivGrupeCombo.Text = text;
                    }
                }
            }
        }
예제 #26
0
        private void Init()
        {
            DanCombo.Text      = item.dan;
            TimePickerOd.Value = new DateTime(2020, 01, 01, 0, 0, 0) + item.vrijemeOd;
            TimePickerDo.Value = new DateTime(2020, 01, 01, 0, 0, 0) + item.vrijemeDo;
            try
            {
                using (ErsteModel ersteModel = new ErsteModel())
                {
                    GrupaCombo.Items.Clear();
                    foreach (var naziv in ersteModel.grupe.Select(e => e.Naziv).ToList())
                    {
                        GrupaCombo.Items.Add(naziv);
                    }

                    if (item.GrupaId.HasValue)
                    {
                        grupa find = ersteModel.grupe.Find(item.GrupaId);
                        if (find is null)
                        {
                            GrupaCombo.Items.Add("Nije dodijeljena grupa");
                            GrupaCombo.Text = "Nije dodijeljena grupa";
                        }
                        else
                        {
                            GrupaCombo.Text = find.Naziv;
                        }
                    }
                    else
                    {
                        GrupaCombo.Items.Add("Nije dodijeljena grupa");
                        GrupaCombo.Text = "Nije dodijeljena grupa";
                    }
                }
            }
            catch (IOException e)
            {
                MessageBox.Show("Greška");
            }
        }
예제 #27
0
        public EvidencijaKursaDialog(kurs kurs)
        {
            InitializeComponent();

            try
            {
                using (var ersteModel = new ErsteModel())
                {
                    var jezici = (from jezik in ersteModel.jezici
                                  select jezik).ToList();
                    foreach (var jezik in jezici)
                    {
                        comboBoxList.Add(jezik);
                    }
                    comboBox_Jezik.ItemsSource = comboBoxList;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("MySQL Exception: " + ex.ToString());
            }

            this.kurs = kurs;
            if (kurs != null)
            {
                Button1.Content = izmjeni;
                Button2.Content = obrisi;

                comboBox_Jezik.IsEnabled = false;
                textBox_Nivo.IsEnabled   = false;
                TimePickerOd.IsEnabled   = false;
                TimePickerDo.IsEnabled   = false;

                comboBox_Jezik.SelectedIndex = comboBoxList.IndexOf(kurs.jezik);
                textBox_Nivo.Text            = kurs.Nivo;
                TimePickerOd.SelectedDate    = kurs.DatumOd;
                TimePickerDo.SelectedDate    = kurs.DatumDo;
            }
        }
예제 #28
0
        private void PopuniTermine(ErsteModel ersteModel)
        {
            var list = ersteModel.termini
                       .Where(e => e.GrupaId == grupa.Id)
                       .ToList();
            var newList = list.Select(e => new
            {
                Dan      = e.Dan,
                OdString = e.Od.ToString(@"hh\:mm"),
                DoString = e.Do.ToString(@"hh\:mm"),
                Od       = e.Od,
                Do       = e.Do
            }).ToList();

            newList.Sort((a, b) =>
            {
                int first  = GetRedniBroj(a.Dan);
                int second = GetRedniBroj(b.Dan);
                int res;

                if ((res = first.CompareTo(second)) != 0)
                {
                    return(res);
                }

                if (a.Od < b.Od)
                {
                    return(-1);
                }

                return(1);
            });
            TerminiTable.Items.Clear();
            TerminiTable.ItemsSource = null;
            foreach (var termin in newList)
            {
                TerminiTable.Items.Add(termin);
            }
        }
예제 #29
0
        private void DodavanjeProfesora_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            Func <string, string[]> parser = s =>
            {
                string[] result         = new string[3];
                var      splittedString = s.Split(' ');
                if (splittedString.Length >= 3)
                {
                    result[2] = splittedString[splittedString.Length - 1].Substring(1, splittedString[splittedString.Length - 1].Length - 2);
                    result[1] = splittedString[splittedString.Length - 2];
                    result[0] = splittedString.Take(splittedString.Length - 2).Aggregate("", (acc, x) => acc + x);;
                }
                return(result);
            };

            if (flag)
            {
                using (ErsteModel ersteModel = new ErsteModel())
                {
                    if (e.AddedItems.Count > 0)
                    {
                        string   text     = e.AddedItems[0].ToString();
                        var      p        = parser(text);
                        string   ime      = p[0];
                        string   prezime  = p[1];
                        string   email    = p[2];
                        profesor profesor = ersteModel.profesori.First(g => g.osoba.Ime == ime && g.osoba.Prezime == prezime && g.osoba.Email == email);
                        grupa    grupica  = ersteModel.grupe.Where(gr => gr.Id == grupa.Id).ToList().First();
                        grupica.profesori.Add(profesor);
                        profesor.grupe.Add(grupica);
                        ersteModel.SaveChanges();
                        Init();
                        NazivGrupeCombo.Text = text;
                    }
                }
            }
        }
예제 #30
0
        public void AddButtonActions(params Button[] buttons)
        {
            buttons[0].Click += (sender, args) =>
            {
                EvidencijaKursaDialog evidencijaKursaDialog = new EvidencijaKursaDialog(null);
                evidencijaKursaDialog.ShowDialog();

                Load_Data();
            };
            buttons[1].Click += (sender, args) =>
            {
                var dataGridSelectedItems = DataGrid.SelectedItems;
                using (var ersteModel = new ErsteModel())
                {
                    foreach (var dataGridSelectedItem in dataGridSelectedItems)
                    {
                        var kursRemove = ersteModel.kursevi.Find(((kurs)dataGridSelectedItem).Id);
                        ersteModel.kursevi.Remove(kursRemove);
                        ersteModel.SaveChanges();
                    }
                }
                Load_Data();
            };
        }