private void AzurirajDetalje(Let let)
        {
            for (int i = 0; i < polazisniComboBox.Items.Count; i++)
            {
                if (((Aerodrom)polazisniComboBox.Items[i]).AerodromId == let.PolazisniAerodrom.AerodromId)
                {
                    polazisniComboBox.SelectedIndex = i;
                }
                if (((Aerodrom)odredisniComboBox.Items[i]).AerodromId == let.OdredisniAerodrom.AerodromId)
                {
                    odredisniComboBox.SelectedIndex = i;
                }
            }

            //provjeriti !!!
            avionNaLetuComboBox.DataSource = RepozitorijSkyFlyReservation.DohvatiAvione(let.AvionNaLetu.Aviokompanija.AviokompanijaId);


            for (int i = 0; i < avionNaLetuComboBox.Items.Count; i++)
            {
                if (((Avion)avionNaLetuComboBox.Items[i]).AvionId == let.AvionNaLetu.AvionId)
                {
                    avionNaLetuComboBox.SelectedIndex = i;
                }
            }

            datumVrijemePolaskaDateTimePicker.Value = let.DatumPolaska;
            datumVrijemeDolaskaDateTimePicker.Value = let.DatumDolaska;
            cijenaKarteTextBox.Text = let.CijenaKarte.ToString();
        }
        private void filtrirajPopisRezervacijaButton_Click(object sender, EventArgs e)
        {
            if (placeneRezervacijeRadio.Checked == true)
            {
                List <Rezervacija> rezervacije = RepozitorijSkyFlyReservation.DohvatiRezervacijeKorisnika(RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId);

                OsvjeziDGV(rezervacije.Where(r => r.StatusRezervacije == StanjeRezervacije.Plaćena).ToList());
            }
            else if (istekleRezervacijeRadio.Checked == true)
            {
                List <Rezervacija> rezervacije = RepozitorijSkyFlyReservation.DohvatiRezervacijeKorisnika(RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId);

                OsvjeziDGV(rezervacije.Where(r => r.StatusRezervacije == StanjeRezervacije.Istekla).ToList());
            }
            else if (nisuPlaceneRezervacijeRadio.Checked == true)
            {
                List <Rezervacija> rezervacije = RepozitorijSkyFlyReservation.DohvatiRezervacijeKorisnika(RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId);

                OsvjeziDGV(rezervacije.Where(r => r.StatusRezervacije == StanjeRezervacije.Neplaćena).ToList());
            }
            else if (prikaziSveRadio.Checked == true)
            {
                OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiRezervacijeKorisnika(RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId));
            }
        }
