private void frmLogin_Load(object sender, EventArgs e)
        {
            js = new Connector(AccessRegistryTool.ReadValue("DBServer"),"Kids_Checkin","kidschurch","1nt3gr1ty@ENLI");

            icon.Icon = new Icon(Application.StartupPath + @"\kids-icon.ico");
            icon.Visible = true;

            txtRoom.Text = this.Tag.ToString();

            lblConnected.Text = "Connected To: " + AccessRegistryTool.ReadValue("DBServer");

            fldRoomID = js.Lookup("fldID", "tblRoom", "fldRoom='" + txtRoom.Text + "'");

            string eID = js.Lookup("fldID", "tblCustomizedEvent", "fldEventCode='" + this.Text + "'");

            lblTotal.Text = js.Lookup("fldMaxCapacity", "tblCustomizedEventRooms", "fldRoomID='" + fldRoomID + "' AND fldCEventID='" + eID + "'");

            txtAge1.Text = js.Lookup("fldAgeFrom", "tblCustomizedEventRooms", "fldRoomID='" + fldRoomID + "' AND fldCEventID='" + eID + "'");
            txtAge2.Text = js.Lookup("fldAgeTo", "tblCustomizedEventRooms", "fldRoomID='" + fldRoomID + "' AND fldCEventID='" + eID + "'");

            fldGroupID = js.Lookup("fldID","tblGroup","fldAgeFrom='" + txtAge1.Text + "' AND fldAgeTo='" + txtAge2.Text + "'");

            if(Convert.ToInt32(txtAge1.Text)< 7)
            {
                btnAddPoints.Enabled = false;
            }

            string timetoday = DateTime.Now.ToString("hh:mm tt");

            string q = "SELECT * FROM tblEvent WHERE fldRegistrationTime <= convert(time,'" + timetoday + "') AND fldEndTime >=convert(time,'" + timetoday + "')";

            js.ExecuteQuery(q);

            js.RiD.Read();

            lblNotification.Text = "";

            if (js.RiD.HasRows)
            {
                fldEventID = "" + js.RiD["fldID"].ToString();

                txtService.Text = js.RiD["fldEventTitle"].ToString();

                LoadAttendance();
                LoadBirthdays();
                LoadNewComer();
                LoadVolunteer();
                dgvAttendance_CellContentClick(null,null);
            }
            else
            {
                js.showExclamation("Cannot open an event yet!, Please try again later");
                frmSystemOptions frm = new frmSystemOptions();
                frm.Show();
                Close();
                return;
            }

            js.CloseConnection();

            StartReader();

            string mode = AccessRegistryTool.ReadValue("RegMode");

            if(mode=="Barcode")
            {
                tmrReader.Enabled = false;
                //rbBarcode_CheckedChanged(null, null);

            }
            else
            {
                tmrReader.Enabled = true;
            }

            //this.BackgroundImage = Image.FromFile(Application.StartupPath + "/Pictures/kids back.jpg");
        }
        private void pbOverride_Click(object sender, EventArgs e)
        {
            js = new Connector(AccessRegistryTool.ReadValue("DBServer"), "Kids_Checkin", "kidschurch", "1nt3gr1ty@ENLI");
            tmrReader.Enabled = false;
            DataGridViewImageColumn img = new DataGridViewImageColumn();
            int age = 0;
            int group = 0;

            string pathfile = js.GetPath() + "/Kids/" + js.Lookup("fldPicture", "tblKids", "fldID='" + pbOverride.Tag + "'");

            string roomid = js.Lookup("fldID", "tblRoom", "fldRoom='" + txtRoom.Text + "'");

            string firstname = js.Lookup("fldNickName", "tblKids", "fldID='" + pbOverride.Tag + "'");
            string Lastname = js.Lookup("fldLastName", "tblKids", "fldID='" + pbOverride.Tag + "'");
            bool correct = false;
            string room = "";
            string thistext = "";
            string id = js.Lookup("fldID", "tblCustomizedEvent", "fldEventCode='" + this.Text + "'");

            if(lblCount.Text==lblTotal.Text)
            {

                string qry = "SELECT er.fldRoomID,r.fldRoom FROM tblCustomizedEventRooms er " +
                              "  LEFT OUTER JOIN tblRoom r on r.fldID=er.fldRoomID" +
                               " WHERE er.fldMaxCapacity>(SELECT Count(*) FROM tblAttendance WHERE fldRoomID=er.fldRoomID AND fldLoginDateTime BETWEEN '" + DateTime.Now.ToShortDateString() + " 00:00:00' AND '" + DateTime.Now.ToShortDateString() + " 23:59:59' AND fldEventID='" + fldEventID + "')" +
                               " AND fldCEventID='" + id + "'";
                js.ExecuteQuery(qry);

                js.RiD.Read();

                if (js.RiD.HasRows)
                {
                    room = "" + js.RiD["fldRoom"].ToString();
                    roomid = js.RiD["fldRoomID"].ToString();
                }

                if(room!="")
                {
                    js.showExclamation("Room: " + txtRoom.Text + " is already maxed out the kid will be transferred to Room: " + room);
                }
                else
                {
                    room = txtRoom.Text;
                    roomid =  js.Lookup("fldID", "tblRoom", "fldRoom='" + txtRoom.Text + "'");
                    js.showExclamation("Room: " + txtRoom.Text + " is already maxed out, the kid will be added to Room: " + room);
                }

            }
               id = js.Lookup("fldID", "tblCustomizedEvent", "fldEventCode='" + this.Text + "'");

            string qq = "SELECT er.fldRoomID,r.fldRoom,er.fldAgeFrom,er.fldAgeTo FROM tblCustomizedEventRooms er " +
                              "  LEFT OUTER JOIN tblRoom r on r.fldID=er.fldRoomID" +
                               " WHERE er.fldMaxCapacity>(SELECT Count(*) FROM tblAttendance WHERE fldRoomID=er.fldRoomID AND fldLoginDateTime BETWEEN '" + DateTime.Now.ToShortDateString() + " 00:00:00' AND '" + DateTime.Now.ToShortDateString() + " 23:59:59' AND fldEventID='" + fldEventID + "')" +
                               " AND fldCEventID='" + id + "'";

            while (correct == false)
            {
                //string value = "";
                frmOverride frm = new frmOverride();
                if (frm.ShowDialog() == System.Windows.Forms.DialogResult.Cancel)
                {

                }
                else
                {

                    checkin.frmOverFlowRoom form = new checkin.frmOverFlowRoom();
                    form.Tag = qq;
                    if (form.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        string[] tag = form.Tag.ToString().Split(char.Parse("|"));

                        room = tag[1];
                        roomid = tag[0];
                    }
                    correct = true;
                    //return;
                }

            }

            if (System.IO.File.Exists(pathfile))
            {
                img.Image = Image.FromFile(pathfile);

                img.Image = (Image)(new Bitmap(img.Image, new Size(150, 150)));
            }
            else
            {
                img.Image = Image.FromFile(Application.StartupPath + "/Pictures/download.jpg");
                img.Image = (Image)(new Bitmap(img.Image, new Size(150, 150)));
            }

            pbImageKid.Image = img.Image;

            txtName.Text = firstname + " " + Lastname;

            txtBirthday.Text = Convert.ToDateTime(js.Lookup("fldBirthday", "tblKids", "fldID='" + pbOverride.Tag + "'")).ToShortDateString();

            DateTime sdate = Convert.ToDateTime(DateTime.Now.ToString("MM/dd"));
            DateTime edate = sdate.AddDays(6);
            DateTime bd = Convert.ToDateTime(Convert.ToDateTime(txtBirthday.Text).ToString("MM/dd"));

            if (bd >= sdate && bd <= edate)
            {
                pbBirthday.Visible = true;
                pbPopper.Visible = true;

            }
            else
            {
                pbBirthday.Visible = false;
                pbPopper.Visible = false;
            }

            txtAllergies.Text = js.Lookup("fldAllergies", "tblKids", "fldID='" + pbOverride.Tag + "'");

            txtAge.Text = js.GetAge(Convert.ToDateTime(txtBirthday.Text)).ToString();

            txtBarcode.Text = js.Lookup("fldStudentID", "tblKids", "fldID='" + pbOverride.Tag + "'");

            txtNFC.Text = js.Lookup("fldNFCCode", "tblKidsNFC", "fldKidID='" + pbOverride.Tag + "'");

            if (Convert.ToDecimal(age) < 2)
            {
                group = 1;
            }

            else if ((Convert.ToDecimal(age) >= 2) && (Convert.ToDecimal(age) < 3))
            {
                group = 2;
            }

            else if ((Convert.ToDecimal(age) >= 3) && (Convert.ToDecimal(age) <= 4))
            {
                group = 3;
            }

            else if ((Convert.ToDecimal(age) >= 5) && (Convert.ToDecimal(age) <= 6))
            {
                group = 4;
            }

            else if ((Convert.ToDecimal(age) >= 7) && (Convert.ToDecimal(age) <= 9))
            {
                group = 5;
            }

            else if ((Convert.ToDecimal(age) >= 10) && (Convert.ToDecimal(age) <= 12))
            {
                group = 6;
            }

            else
            {
                group = 0;
            }

            string q = "INSERT INTO tblAttendance(fldRoomID,fldChurch,fldLoginDateTime,fldKidsID,fldEventID,fldGroupID,fldAge) VALUES('" + roomid + "','" + 1 + "','" + DateTime.Now.ToString() + "','" + txtBarcode.Text + "','" + fldEventID + "','" + group + "','" + age + "')";

            //string q = "INSERT INTO tblAttendance(fldRoomID,fldChurch,fldLoginDateTime,fldKidsID,fldEventID) VALUES('" + roomid + "','" + 1 + "','" + DateTime.Now.ToString() + "','" + kidid + "','" + fldEventID + "')";

            js.ExecuteNonQuery(q);

            pbLoading.Visible = true;

            if(Properties.Settings.Default.PairedDevices!="")
            {
                string[] devices = Properties.Settings.Default.PairedDevices.Split(char.Parse(","));

                if (devices[0] == "")
                {
                    string device = Properties.Settings.Default.PairedDevices;

                    string[] properties = device.Split(char.Parse("|"));

                    Connector con = new Connector(properties[1],"Kids_Checkin","kidschurch","1nt3gr1ty@ENLI");

                    try
                    {
                        Application.DoEvents();
                        con.ExecuteNonQuery(q);
                    }
                    catch(Exception ex)
                    {

                    }

                    return;
                }

                for(int i=0;i<=(devices.Length - 1);i++)
                {
                    string device = devices[i];

                    string[] properties = device.Split(char.Parse("|"));

                    Connector con = new Connector(properties[1], "Kids_Checkin", "kidschurch", "1nt3gr1ty@ENLI");

                    try
                    {
                        Application.DoEvents();
                        con.ExecuteNonQuery(q);
                    }
                    catch(Exception ex)
                    {

                    }

                }

            }

            pbLoading.Visible = false;

            thistext = this.Text;
            txtRoom.Text = room;
            this.Tag = room;
            frmLogin_Load(null, null);
            lblNotification.ForeColor = System.Drawing.Color.Green;
            lblNotification.Text = "Successfully Logged In";

            tmrReader.Enabled = true;
            pbOverride.Tag = null;
            pbOverride.Visible = false;
        }