private void FillPath(string ID_Category)
    {
        lblPath.Text = "";
            int ID = int.Parse(ID_Category);

            DataTable dt = new tbl_CategoryTableAdapter().GetDataByID(ID);
            if (dt.Rows.Count > 0)
            {
                string delimitedInfo = dt.Rows[0]["cat_Path"].ToString();
                string[] discreteInfo = delimitedInfo.Split(new char[] { ',' });
                string title = "";
                foreach (string Data in discreteInfo)
                {
                    if (Data != "-1")
                    {
                        int ID2 = int.Parse(Data);
                        DataTable dt2 = new tbl_CategoryTableAdapter().GetDataByID(ID2);
                        if (dt2.Rows.Count > 0)
                        {
                            title = dt2.Rows[0]["Cat_Title"].ToString();
                        }
                        lblPath.Text = lblPath.Text + title + " >> ";
                    }
                }
                lblPath.Text = lblPath.Text + dt.Rows[0]["cat_title"].ToString() + " >> ";
            }
            else
            {
                lblPath.Text = lblPath.Text + "بخش عمومی  >> ";
            }
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        string path = "-1";
        int ID = -1;
        if (Request.QueryString["ID_Root"] != null)
        {
             ID = int.Parse(Request.QueryString["ID_Root"]);
        }

        if (Request.QueryString["ID_Root"] != null && Request.QueryString["ID_Root"] != "-1")
        {
            DataTable dt = new tbl_CategoryTableAdapter().GetDataByID(ID);
            path = dt.Rows[0]["Cat_Path"].ToString() + "," + ID;
        }
        if (LblHidden.ToolTip.Length == 0)
        {
            new tbl_CategoryTableAdapter().Insert(TextTitle.Text, ID, path);
        }
        else
        {
            int ID2 = int.Parse(LblHidden.ToolTip);
            new tbl_CategoryTableAdapter().UpdateCategroy(TextTitle.Text, ID, ID2);
        }
        Cancel();
        FillGrid();
    }
    private void Fill()
    {
        int ID = int.Parse(Request.QueryString["Content_ID"].ToString());
        DataTable dt = new tbl_ContentTableAdapter().GetDataByContent_ID(ID);
        if (dt.Rows.Count > 0)
        {
            LblHidden.ToolTip = Request.QueryString["Content_ID"].ToString();
            TextTitle.Text = dt.Rows[0]["Con_Title"].ToString();
            FCKeditor1.Value = dt.Rows[0]["Con_Text"].ToString();
            FileUpload1.ToolTip = dt.Rows[0]["Con_Attach"].ToString();
            CheckBox1.Checked = bool.Parse(dt.Rows[0]["Con_Active"].ToString());
            DateContent = dt.Rows[0]["Con_date"].ToString();
            Panel1.Visible = true;
            Panel2.Visible = true;
            FillPath(dt.Rows[0]["Con_Type_Role"].ToString(), dt.Rows[0]["Con_ID_Role"].ToString());

        }
        FillDr(-1, DropDownList1);
        DataTable dt2 = new tbl_CategoryTableAdapter().GetDataByID(int.Parse(dt.Rows[0]["Con_ID_Category"].ToString()));
        if (dt2.Rows.Count > 0)
        {
            string delimitedInfo = dt2.Rows[0]["Cat_Path"].ToString();
            string[] discreteInfo = delimitedInfo.Split(new char[] { ',' });
            int i = 1;
            foreach (string Data in discreteInfo)
            {
                if (Data == "-1")
                {
                    FillDr(int.Parse(Data), (DropDownList)FindControl("DropDownList" + i.ToString()));
                }
                else
                {
                    ((DropDownList)(FindControl("DropDownList" + (i - 1).ToString()))).Items.FindByValue(Data).Selected = true;
                    FillDr(int.Parse(Data), (DropDownList)FindControl("DropDownList" + i.ToString()));
                }
                i++;
            }
            ((DropDownList)(FindControl("DropDownList" + (i - 1).ToString()))).Items.FindByValue(dt.Rows[0]["Con_ID_Category"].ToString()).Selected = true;

        }
    }
    private void Fill()
    {
        int ID = int.Parse(Request.QueryString["Lesson_ID"].ToString());
        DataTable dt = new tbl_LessonTableAdapter().GetDataByID(ID);
        if (dt.Rows.Count > 0)
        {
            LblHidden.ToolTip = Request.QueryString["Lesson_ID"].ToString();
            TextName.Text = dt.Rows[0]["Les_Name"].ToString();
            TextUnit.Text = dt.Rows[0]["Les_Unit"].ToString();
            TextTime.Text = dt.Rows[0]["Les_Lesson_time"].ToString();
            if (DropDownList7.Items.Count > 0)
            {
                DropDownList7.Items.FindByValue(dt.Rows[0]["Les_ID_Teacher"].ToString()).Selected = true;
            }
        }
        FillDr(-1, DropDownList1);
        DataTable dt2 = new tbl_CategoryTableAdapter().GetDataByID(int.Parse(dt.Rows[0]["Les_ID_Category"].ToString()));
        if (dt2.Rows.Count > 0)
        {
            string delimitedInfo = dt2.Rows[0]["Cat_Path"].ToString();
            string[] discreteInfo = delimitedInfo.Split(new char[] { ',' });
            int i = 1;
            foreach (string Data in discreteInfo)
            {
                if (Data == "-1")
                {
                    FillDr(int.Parse(Data), (DropDownList)FindControl("DropDownList" + i.ToString()));
                }
                else
                {
                    ((DropDownList)(FindControl("DropDownList" + (i - 1).ToString()))).Items.FindByValue(Data).Selected = true;
                    FillDr(int.Parse(Data), (DropDownList)FindControl("DropDownList" + i.ToString()));
                }
                i++;
            }
            ((DropDownList)(FindControl("DropDownList" + (i - 1).ToString()))).Items.FindByValue(dt.Rows[0]["Les_ID_Category"].ToString()).Selected = true;

        }
        Panel1.Visible = true;
        FillPath();
    }
    private string FillPath2(string ID_Category)
    {
        string Cat_Path = "";
        int ID = int.Parse(ID_Category);

        DataTable dt = new tbl_CategoryTableAdapter().GetDataByID(ID);
        if (dt.Rows.Count > 0)
        {
            string delimitedInfo = dt.Rows[0]["cat_Path"].ToString();
            string[] discreteInfo = delimitedInfo.Split(new char[] { ',' });
            string title = "";
            foreach (string Data in discreteInfo)
            {
                if (Data != "-1")
                {
                    int ID2 = int.Parse(Data);
                    DataTable dt2 = new tbl_CategoryTableAdapter().GetDataByID(ID2);
                    if (dt2.Rows.Count > 0)
                    {
                        title = dt2.Rows[0]["Cat_Title"].ToString();
                    }
                    Cat_Path = Cat_Path + title + " >> ";
                }
            }
             Cat_Path = Cat_Path + dt.Rows[0]["cat_title"].ToString() + " >> ";
        }
        else
        {
            Cat_Path = Cat_Path + "بدون بخش  >> ";
        }
        return Cat_Path;
    }
    private void Fill()
    {
        int ID = int.Parse(Request.QueryString["Student_ID"].ToString());
        DataTable dt = new tbl_StudentInformationTableAdapter().GetDataByStudent_ID(ID);
        if (dt.Rows.Count > 0)
        {
            LblHidden.ToolTip = Request.QueryString["Student_ID"].ToString();
            TextName.Text = dt.Rows[0]["SI_Name"].ToString();
            TextFatherMobile.Text = dt.Rows[0]["SI_FatherMobile"].ToString();
            TextFatherName.Text = dt.Rows[0]["SI_FatherName"].ToString();
            TextFatherJob.Text = dt.Rows[0]["SI_FatherJob"].ToString();
            TextMotherMobile.Text = dt.Rows[0]["SI_MotherMobile"].ToString();
            TextMotherName.Text = dt.Rows[0]["SI_MotherName"].ToString();
            TextMotherJob.Text = dt.Rows[0]["SI_MotherJob"].ToString();
            TextAddress.Text = dt.Rows[0]["SI_Address"].ToString();
            TextTell.Text = dt.Rows[0]["SI_Tell"].ToString();
            TextPostalCode.Text = dt.Rows[0]["SI_PostalCode"].ToString();
            TextExportPlace.Text = dt.Rows[0]["SI_ExportPlace"].ToString();
            TextBirthDate.Text = dt.Rows[0]["SI_BirthDate"].ToString();
            TextAdminCode.Text = dt.Rows[0]["SI_StudentCode"].ToString();
            TextUserName.Text = dt.Rows[0]["SI_UserName"].ToString();
            HiddenField2.Value = dt.Rows[0]["SI_UserName"].ToString();
            HiddenField1.Value = new main_class().Decode(dt.Rows[0]["SI_Password"].ToString());
            Image1.Visible = true;
            Image1.ImageUrl = dt.Rows[0]["SI_Picture"].ToString();
            if (System.IO.File.Exists(Server.MapPath(Image1.ImageUrl)))
            {
                Image1.Visible = true;
            }
            else
            {
                Image1.Visible = true;
                Image1.ImageUrl = "~//Image_User//default_pic.png";
            }
        }
        FillDr(-1, DropDownList1);
        DataTable dt2 = new tbl_CategoryTableAdapter().GetDataByID(int.Parse(dt.Rows[0]["SI_ID_Category"].ToString()));
        if (dt2.Rows.Count > 0)
        {
            string delimitedInfo = dt2.Rows[0]["Cat_Path"].ToString();
            string[] discreteInfo = delimitedInfo.Split(new char[] { ',' });
            int i = 1;
            foreach (string Data in discreteInfo)
            {
                if (Data == "-1")
                {
                    FillDr(int.Parse(Data), (DropDownList)FindControl("DropDownList" + i.ToString()));
                }
                else
                {
                    ((DropDownList)(FindControl("DropDownList" + (i - 1).ToString()))).Items.FindByValue(Data).Selected = true;
                    FillDr(int.Parse(Data), (DropDownList)FindControl("DropDownList" + i.ToString()));
                }
                i++;
            }
            ((DropDownList)(FindControl("DropDownList" + (i - 1).ToString()))).Items.FindByValue(dt.Rows[0]["SI_ID_Category"].ToString()).Selected = true;

            if (i != 6)
            {
                FillDr(int.Parse(dt.Rows[0]["SI_ID_Category"].ToString()), (DropDownList)FindControl("DropDownList" + (i + 1).ToString()));
            }
        }
        Panel1.Visible = true;
        FillPath("Student", dt.Rows[0]["Student_ID"].ToString());
    }
 private void FillPath()
 {
     lblPath.Text = "";
     if (Request.QueryString["ID_Root"] != null)
     {
         if (Request.QueryString["ID_Root"] != "-1")
         {
             DataTable dt2 = new tbl_CategoryTableAdapter().GetDataByID(int.Parse(Request.QueryString["ID_Root"]));
             string delimitedInfo = dt2.Rows[0]["Cat_Path"].ToString();
             string[] discreteInfo = delimitedInfo.Split(new char[] { ',' });
             string title = "";
             foreach (string Data in discreteInfo)
             {
                 if (Data == "-1")
                 {
                     title = "بخش اصلی";
                 }
                 else
                 {
                     int ID = int.Parse(Data);
                     DataTable dt = new tbl_CategoryTableAdapter().GetDataByID(ID);
                     if (dt.Rows.Count > 0)
                     {
                         title = dt.Rows[0]["Cat_Title"].ToString();
                     }
                 }
                 lblPath.Text = lblPath.Text + "<a href='./index.aspx?Type=AdminCategory&ID_Root=" +
                     Data + "'>" + title + "</a>" + " >> ";
             }
             lblPath.Text = lblPath.Text + "<a href='./index.aspx?Type=AdminCategory&ID_Root=" +
                 dt2.Rows[0]["Category_ID"].ToString() + "'>" + dt2.Rows[0]["Cat_Title"].ToString() + "</a>" + " >> ";
         }
         else
         {
             lblPath.Text = lblPath.Text + "<a href='./index.aspx?Type=AdminCategory&ID_Root=-1'>بخش اصلی</a>  >> ";
         }
     }
     else
     {
         lblPath.Text = lblPath.Text + "<a href='./index.aspx?Type=AdminCategory&ID_Root=-1'>بخش اصلی</a>  >> ";
     }
 }
    private void FillGrid()
    {
        int ID_Admin = int.Parse(Request.Cookies["ID_Role"].Value);
        DataTable dt2 = new tbl_AdminPermissionCategoryTableAdapter().GetDataByAPC_ID_Admin(ID_Admin);
        if (dt2.Rows.Count > 0)
        {
            string APC_Cat_Patch = dt2.Rows[0]["APC_Cat_Patch"].ToString();

            int ID = -1;
            if (Request.QueryString["ID_Root"] != null)
            {
                ID = int.Parse(Request.QueryString["ID_Root"]);
            }

            string[] discreteInfo2 = APC_Cat_Patch.Split(new char[] { ',' });
            int SathKarbar = 0;
            foreach (string Data2 in discreteInfo2)
            {
                SathKarbar++;
            }

            int SathJari = 0;
            DataTable dt = new tbl_CategoryTableAdapter().GetDataByID(ID);
            if (dt.Rows.Count > 0)
            {
                string delimitedInfo = dt.Rows[0]["Cat_Path"].ToString();
                string[] discreteInfo = delimitedInfo.Split(new char[] { ',' });
                foreach (string Data in discreteInfo)
                {
                    SathJari++;
                }
            }

            if (SathJari < SathKarbar && APC_Cat_Patch.Trim() != "-1")
            {
                GridView1.SelectedIndex = -1;
                GridView1.DataSource = new tbl_CategoryTableAdapter().GetDataByIDRootPermissionAdmin(ID, APC_Cat_Patch);
                GridView1.DataBind();
            }
            else
            {
                GridView1.SelectedIndex = -1;
                GridView1.DataSource = new tbl_CategoryTableAdapter().GetDataByID_Root(ID);
                GridView1.DataBind();
            }

            if (SathJari >= SathKarbar || APC_Cat_Patch.Trim() == "-1")
            {
                Button1.Enabled = true;
            }
            else
            {
                Button1.Enabled = false;

            }
            if (SathJari == 6 )
            {
                Button1.Enabled = false;
            }

        }
        else
        {
            GridView1.DataBind();

        }
    }
 //----------------------------------------------------------------------------------------------
 protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
 {
     int ID = int.Parse(((Label)(GridView1.Rows[e.NewEditIndex].FindControl("lblID"))).Text);
     DataTable dt = new tbl_CategoryTableAdapter().GetDataByID(ID);
     if (dt.Rows.Count > 0)
     {
         TextTitle.Text = dt.Rows[0]["Cat_Title"].ToString();
     }
     LblHidden.ToolTip = ID.ToString();
     GridView1.SelectedIndex = e.NewEditIndex;
 }
    private void Fill()
    {
        int ID = int.Parse(Request.QueryString["ID_GallerySubject"].ToString());
        DataTable dt = new tbl_GallerySubjectTableAdapter().GetDataByGallerySubjet_ID(ID);
        if (dt.Rows.Count > 0)
        {
            LblHidden.ToolTip = Request.QueryString["ID_GallerySubject"].ToString();
            TextName.Text = dt.Rows[0]["gs_title"].ToString();
            CheckBox1.Checked=bool.Parse( dt.Rows[0]["gs_Active"].ToString());

        }
        FillFileUpload();
        DataTable dt2 = new tbl_CategoryTableAdapter().GetDataByID(int.Parse(dt.Rows[0]["gs_ID_Category"].ToString()));
        if (dt2.Rows.Count > 0)
        {
            string delimitedInfo = dt2.Rows[0]["Cat_Path"].ToString();
            string[] discreteInfo = delimitedInfo.Split(new char[] { ',' });
            int i = 1;
            foreach (string Data in discreteInfo)
            {
                if (Data == "-1")
                {
                    FillDr(int.Parse(Data), (DropDownList)FindControl("DropDownList" + i.ToString()));
                }
                else
                {
                    ((DropDownList)(FindControl("DropDownList" + (i - 1).ToString()))).Items.FindByValue(Data).Selected = true;
                    FillDr(int.Parse(Data), (DropDownList)FindControl("DropDownList" + i.ToString()));
                }
                i++;
            }
            ((DropDownList)(FindControl("DropDownList" + (i - 1).ToString()))).Items.FindByValue(dt.Rows[0]["gs_ID_Category"].ToString()).Selected = true;

        }
        Panel1.Visible = true;
        FillPath();
    }