예제 #3
0
 private void btnPrihvatiZahtjev_Click(object sender, EventArgs e)
 {
     RepozitorijSkyFlyReservation.DodajUloguAdministratora(selektiraniZahtjev.Korisnik.KorisnikId);
     RepozitorijSkyFlyReservation.ZahtjevPrihvacen(selektiraniZahtjev.ZahtjevId);
     RepozitorijSkyFlyReservation.Obavijest(selektiraniZahtjev.Korisnik.EmailKorisnika);
     Close();
 }
        private void azurirajAvionButton_Click(object sender, EventArgs e)
        {
            string        identifikatorAviona = identifikatorAvionaTextBox.Text;
            string        proizvodacAviona    = proizvodacAvionaTextBox.Text;
            string        modelAviona         = modelAvionaTextBox.Text;
            string        brojSjedala         = brojSjedalaTextBox.Text;
            Aviokompanija aviokompanija       = (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika != UlogaKorisnika.Owner) ? RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija : DohvatiSelektiranuAviokompaniju();

            bool provjeraPodataka = ProvjeriPodatke(identifikatorAviona, proizvodacAviona, modelAviona, brojSjedala);

            Avion avion = selektiraniAvion;

            if (provjeraPodataka == true)
            {
                selektiraniAvion.IdentifikatorAviona = identifikatorAviona;
                selektiraniAvion.ProizvodacAviona    = proizvodacAviona;
                selektiraniAvion.ModelAviona         = modelAviona;
                selektiraniAvion.BrojMjesta          = int.Parse(brojSjedala);
                selektiraniAvion.Aviokompanija       = aviokompanija;

                int numAffectedRows = RepozitorijSkyFlyReservation.AzurirajAvion(selektiraniAvion);

                if (numAffectedRows > 0)
                {
                    MessageBox.Show($"Avion {avion.ProizvodacAviona} {avion.ModelAviona} | {avion.IdentifikatorAviona} je uspješno ažuriran.");
                    this.Close();
                }
            }
        }
        private void FormPregledKorisnickihRacuna_Load(object sender, EventArgs e)
        {
            List <Korisnik> korisnici = RepozitorijSkyFlyReservation.DohvatiKorisnickeRacune(RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija.AviokompanijaId);

            OsvjeziDGV(korisnici);
            prikazSvihRadio.Checked = true;
        }
        private void OsvjeziDetalje()
        {
            identifikatorAvionaTextBox.Text = selektiraniAvion.IdentifikatorAviona;
            proizvodacAvionaTextBox.Text    = selektiraniAvion.ProizvodacAviona;
            modelAvionaTextBox.Text         = selektiraniAvion.ModelAviona;
            brojSjedalaTextBox.Text         = selektiraniAvion.BrojMjesta.ToString();
            aviokompanijaLabel.Visible      = false;
            aviokompanijaComboBox.Visible   = false;

            if (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika == UlogaKorisnika.Owner)
            {
                aviokompanijaLabel.Visible    = true;
                aviokompanijaComboBox.Visible = true;

                aviokompanijaComboBox.DataSource = RepozitorijSkyFlyReservation.DohvatiAviokompanije().ToList();

                for (int i = 0; i < aviokompanijaComboBox.Items.Count; i++)
                {
                    if (((Aviokompanija)aviokompanijaComboBox.Items[i]).AviokompanijaId == selektiraniAvion.Aviokompanija.AviokompanijaId)
                    {
                        aviokompanijaComboBox.SelectedIndex = i;
                    }
                }
            }
        }
        private void pretraziLetoveButton_Click(object sender, EventArgs e)
        {
            Aerodrom odabraniPolazisniAerodrom = polazisniAerodromComboBox.SelectedItem as Aerodrom;
            Aerodrom odabraniOdredisniAerodrom = odredisniAerodromComboBox.SelectedItem as Aerodrom;
            DateTime datumVrijemePolaska       = datumPolaskaDateTimePicker.Value;

            if (odabraniPolazisniAerodrom.AerodromId == odabraniOdredisniAerodrom.AerodromId)
            {
                MessageBox.Show("Polazišni i odredišni aerodrom ne smiju biti isti.");
                return;
            }

            if (pretraziPremaDatumuCheckBox.Checked == true)
            {
                if (datumVrijemePolaska.Date < DateTime.Now.Date)
                {
                    DateTime datum = DateTime.Now;
                    MessageBox.Show($"Datum polaska ne može biti manji od datuma {datum.ToString("dd/MM/yyyy")}.");
                    return;
                }
                List <Let> letovi = RepozitorijSkyFlyReservation.DohvatiLetove(odabraniPolazisniAerodrom, odabraniOdredisniAerodrom, datumVrijemePolaska.ToString("yyyy-MM-dd"));
                OsvjeziDGV(letovi);
            }
            else
            {
                List <Let> letovi = RepozitorijSkyFlyReservation.DohvatiLetove(odabraniPolazisniAerodrom, odabraniOdredisniAerodrom);
                OsvjeziDGV(letovi);
            }
        }
        private void PrijaviSeButton_Click(object sender, EventArgs e)
        {
            string KorisnickoIme = txtKorIme.Text;
            string Lozinka       = txtLozinka.Text;

            List <Korisnik> korisnici = RepozitorijSkyFlyReservation.DohvatiSveKorisnike();
            Korisnik        korisnik  = new Korisnik();

            foreach (var item in korisnici)
            {
                if (KorisnickoIme == item.KorisnickoImeKorisnika && Lozinka == item.LozinkaKorisnika)
                {
                    Autentikacija = true;
                    korisnik      = item;
                }
            }

            if (Autentikacija == true)
            {
                RepozitorijSkyFlyReservation.prijavljeniKorisnik = korisnik;
                this.Close();
            }
            else
            {
                MessageBox.Show("Korisnik sa navedenim podacima ne postoji!");
            }
        }
        private void obrisiAvionButton_Click(object sender, EventArgs e)
        {
            Avion selektiraniAvion = DohvatiSelektiraniAvion();

            if (selektiraniAvion == null)
            {
                MessageBox.Show("Niste odabrali avion koji želite obrisati.");
                return;
            }

            int numAffectedRows = RepozitorijSkyFlyReservation.ObrisiAvion(selektiraniAvion);

            if (numAffectedRows > 0)
            {
                MessageBox.Show($"Uspješno ste obrisali avion {selektiraniAvion.ProizvodacAviona} {selektiraniAvion.ModelAviona} | {selektiraniAvion.IdentifikatorAviona}.");
            }

            if (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika != UlogaKorisnika.Owner)
            {
                OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiAvione(RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija.AviokompanijaId));
            }
            else
            {
                OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiSveAvione());
            }
        }
        private void obrisiLetButton_Click(object sender, EventArgs e)
        {
            Let selektiraniLet = DohvatiSelektiraniLet();

            if (selektiraniLet == null)
            {
                MessageBox.Show("Niste odabrali let koji želite obrisati.");
                return;
            }

            RepozitorijSkyFlyReservation.ObrisiRezervacije(selektiraniLet);
            int numAffectedRows = RepozitorijSkyFlyReservation.ObrisiLet(selektiraniLet);

            if (numAffectedRows > 0)
            {
                MessageBox.Show($"Uspješno ste obrisali let {selektiraniLet.BrojLeta} | {selektiraniLet.PolazisniAerodrom.NazivAerodroma}->{selektiraniLet.OdredisniAerodrom.NazivAerodroma}.");
            }

            if (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika != UlogaKorisnika.Owner)
            {
                nazivAviokompanijeLabel.Text = RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija.NazivAviokompanije;
                OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiLetove(RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija.AviokompanijaId));
            }
            if (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika == UlogaKorisnika.Owner)
            {
                popisLetovaLabel.Text = "Popis letova";
                OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiSveLetove());
            }
        }
        private void platiRezervacijuButton_Click(object sender, EventArgs e)
        {
            Rezervacija selektiranaRezervacija = DohvatiOdabranuRezervaciju();

            if (selektiranaRezervacija == null)
            {
                MessageBox.Show("Niste odabrali rezervaciju koju želite platiti.");
                return;
            }
            else
            {
                if (selektiranaRezervacija.StatusRezervacije == StanjeRezervacije.Istekla)
                {
                    MessageBox.Show("Odabrana rezervacija je istekla.");
                    return;
                }
                else if (selektiranaRezervacija.StatusRezervacije == StanjeRezervacije.Plaćena)
                {
                    MessageBox.Show("Odabrana rezervacija je plaćena.");
                    return;
                }
                else
                {
                    FormPlatiRezervaciju form = new FormPlatiRezervaciju(selektiranaRezervacija);
                    form.ShowDialog();

                    OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiRezervacijeKorisnika(RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId));
                }
            }
        }
        private void btnPosalji_Click(object sender, EventArgs e)
        {
            Korisnik korisnik = RepozitorijSkyFlyReservation.ProvjeriEmail(txtEmail.Text);

            if (korisnik != null)
            {
                string novaLozinka = "";
                string znakovi     = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
                Random r           = new Random();
                r.Next();

                for (int i = 0; i < 10; i++)
                {
                    novaLozinka += znakovi[r.Next(znakovi.Length)];
                }

                int numAffectedRows = RepozitorijSkyFlyReservation.AzurirajKorisnika(txtEmail.Text, novaLozinka);

                if (numAffectedRows != 0)
                {
                    SmtpClient client = new SmtpClient("smtp.gmail.com", 25);

                    client.UseDefaultCredentials = false;
                    NetworkCredential cred = new NetworkCredential("*****@*****.**", "sj6IWP3o");

                    MailMessage Msg = new MailMessage();

                    Msg.From = new MailAddress("*****@*****.**");

                    Msg.To.Add($"{txtEmail.Text}");

                    Msg.Subject = "Oporavak računa";

                    Msg.Body = $"Poštovani,\n\n" +
                               $"Nova lozinka za vaš račun je: {novaLozinka}\n" +
                               "Ovu lozinku možete nastaviti koristiti ili je promjeniti u postavkama korisničkog računa.\n\n" +
                               "S poštovanjem,\n" +
                               "SkyFlyReservation";

                    client.Credentials = cred;

                    client.EnableSsl = true;

                    client.Send(Msg);
                    client.Dispose();

                    MessageBox.Show("Uspješna promjena lozinke!");
                    this.Close();
                }
                else
                {
                    MessageBox.Show("Došlo je do greške pri oporavku lozinke! Molimo provjerite uneseni email i pokušajte ponovno.");
                }
            }
            else
            {
                MessageBox.Show("Korisnik s tom email adresom ne postoji!");
            }
        }
