private void DodajEgzemplarzButtonClick(object sender, EventArgs e)
        {
            if (ksiazka != null)
            {
                EKRepository ekRepository = new EKRepository();

                EgzemplarzKsiazki egzemplarz = new EgzemplarzKsiazki();
                egzemplarz.Ksiazka = ksiazka;
                egzemplarz.Sygnatura = sygnaturaTextBox.Text;

                egzemplarzKsiazki = egzemplarz;
                this.DialogResult = DialogResult.OK;
            }
            else
            {
                ECRepository ecRepository = new ECRepository();

                EgzemplarzCzasopisma egzemplarz = new EgzemplarzCzasopisma();
                egzemplarz.Czasopismo = czasopismo;
                egzemplarz.Sygnatura = sygnaturaTextBox.Text;

                egzemplarzCzasopisma = egzemplarz;
                this.DialogResult = DialogResult.OK;

            }
        }
        public PanelAdministratora()
        {
            InitializeComponent();

            czytelnikRepository = new CzytelnikRepository();
            kartaCzytelnikaRepository = new KartaCzytelnikaRepository();
            ksiazkaRepository = new KsiazkaRepository();
            czasopismoRepository = new CzasopismoRepository();
            wcRepository = new WCRepository();
            wkRepository = new WKRepository();
            ecRepository = new ECRepository();
            ekRepository = new EKRepository();

            PobierzDaneRepozytorium(); //Pobieramy dane wszystkich repozytoriów

            //Pobieramy dane do kontrolek
            LoadKsiazkiGridView();
            LoadCzasopismaGridView();
            LoadCzytelnicyGridView();
            LoadWypozyczeniaGridView();
            LoadNajczesciejWybieraneGridView();

            LoadKategoriaComboBox();
            LoadTematykaComboBox();
            LoadCzestotliwoscComboBox();
            LoadOdbiorcaComboBox();
            LoadCzestotliwoscUkazywaniaSieComboBox();
            LoadOdbiorcaComboBox2();

            LoadGrupaWiekowaComboBox();
            LoadPlecComboBox();

            this.toolStripStatusLabel.Text = "Zalogowano jako administrator";
        }
        public PanelCzytelnika(string gosc)
        {
            InitializeComponent();

            ksiazkaRepository = new KsiazkaRepository();
            czasopismoRepository = new CzasopismoRepository();
            kartaCzytelnikaRepository = new KartaCzytelnikaRepository();
            wcRepository = new WCRepository();
            wkRepository = new WKRepository();
            ecRepository = new ECRepository();
            ekRepository = new EKRepository();

            PobierzDane(); //Pobieramy dane wszystkich repozytoriów

            //Pobieramy dane do kontrolek
            LoadKsiazkiGridView();
            LoadCzasopismaGridView();

            LoadKategoriaComboBox();
            LoadTematykaComboBox();
            LoadCzestotliwoscComboBox();
            LoadOdbiorcaComboBox();

            this.toolStripStatusLabel2.Text = String.Format("Zalogowano jako {0}", gosc);
            this.imieLabel.Text = "Gość";
            this.nazwiskoLabel.Text = "Gość";
            this.peselLabel.Text = "";
            this.plecLabel.Text = "";
            this.dataUrodzeniaLabel.Text = Convert.ToString(DateTime.Today.ToShortDateString()); //ustawione na dziś że niby gość sie urodził w tej chwili
            this.label5.Visible = false;
            this.label4.Visible = false;

            this.groupBox2.Visible = false;
            this.groupBox3.Visible = false;
            this.szczegolyKsiazkiButton.Visible = false;
            this.szczegolyCzasopismaButton.Visible = false;
            this.zmianaHaslaMenuItem.Visible = false;

            this.wypozyczeniaGridView.Visible = false; // ukrywa data griedView z wypozyczeniami
            this.label6.Text = @"Gość nie może mieć wypożyczonych ksiażek i czasopism,
            musisz być zalogowany aby to uczynić"; //ustawia text
            this.label6.Font = new Font(this.Font.FontFamily, 20); // ustawia czcionke labela
            this.label6.Location = new Point(150, 55); //ustawia na jakiej pozycji ma się znajdować label6
        }
        private void ZapiszCzasopismoButtonClick(object sender, EventArgs e)
        {
            CzasopismoRepository czasopismoRepository = new CzasopismoRepository();
            Czasopismo edited;

            if (czasopismo == null)
                edited = new Czasopismo();
            else
                edited = czasopismo;

            edited.Tytul = this.tytulTextBox.Text;
            edited.Issn = this.issnTextBox.Text;
            edited.NrCzasopisma = this.nrCzasopismaTextBox.Text;
            edited.DataWydania = this.dateTimePicker.Value.Date;
            edited.Wydawnictwo = this.wydawnictwoTextBox.Text;
            edited.Tematyka = (Tematyka)this.tematykaComboBox.SelectedItem;
            edited.Czestotliwosc = (Czestotliwosc)this.czestotliwoscComboBox.SelectedItem;
            edited.Odbiorca = (Odbiorca)this.odbiorcaComboBox.SelectedItem;

            this.tytulTextBox.BackColor = SystemColors.Window;
            this.issnTextBox.BackColor = SystemColors.Window;
            this.nrCzasopismaTextBox.BackColor = SystemColors.Window;
            this.wydawnictwoTextBox.BackColor = SystemColors.Window;

            this.errorProvider.Clear();

            if (czasopismo == null)
            {
                if (this.CzyDanePoprawne() && MessageBox.Show("Zapisać czasopismo", "Ostrzeżenie", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    czasopismoRepository.Dodaj(edited);
                    this.DialogResult = DialogResult.OK;
                }
            }
            else
            {
                if (this.CzyDanePoprawne() && MessageBox.Show("Zaktualizować dane czasopisma?", "Ostrzeżenie", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    czasopismoRepository.Edytuj(edited);
                    this.DialogResult = DialogResult.OK;

                    ECRepository ecRepository = new ECRepository();
                    WCRepository wcRepository = new WCRepository();

                    foreach (var obj in noweEgzemplarze)
                    {
                        ecRepository.Dodaj(obj);
                    }
                    foreach (var obj in usunieteEgzemplarze)
                    {
                        ecRepository.Usun(obj);
                        wcRepository.UsunWypozyczeniaEgzemplarza(obj);
                    }
                }
            }
        }
        private void UsunEgzemplarzButtonClick(object sender, EventArgs e)
        {
            ECRepository ecRepository = new ECRepository();

            if (MessageBox.Show("Usunąć egzemplarz?", "Ostrzeżenie", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                EgzemplarzCzasopisma egzemplarz = egzemplarze.Find(k => k.Id == Convert.ToInt64(egzemplarzeGridView.SelectedCells[0].Value));
                this.usunieteEgzemplarze.Add(egzemplarz);

                egzemplarze.Remove(egzemplarz);
                egzemplarzeGridView.Rows.RemoveAt(this.egzemplarzeGridView.SelectedRows[0].Index);
            }
        }
        private void UsunCzasopismoButtonClick(object sender, EventArgs e)
        {
            CzasopismoRepository czasopismoRepository = new CzasopismoRepository();
            ECRepository ecRepository = new ECRepository();
            WCRepository wcRepository = new WCRepository();

            if (MessageBox.Show("Usunąć książkę i wszystkie egzemplarze?", "Ostrzeżenie", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                czasopismoRepository.Usun(czasopismo); //Usuwamy czasopismo
                foreach (var obj in egzemplarze) { //i wszystkie egzemplarze
                    ecRepository.Usun(obj);
                    wcRepository.UsunWypozyczeniaEgzemplarza(obj);
                }

                this.DialogResult = DialogResult.OK;
            }
        }
        public PanelCzytelnika(Czytelnik czytelnik)
        {
            InitializeComponent();

            ksiazkaRepository = new KsiazkaRepository();
            czasopismoRepository = new CzasopismoRepository();
            kartaCzytelnikaRepository = new KartaCzytelnikaRepository();
            wcRepository = new WCRepository();
            wkRepository = new WKRepository();
            ecRepository = new ECRepository();
            ekRepository = new EKRepository();

            PobierzDane();

            KartaCzytelnika karta = kartaCzytelnikaRepository.PoCzytelniku(czytelnik);
            this.Karta = karta;

            //Pobieramy dane do kontrolek
            LoadKsiazkiGridView();
            LoadCzasopismaGridView();
            LoadWypozyczeniaGridView();

            LoadKategoriaComboBox();
            LoadTematykaComboBox();
            LoadCzestotliwoscComboBox();
            LoadOdbiorcaComboBox();

            this.toolStripStatusLabel2.Text = String.Format("Zalogowano jako {0}", czytelnik.Imie);

            //Dane czytelnika
            this.imieLabel.Text = czytelnik.Imie;
            this.nazwiskoLabel.Text = czytelnik.Nazwisko;
            this.peselLabel.Text = czytelnik.Pesel;
            if (czytelnik.Plec.ToString().Equals("M"))
                this.plecLabel.Text = "Mężczyzna";
            else
                this.plecLabel.Text = "Kobieta";
            this.dataUrodzeniaLabel.Text = Convert.ToString(czytelnik.DataUrodzenia.ToShortDateString());

            //Dane dot. adresu czytelnika
            Adres adresCzytelnika = czytelnik.Adres;
            this.ulicaLabel.Text = adresCzytelnika.Ulica;
            this.kodPocztowyLabel.Text = adresCzytelnika.KodPocztowy;
            this.miejscowoscLabel.Text = adresCzytelnika.Miejscowosc;
            this.telefonLabel.Text = adresCzytelnika.Telefon;
            this.statusLabel.Text = karta.Status;
            this.dataWystawieniaLabel.Text = Convert.ToString(karta.DataWystawienia.ToShortDateString());
            this.terminWaznosciLabel.Text = Convert.ToString(karta.DataWystawienia.ToShortDateString());

            this.label6.Visible = false;
        }