using OtelOtomasyonu.Sınıflar;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace OtelOtomasyonu.Cariler {
    public partial class Form_CariEkle : Form {
        public Form_CariEkle() {
            InitializeComponent();
            cariTurleriTableAdapter.Fill(cariTurleriDataSet.CariTurleri);
        }

        private void button_kaydet_Click(object sender, EventArgs e) {
            if (textBox_ad.Text != "" && maskedTextBox_tel.Text != "" && maskedTextBox_dogum.Text != "" && comboBox_tur.Text != "") {
                if (Veritabani_islemleri.Ekle("Cariler", "cari_ad,cari_tel,cari_dogum,cari_kayit,cari_tur,cari_sifre", "'" + textBox_ad.Text + "','" + maskedTextBox_tel.Text + "','" + maskedTextBox_dogum.Text + "','" + DateTime.Now.ToShortDateString() + "','" + comboBox_tur.Text + "','" + textBox_sifre.Text + "'", "Cari başarıyla eklendi.") && Veritabani_islemleri.Ekle("CariGecmisleri", "gecmis_baslik,gecmis_detay,gecmis_saat,gecmis_tarih", "'Cari Ekleme İşlemi','" + textBox_ad.Text + " adlı cari eklendi.','" + DateTime.Now.ToShortTimeString() + "','" + DateTime.Now.ToShortDateString() + "'","Hayır")) button_temizle.PerformClick();
                else MessageBox.Show("Bir hata oluştu.", "Hata", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else {
                if (comboBox_tur.Text == "") {
                    comboBox_tur.BackColor = Color.Red;
                    comboBox_tur.ForeColor = Color.White;
                    comboBox_tur.Focus();
                }
                if (maskedTextBox_dogum.Text == "") {
                    maskedTextBox_dogum.BackColor = Color.Red;
                    maskedTextBox_dogum.ForeColor = Color.White;
                    maskedTextBox_dogum.Focus();
                }
                if (maskedTextBox_tel.Text == "") {
                    maskedTextBox_tel.BackColor = Color.Red;
                    maskedTextBox_tel.ForeColor = Color.White;
                    maskedTextBox_tel.Focus();
                }
                if (textBox_ad.Text == "") {
                    textBox_ad.BackColor = Color.Red;
                    textBox_ad.ForeColor = Color.White;
                    textBox_ad.Focus();
                }
                MessageBox.Show("Kırmızı ile işaretlenmiş yerleri lütfen doldurunuz.", "Dikkat", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            }
        }

        private void button_temizle_Click(object sender, EventArgs e) {
            Sifirla();
            textBox_ad.Text = "";
            maskedTextBox_tel.Text = "";
            maskedTextBox_dogum.Text = "";
            comboBox_tur.Text = "";
            textBox_ad.BackColor = Color.White;
            textBox_ad.ForeColor = Color.Black;
            comboBox_tur.BackColor = Color.White;
            comboBox_tur.ForeColor = Color.Black;
            maskedTextBox_tel.BackColor = Color.White;
            maskedTextBox_tel.ForeColor = Color.Black;
            maskedTextBox_dogum.BackColor = Color.White;
            maskedTextBox_dogum.ForeColor = Color.Black;
            textBox_ad.Focus();
        }

        private void Sifirla() {
            label5.Visible = false;
            textBox_sifre.Visible = false;
            Size = new Size(439, 268);
        }

        private void comboBox_tur_SelectedIndexChanged(object sender, EventArgs e) { TurKontrol(); }

        private void TurKontrol() {
            try {
                Sifirla();
                if (Form_Otel.baglanti.State != ConnectionState.Open) { Form_Otel.baglanti.Open(); }
                SqlCommand vericek = new SqlCommand("SELECT * FROM CariTurleri WHERE tur_ad='" + comboBox_tur.Text + "'", Form_Otel.baglanti);
                SqlDataReader veriler = vericek.ExecuteReader();
                while (veriler.Read()) {
                    if (veriler["tur_uygulama"].ToString() == "True") {
                        label5.Visible = true;
                        textBox_sifre.Visible = true;
                        Size = new Size(439, 305);
                    }
                }
                veriler.Close();
                if (Form_Otel.baglanti.State != ConnectionState.Closed) { Form_Otel.baglanti.Close(); }
            }
            catch (Exception hata) { MessageBox.Show("Bir hata oluştu. Hata mesajı: " + hata.Message, "Hata", MessageBoxButtons.OK, MessageBoxIcon.Error); }
        }

        private void Form_CariEkle_Load(object sender, EventArgs e) { TurKontrol(); }
    }
}