예제 #13
0
        private void btnSpremiPromjene_Click(object sender, EventArgs e)
        {
            string[] validiraj = new string[7];
            validiraj[0] = txtIme.Text;
            validiraj[1] = txtPrezime.Text;
            validiraj[2] = txtEmail.Text;
            validiraj[3] = txtAdresa.Text;
            validiraj[4] = txtKontakt.Text;
            validiraj[5] = txtOib.Text;
            validiraj[6] = txtKorIme.Text;

            ValidacijaPromjena validacija = new Validation.ValidacijaPromjena();

            string   poruka            = validacija.Validiraj(validiraj);
            Korisnik dohvaceniKorisnik = RepozitorijSkyFlyReservation.DohvatiKorisnika(txtKorIme.Text);

            if (poruka != "")
            {
                MessageBox.Show(poruka);
            }
            else if (dohvaceniKorisnik != null && dohvaceniKorisnik.KorisnickoImeKorisnika != RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnickoImeKorisnika)
            {
                MessageBox.Show("Korisničko ime je zauzeto!");
            }
            else
            {
                Korisnik korisnik = new Korisnik()
                {
                    ImeKorisnika            = txtIme.Text,
                    PrezimeKorisnika        = txtPrezime.Text,
                    AdresaKorisnika         = txtAdresa.Text,
                    KontaktTelefonKorisnika = txtKontakt.Text,
                    EmailKorisnika          = txtEmail.Text,
                    OIBKorisnika            = txtOib.Text,
                    KorisnickoImeKorisnika  = txtKorIme.Text,
                    LozinkaKorisnika        = txtLozinka.Text
                };
                int numAffectedRows = RepozitorijSkyFlyReservation.AzurirajKorisnika(RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId, korisnik);

                if (numAffectedRows != 0)
                {
                    MessageBox.Show("Uspješna izmjena korisničkog računa.");
                    int            ID            = RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId;
                    UlogaKorisnika uloga         = RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika;
                    Aviokompanija  aviokompanija = RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija;

                    RepozitorijSkyFlyReservation.prijavljeniKorisnik                = korisnik;
                    RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId     = ID;
                    RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika = uloga;
                    RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija  = aviokompanija;

                    PopuniPolja();
                }
                else
                {
                    MessageBox.Show("Neuspješna promjena! Molimo pokušajte ponovno.");
                }
            }
        }
