using System; using System.Collections; using System.Configuration; using System.Data; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml; using System.Data.SqlClient; using System.Data.SqlTypes; public partial class Admin_AdminMenu : System.Web.UI.Page { SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["connectionstring"].ConnectionString); DataSet ds = new DataSet(); SqlCommand cmd; FillDD objFillDD = new FillDD(); Dashboard objDash = new Dashboard(); String Default; SqlTransaction MyTran = null; protected void Page_Load(object sender, EventArgs e) { try { if (!Page.IsPostBack) { Fill_DDParent(); lbl_DgOrder.Text = ""; Default = "No"; Fill_GridMenuItem(); } } catch (Exception ex) { lblErr.Text = (ex.Message); } } public void Fill_DDParent() { try { objFillDD.Get_DDListWhr(ref DDParent, "MenuId", "Text", "Menu", "Where ParentId is NULL", ref lblErr); DDParent.Items.Insert(0, "-- Select --"); DDParent.Items.Insert(1, "Main Menu"); } catch (Exception ex) { lblErr.Text = (ex.Message); } } private void Fill_GridMenuItem() { //lblDgErr.Text = ""; try { SqlDataAdapter adp = new SqlDataAdapter("Select * from Menu " + lbl_DgOrder.Text + " Order By MenuId " + DDOrder2.SelectedItem.Value + "", con); adp.Fill(ds, "mnu1"); adp.Dispose(); GVMenuItem.DataSource = ds.Tables["mnu1"]; GVMenuItem.DataBind(); if (GVMenuItem.Rows.Count < 1) { lblDgErr.Text = "Menu Alert! : Zero Records in Database"; } else { lblDGCount.Text = GVMenuItem.Rows.Count.ToString(); objDash.Count_Total(ref lblDGCount, "Menuid", "Menu", "", ref lblDgErr); } } catch (Exception ex) { lblDgErr.Text = ("GV Alert! : " + ex.Message); } } protected void btnSubmit_Click(object sender, EventArgs e) { if (txtMenuText.Text == "") { lblErr.Text = "Alert Enter Menu Text"; txtMenuText.Focus(); } else if (DDParent.SelectedItem.Text == "-- Select --") { lblErr.Text = "Alert Please Select ParentID"; DDParent.Focus(); } else { objDash.Check_Unique("Text", "Menu", txtMenuText.Text, ref lblErr); if (lblErr.Text=="Yes") { lblErr.Text = ""; if (DDParent.SelectedItem.Text == "Main Menu") { Insert_MenuData(); } else { Insert_SubMenuData(); } } } } private void Insert_MenuData() { try { SqlCommand cmd = new SqlCommand("SpInsertMenu", con); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add(new SqlParameter("@Text", txtMenuText.Text)); cmd.Parameters.Add(new SqlParameter("@Desc", txtDesc.Text)); cmd.Parameters.Add(new SqlParameter("@NUrl", txtNavUrl.Text)); cmd.Parameters.Add(new SqlParameter("@TTip", txtTTip.Text)); cmd.Parameters.Add(new SqlParameter("@EntryBy", Session["AdminAuth"])); cmd.Parameters.Add(new SqlParameter("@EntryDt", DateTime.Today)); con.Open(); cmd.ExecuteNonQuery(); // lblErr.Text = "Data Inserted Successfully"; Reset(); } catch (Exception exp) { lblErr.Text = "Insert Alert : " + exp.Message; } finally { con.Close(); Default = "Yes"; Add_NewColumn(); } } private void Insert_SubMenuData() { try { SqlCommand cmd = new SqlCommand("SpInsertSubMenu", con); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add(new SqlParameter("@Text", txtMenuText.Text)); cmd.Parameters.Add(new SqlParameter("@Desc", txtDesc.Text)); cmd.Parameters.Add(new SqlParameter("@ParId", DDParent.SelectedItem.Value)); cmd.Parameters.Add(new SqlParameter("@NUrl", txtNavUrl.Text)); cmd.Parameters.Add(new SqlParameter("@TTip", txtTTip.Text)); cmd.Parameters.Add(new SqlParameter("@EntryBy", Session["AdminAuth"])); cmd.Parameters.Add(new SqlParameter("@EntryDt", DateTime.Today)); con.Open(); cmd.ExecuteNonQuery(); // lblErr.Text = "Data Inserted Successfully"; Reset(); } catch (Exception exp) { lblErr.Text = "Insert Alert : " + exp.Message; } finally { con.Close(); // objDash.Get_Max(ref lblMaxId, "MenuID", "Menu", "", ref lblErr); Default = "No"; Add_NewColumn(); } } private void Add_NewColumn() { try { objDash.Get_Max(ref lblMaxId, "MenuID", "Menu", "", ref lblErr); SqlCommand cmd = new SqlCommand("ALTER TABLE tbl_SetPermission ADD [" + lblMaxId.Text + "] [char](10) NOT NULL DEFAULT ('" + Default + "')", con); con.Open(); cmd.ExecuteNonQuery(); lblErr.Text = "Data Inserted Successfully"; } catch (Exception exp) { lblErr.Text = "Col Insert Alert : " + exp.Message; } finally { con.Close(); Fill_GridMenuItem(); Fill_DDParent(); } } protected void btnReset_Click(object sender, EventArgs e) { Reset(); lblErr.Text = ""; } public void Reset() { txtMenuText.Text = ""; txtDesc.Text = ""; txtNavUrl.Text = ""; txtTTip.Text = ""; DDParent.ClearSelection(); } protected void GVMenuItem_PageIndexChanging(object sender, GridViewPageEventArgs e) { lblDgErr.Text = ""; try { GVMenuItem.PageIndex = e.NewPageIndex; Fill_GridMenuItem(); } catch (Exception exp) { lblDgErr.Text = ("GV Paging Alert! : " + exp.Message); } } protected void GVMenuItem_OnEditCommand(object sender, GridViewEditEventArgs e) { try { lblDgErr.Text = ""; int row = e.NewEditIndex; Label lblParid = (Label)GVMenuItem.Rows[row].FindControl("DglblParent"); GVMenuItem.EditIndex = e.NewEditIndex; Fill_GridMenuItem(); DropDownList ddl = (DropDownList)GVMenuItem.Rows[row].FindControl("DgDDParent"); SqlDataAdapter adp = new SqlDataAdapter("SELECT MenuId, Text from Menu Where ParentId is NULL", con); DataSet ds1 = new DataSet(); adp.Fill(ds, "ParId"); adp.Dispose(); ddl.DataSource = ds.Tables["ParId"]; ddl.DataTextField = "Text"; ddl.DataValueField = "MenuId"; ddl.DataBind(); ddl.Items.Insert(0, "Main Menu"); ListItem li = default(ListItem); // ddl.Items.Add(lblParid.Text); li = ddl.Items.FindByValue(lblParid.Text); if ((li != null)) li.Selected = true; } catch (Exception exp) { lblDgErr.Text = ("GV Edit Alert! : " + exp.Message); } } protected void GVMenuItem_RowDeleting(object sender, GridViewDeleteEventArgs e) { try { int row = e.RowIndex; lbl_DgId.Text = ((Label)(GVMenuItem.Rows[row].FindControl("lblDgMenuId"))).Text; SqlCommand cmd = new SqlCommand("Delete Menu Where MenuId=@Id", con); cmd.Parameters.Add(new SqlParameter("@Id", lbl_DgId.Text)); SqlCommand cmdDelCol = new SqlCommand("Alter Table tbl_SetPermission Drop Column [" + lbl_DgId.Text + "] ", con); if (con.State == ConnectionState.Closed) { con.Open(); } MyTran = con.BeginTransaction(); cmd.Transaction = MyTran; cmdDelCol.Transaction = MyTran; cmd.ExecuteNonQuery(); cmdDelCol.ExecuteNonQuery(); MyTran.Commit(); lblDgErr.Text = "Row Deleted successfully"; } catch (Exception exp) { MyTran.Rollback(); lblDgErr.Text = ("GV Delete Alert! : " + exp.Message); } finally { if (con.State == ConnectionState.Open) { con.Close(); } Fill_GridMenuItem(); } } protected void GVMenuItem_OnRowDataBound(object sender, GridViewRowEventArgs e) { try { if (e.Row.RowType == DataControlRowType.DataRow) { ImageButton btn = ((ImageButton)(e.Row.FindControl("btnDgDelete"))); btn.Attributes.Add("onclick", "return confirm_delete();"); } } catch (Exception exp) { lblDgErr.Text = ("GV DataBound Alert! : " + exp.Message); } } protected void GVMenuItem__RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { try { lblDgErr.Text = ""; GVMenuItem.EditIndex = -1; Fill_GridMenuItem(); } catch (Exception exp) { lblDgErr.Text = ("GV Cancel Alert! : " + exp.Message); } } protected void GVMenuItem_RowUpdating(object sender, GridViewUpdateEventArgs e) { lblDgErr.Text = ""; String Dgid; System.Data.SqlTypes.SqlInt16 getDate; getDate = SqlInt16.Null; int row = e.RowIndex; try { Dgid = ((Label)(GVMenuItem.Rows[row].FindControl("lblDgMenuId"))).Text; TextBox txtMText = (TextBox)GVMenuItem.Rows[row].FindControl("txtDgMenuText"); TextBox txtMDesc = (TextBox)GVMenuItem.Rows[row].FindControl("txtDgDesc"); DropDownList ddl = (DropDownList)GVMenuItem.Rows[row].FindControl("DgDDParent"); TextBox txtMUrl = (TextBox)GVMenuItem.Rows[row].FindControl("txtDgNUrl"); TextBox txtMTip = (TextBox)GVMenuItem.Rows[row].FindControl("txtDgTTip"); if (txtMText.Text == "") { lblDgErr.Text = "Plese Enter Menu Text"; txtMText.Focus(); } else { objDash.Check_UniqueGv("MenuId", "Text", "Menu", txtMText.Text, Dgid, ref lblDgErr); if (lblDgErr.Text == "Yes") { lblDgErr.Text = ""; SqlCommand cmd = new SqlCommand("SpUpdateSubMenu", con); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add(new SqlParameter("@Id", Dgid)); cmd.Parameters.Add(new SqlParameter("@Text", txtMText.Text)); cmd.Parameters.Add(new SqlParameter("@Desc", txtMDesc.Text)); if (ddl.SelectedItem.Text == "Main Menu" || ddl.SelectedItem.Text == "") { cmd.Parameters.Add(new SqlParameter("@ParId", getDate)); } else { cmd.Parameters.Add(new SqlParameter("@ParId", ddl.SelectedItem.Value)); } cmd.Parameters.Add(new SqlParameter("@NUrl", txtMUrl.Text)); cmd.Parameters.Add(new SqlParameter("@TTip", txtMTip.Text)); cmd.Parameters.Add(new SqlParameter("@EntryBy", Session["AdminAuth"])); cmd.Parameters.Add(new SqlParameter("@EntryDt", DateTime.Today)); if (con.State == ConnectionState.Closed) { con.Open(); } MyTran = con.BeginTransaction(); cmd.Transaction = MyTran; cmd.ExecuteNonQuery(); MyTran.Commit(); if (ddl.SelectedItem.Text == "Main Menu" || ddl.SelectedItem.Text == "") { SqlCommand cmdUpDtCol = new SqlCommand("Update tbl_SetPermission set [" + Dgid + "]='Yes'", con); cmdUpDtCol.ExecuteNonQuery(); } lblDgErr.Text = "Data Updated Successfully"; GVMenuItem.EditIndex = -1; } } } catch (Exception exp) { lblDgErr.Text = "GV Update Alert : " + exp.Message; } finally { con.Close(); Fill_GridMenuItem(); Fill_DDParent(); } } protected void DDView1_SelectedIndexChanged(object sender, EventArgs e) { if (DDView1.SelectedItem.Value == "0") { lblFilter.Text = "List of All Menu"; DDView2.Visible = false; btnGo.Visible = false; lbl_DgOrder.Text = ""; Fill_GridMenuItem(); } else if (DDView1.SelectedItem.Value == "1") { lblFilter.Text = "List of All Main Menu"; DDView2.Visible = false; btnGo.Visible = false; lbl_DgOrder.Text = "Where ParentId is NULL"; Fill_GridMenuItem(); } else if (DDView1.SelectedItem.Value == "2") { objFillDD.Get_DDListWhr(ref DDView2, "MenuId", "Text", "Menu", "Where ParentId is NULL", ref lblErr); DDView2.Visible = true; btnGo.Visible = true; } } protected void btnGo_Click(object sender, ImageClickEventArgs e) { lbl_DgOrder.Text = "Where ParentId =" + DDView2.SelectedItem.Value + ""; lblFilter.Text = "List of All Sub Menu Under " + DDView2.SelectedItem.Text; Fill_GridMenuItem(); } protected void DDOrder2_SelectedIndexChanged(object sender, EventArgs e) { Fill_GridMenuItem(); } }