//private void BindRoleList()
        //{
        //    string[] roleList = Roles.GetAllRoles();

        //    foreach (string role in roleList)
        //    {
        //        DropDownListRole.Items.Add(new ListItem(role, role));
        //    }
        //    DropDownListRole.Items.Insert(0, new ListItem("All", "0"));
        //    DropDownListRole.Items.Remove("Administrator");
        //}

        protected void RepeaterAlphabet_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            string searchValue = (((LinkButton)e.CommandSource).Text == "All") ? "%" : ((LinkButton)e.CommandSource).Text + "%";

            if (searchValue.Length != 0)
            {
                GridViewResult.DataSource = EmployeeLeaveDays.GetEmployeeListFilterByReportsToId(searchValue, Account.GetAccountByUserName(Page.User.Identity.Name.ToString()).AccountId, Convert.ToInt32(DropDownListFinancialPeriod.SelectedValue));
                GridViewResult.DataBind();
                ViewState["Search"] = searchValue;
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            Page.Form.DefaultFocus  = TextBoxSearchValue.ClientID;
            Page.Form.DefaultButton = ButtonSearch.UniqueID;

            if (!IsPostBack)
            {
                BindFinancialPeriod();
                //BindRoleList();
                string[] alphabet = "A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;All".Split(';');
                RepeaterAlphabet.DataSource = alphabet;
                RepeaterAlphabet.DataBind();
                string searchValue = (Request.QueryString["EmployeeNumber"] == null) ? "" : Request.QueryString["EmployeeNumber"];
                if (searchValue.Length != 0)
                {
                    GridViewResult.DataSource = EmployeeLeaveDays.GetEmployeeListFilterByReportsToId(searchValue, Account.GetAccountByUserName(Page.User.Identity.Name.ToString()).AccountId, Convert.ToInt32(DropDownListFinancialPeriod.SelectedValue));
                    GridViewResult.DataBind();
                    search = searchValue;
                }
            }
            PanelError.Visible = false;
        }
        protected void GridViewResult_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            try
            {
                switch (e.CommandName.ToLower())
                {
                case "approve":
                {
                    EmployeeLeaveDays.UpdateEmployeeLeaveDaysIsApprovalByEmployeeLeaveDaysId((Convert.ToInt32(e.CommandArgument)), 3 /*Approved*/, this.Master.LoggedOnAccount);
                    EmployeeLeave.UpdateEmloyeeLeaveCurrentDaysByEmployeeLeaveDaysId(Convert.ToInt32(e.CommandArgument), 1 /*Approve*/, this.Master.LoggedOnAccount);

                    SendEmployeeLeaveReportsToDecisionNotification((Convert.ToInt32(e.CommandArgument)));

                    break;
                }

                case "decline":
                {
                    EmployeeLeaveDays.UpdateEmployeeLeaveDaysIsApprovalByEmployeeLeaveDaysId((Convert.ToInt32(e.CommandArgument)), 1 /*Decline*/, this.Master.LoggedOnAccount);
                    SendEmployeeLeaveReportsToDecisionNotification((Convert.ToInt32(e.CommandArgument)));

                    break;
                }
                }

                GridViewResult.DataSource = EmployeeLeaveDays.GetEmployeeListFilterByReportsToId(ViewState["Search"].ToString(), Account.GetAccountByUserName(Page.User.Identity.Name.ToString()).AccountId, Convert.ToInt32(DropDownListFinancialPeriod.SelectedValue));
                GridViewResult.DataBind();
            }
            catch (System.Data.SqlClient.SqlException sqlEx)
            {
                //LabelError.Text = "";
                //for (int i = 0; i < sqlEx.Errors.Count; i++)
                //{
                //    LabelError.Text += (sqlEx.Errors[i].Message + "<br />");
                //}
                //PanelError.Visible = true;
            }
        }
 protected void ButtonSearch_Click(object sender, EventArgs e)
 {
     GridViewResult.DataSource = EmployeeLeaveDays.GetEmployeeListFilterByReportsToId("%" + TextBoxSearchValue.Text + "%", Account.GetAccountByUserName(Page.User.Identity.Name.ToString()).AccountId, Convert.ToInt32(DropDownListFinancialPeriod.SelectedValue));
     GridViewResult.DataBind();
     ViewState["Search"] = "%" + TextBoxSearchValue.Text + "%";
 }