예제 #14
0
        private void FormRezervacijaKarte_Load(object sender, EventArgs e)
        {
            OsvjeziDetalje();

            List <Sjedalo> rezerviranaSjedala = RepozitorijSkyFlyReservation.DohvatiRezerviranaSjedala(selektiraniLet);

            OsvjeziSjedalaUAvionu(rezerviranaSjedala);
        }
        private void obrisiLetButton_Click(object sender, EventArgs e)
        {
            FormObrisiLet form = new FormObrisiLet();

            form.ShowDialog();

            OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiLetove());
        }
예제 #16
0
        private void btnPosalji_Click(object sender, EventArgs e)
        {
            string[] validiraj = new string[9];

            validiraj[0] = txtNazivAviokompanije.Text;
            validiraj[1] = txtOIBaviokompanije.Text;
            validiraj[2] = txtIBAN.Text;
            validiraj[3] = txtAdresaAviokompanije.Text;
            validiraj[4] = txtTelefonAviokompanije.Text;
            validiraj[5] = txtEmailAviokompanije.Text;
            validiraj[6] = textBoxZahtjev.Text;


            Validacija validacija = new Validacija();
            string     poruka     = validacija.Validiraj(validiraj);

            if (poruka != "")
            {
                MessageBox.Show(poruka);
            }
            else
            {
                ZahtjevZaSuradnju zahtjev = new ZahtjevZaSuradnju()
                {
                    Korisnik = RepozitorijSkyFlyReservation.prijavljeniKorisnik,
                    DatumVrijemeKreiranja = DateTime.Now,
                    TekstZahtjeva         = textBoxZahtjev.Text
                };

                Aviokompanija aviokompanija = new Aviokompanija()
                {
                    NazivAviokompanije   = txtNazivAviokompanije.Text,
                    OIBAviokompanije     = txtOIBaviokompanije.Text,
                    IBANAviokompanije    = txtIBAN.Text,
                    AdresaAviokompanije  = txtAdresaAviokompanije.Text,
                    KontaktAviokompanije = txtTelefonAviokompanije.Text,
                    EmailAviokompanije   = txtEmailAviokompanije.Text
                };

                int numAffectedRowsZahtjev = RepozitorijSkyFlyReservation.DodajZahtjev(zahtjev);

                numAffectedRowsZahtjev += RepozitorijSkyFlyReservation.DodajAviokompaniju(aviokompanija);

                numAffectedRowsZahtjev += RepozitorijSkyFlyReservation.PridruziAviokompaniju(aviokompanija, zahtjev.Korisnik.KorisnikId);

                if (numAffectedRowsZahtjev != 0)
                {
                    MessageBox.Show("Zahtjev za suradnju je uspješno poslan.");

                    this.Close();
                }
                else
                {
                    MessageBox.Show("Došlo je do greške prilikom slanja zahtjeva! Molimo pokušajte ponovno.");
                }
            }
        }
예제 #17
0
        private void btnOdbijZahtjev_Click(object sender, EventArgs e)
        {
            Aviokompanija aviokompanija = RepozitorijSkyFlyReservation.DohvatiAviokompaniju(selektiraniZahtjev.Korisnik.KorisnikId);

            RepozitorijSkyFlyReservation.DodajUloguRegistriranogKorisnika(selektiraniZahtjev.Korisnik.KorisnikId);
            RepozitorijSkyFlyReservation.ZahtjevOdbijen(selektiraniZahtjev.ZahtjevId);
            RepozitorijSkyFlyReservation.ObrisiAviokompaniju(aviokompanija.AviokompanijaId);
            Close();
        }
        private void dodajLetButton_Click(object sender, EventArgs e)
        {
            FormDodajLet form = new FormDodajLet();

            form.ShowDialog();

            OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiLetove());
            OsvjeziComboBox(RepozitorijSkyFlyReservation.DohvatiAerodrome());
        }
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            List <Korisnik> korisnici = RepozitorijSkyFlyReservation.DohvatiKorisnickeRacune(RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija.AviokompanijaId);

            string text  = txtPretrazi.Text;
            var    query = from k in korisnici
                           where k.ImeKorisnika.Contains(text) || k.PrezimeKorisnika.Contains(text)
                           select k;

            dgvKorisnickiRacuni.DataSource = query.ToList();
        }
        private void OsvjeziComboBox()
        {
            polazisniComboBox.DataSource    = RepozitorijSkyFlyReservation.DohvatiAerodrome().ToList();
            polazisniComboBox.DropDownStyle = ComboBoxStyle.DropDownList;

            odredisniComboBox.DataSource    = RepozitorijSkyFlyReservation.DohvatiAerodrome().ToList();
            odredisniComboBox.DropDownStyle = ComboBoxStyle.DropDownList;

            avionNaLetuComboBox.DataSource    = RepozitorijSkyFlyReservation.DohvatiAvione().ToList();
            avionNaLetuComboBox.DropDownStyle = ComboBoxStyle.DropDownList;
        }
        private bool ProvjeriRacun(string brojKartice)
        {
            bool  provjeraKartice = false;
            Racun racun           = RepozitorijSkyFlyReservation.DohvatiRacunKorisnika(RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId);

            if (racun.BrojRacuna == brojKartice)
            {
                provjeraKartice = true;
            }

            return(provjeraKartice);
        }
        private void FormPregledLetova_Load(object sender, EventArgs e)
        {
            List <Aerodrom> aerodromi = RepozitorijSkyFlyReservation.DohvatiAerodrome();

            OsvjeziComboBox(aerodromi);

            OsvjeziKomponente();

            List <Let> letovi = RepozitorijSkyFlyReservation.DohvatiLetove();

            OsvjeziDGV(letovi);
        }
        private bool ProvjeriStanje()
        {
            bool  provjeraStanja = false;
            Racun racun          = RepozitorijSkyFlyReservation.DohvatiRacunKorisnika(RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId);

            if (racun.StanjeRacuna >= selektiraniLet.CijenaKarte)
            {
                provjeraStanja = true;
            }

            return(provjeraStanja);
        }
예제 #24
0
        private void FormPrikazIzvjesca_Load(object sender, EventArgs e)
        {
            List <Let> letovi = RepozitorijSkyFlyReservation.DohvatiLetoveAviokompanije();

            List <string> polazista = letovi.Select(l => l.PolazisniAerodrom.ToString()).Distinct().ToList();

            List <string> sva_polazista = letovi.Select(l => l.PolazisniAerodrom.ToString()).ToList();

            List <int> broj_polazaka = new List <int>();

            for (int i = 0; i < polazista.Count; i++)
            {
                int broj = 0;
                for (int j = 0; j < sva_polazista.Count; j++)
                {
                    if (polazista[i] == sva_polazista[j])
                    {
                        broj++;
                    }
                }
                broj_polazaka.Add(broj);
            }

            for (int i = 0; i < polazista.Count; i++)
            {
                chartPolaznisniAerodromi.Series[0].Points.AddXY(polazista[i], broj_polazaka[i]);
            }

            List <string> odredista = letovi.Select(l => l.OdredisniAerodrom.ToString()).Distinct().ToList();

            List <string> sva_odredista = letovi.Select(l => l.OdredisniAerodrom.ToString()).ToList();

            List <int> broj_dolazaka = new List <int>();

            for (int i = 0; i < odredista.Count; i++)
            {
                int broj = 0;
                for (int j = 0; j < sva_odredista.Count; j++)
                {
                    if (odredista[i] == sva_odredista[j])
                    {
                        broj++;
                    }
                }
                broj_dolazaka.Add(broj);
            }

            for (int i = 0; i < odredista.Count; i++)
            {
                chartOdredisniAerodromi.Series[0].Points.AddXY(odredista[i], broj_dolazaka[i]);
            }
        }
 private void FormObrisiLet_Load(object sender, EventArgs e)
 {
     if (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika != UlogaKorisnika.Owner)
     {
         nazivAviokompanijeLabel.Text = RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija.NazivAviokompanije;
         OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiLetove(RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija.AviokompanijaId));
     }
     if (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika == UlogaKorisnika.Owner)
     {
         popisLetovaLabel.Text = "Popis letova";
         OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiSveLetove());
     }
 }
 private void FormDodajAvion_Load(object sender, EventArgs e)
 {
     if (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika != UlogaKorisnika.Owner)
     {
         aviokompanijaLabel.Visible    = false;
         aviokompanijaComboBox.Visible = false;
     }
     else
     {
         aviokompanijaComboBox.DropDownStyle = ComboBoxStyle.DropDownList;
         aviokompanijaComboBox.DataSource    = RepozitorijSkyFlyReservation.DohvatiAviokompanije();
     }
 }
 private void FormPregledAvionaAviokompanije_Load(object sender, EventArgs e)
 {
     if (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika != UlogaKorisnika.Owner)
     {
         nazivAviokompanijeLabel.Text = RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija.NazivAviokompanije;
         OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiAvione(RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija.AviokompanijaId));
     }
     if (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika == UlogaKorisnika.Owner)
     {
         popisAvionaLabel.Text = "Popis aviona";
         OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiSveAvione());
     }
 }
        private void dodajAvionButton_Click(object sender, EventArgs e)
        {
            FormDodajAvion form = new FormDodajAvion();

            form.ShowDialog();

            if (RepozitorijSkyFlyReservation.prijavljeniKorisnik.UlogaKorisnika != UlogaKorisnika.Owner)
            {
                OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiAvione(RepozitorijSkyFlyReservation.prijavljeniKorisnik.Aviokompanija.AviokompanijaId));
            }
            else
            {
                OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiSveAvione());
            }
        }
        private void kupiKartuButton_Click(object sender, EventArgs e)
        {
            Let selektiraniLet = DohvatiSelektiraniLet();

            if (selektiraniLet == null)
            {
                MessageBox.Show("Niste odabrali let za koji želite kupiti kartu.");
                return;
            }

            FormRezervacijaKarte form = new FormRezervacijaKarte(selektiraniLet);

            form.ShowDialog();

            OsvjeziDGV(RepozitorijSkyFlyReservation.DohvatiLetove());
        }
        private void platiKartuButton_Click(object sender, EventArgs e)
        {
            string ime         = imeTextBox.Text;
            string prezime     = prezimeTextBox.Text;
            string oib         = oibTextBox.Text;
            string brojKartice = brojKarticeTextBox.Text.Replace(" ", "");

            bool provjeraPodataka = ProvjeriPodatke(ime, prezime, oib, brojKartice);

            if (provjeraPodataka == true)
            {
                bool  provjeraOIB     = (RepozitorijSkyFlyReservation.prijavljeniKorisnik.OIBKorisnika == oib) ? true : false;
                bool  provjeraKartice = ProvjeriRacun(brojKartice);
                bool  provjeraStanja  = ProvjeriStanje();
                Racun racun           = RepozitorijSkyFlyReservation.DohvatiRacunKorisnika(RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId);

                if (provjeraOIB == false)
                {
                    MessageBox.Show("Unijeli ste pogrešan OIB.");
                    return;
                }
                if (provjeraKartice == false)
                {
                    MessageBox.Show("Unijeli ste pogrešan broj kartice.");
                    return;
                }
                if (provjeraStanja == false)
                {
                    MessageBox.Show($"Nedovoljan iznos na računu za provođenje transakcije.\nStanje racuna: {racun.StanjeRacuna} HRK");
                    return;
                }
                else
                {
                    int numAffectedRowsInsert = RepozitorijSkyFlyReservation.DodajKupnjuKarte(selektiraniLet, selektiranoSjedalo, RepozitorijSkyFlyReservation.prijavljeniKorisnik.KorisnikId);
                    int numAffectedRowsUpdate = RepozitorijSkyFlyReservation.AzurirajBrojSlobodnihMjesta(selektiraniLet);
                    int numAffectedRowsUpdateStanjeRacunaPlatitelja = RepozitorijSkyFlyReservation.AzurirajStanjeRacunaPlatitelja(racun, selektiraniLet);
                    int numAffectedRowsUpdateStanjeRacunaPrimatelja = RepozitorijSkyFlyReservation.AzurirajStanjeRacunaPrimatelja(selektiraniLet);

                    if (numAffectedRowsInsert > 0 && numAffectedRowsUpdate > 0 && numAffectedRowsUpdateStanjeRacunaPlatitelja > 0 && numAffectedRowsUpdateStanjeRacunaPrimatelja > 0)
                    {
                        MessageBox.Show($"Uspješno ste kupili kartu za sjedalo {selektiranoSjedalo.OznakaSjedala} na letu {selektiraniLet.PolazisniAerodrom.NazivAerodroma}->{selektiraniLet.OdredisniAerodrom.NazivAerodroma}.\n\nNa Vašu e-mail adresu poslani su detalji o kupljenoj karti.");
                        PošaljiKartu(selektiraniLet, selektiranoSjedalo);
                        this.Close();
                    }
                }
            }
        }