using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Text; using System.Collections.Generic; public partial class Admin_Controls_Items : WebBlockUserControl { public int SelectorID { get { return (ViewState["SelectorID"] == null ? 0 : (int)ViewState["SelectorID"]); } set { ViewState["SelectorID"] = value; EditItem1.SelectorID = value; } } protected override void OnInit(EventArgs e) { EditItem1.ItemAdded += new EventHandler(EditItem1_ItemAdded); EditItem1.ItemUpdated += new EventHandler(EditItem1_ItemUpdated); EditItem1.Cancelled += new EventHandler(EditItem1_Cancelled); base.OnInit(e); } #region Member Items Functions private void BindSelectorItems() { DataTable dt = Database.Items_GetBySelectorID(SelectorID); gvItems.DataSource = dt; gvItems.DataBind(); } protected void gvItems_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { DataRowView drv = (DataRowView)e.Row.DataItem; Literal litPrice = (Literal)e.Row.Cells[3].FindControl("litPrice"); // set the price if (drv["VolumePricingTableID"] != DBNull.Value) litPrice.Text = "Volume"; else litPrice.Text = ((decimal)drv["Price"]).ToString("c"); } } #endregion protected void btnRemoveSelected_Click(object sender, EventArgs e) { foreach (GridViewRow gvr in gvItems.Rows) { if (gvr.RowType == DataControlRowType.DataRow) { CheckBox cb = (CheckBox)gvr.Cells[0].Controls[1]; if (cb.Checked) { int ItemID = (int)gvItems.DataKeys[gvr.RowIndex].Value; Database.Items_Delete(ItemID); } } } BindSelectorItems(); } #region Page-Wide functions public void BindData() { if (mvContent.ActiveViewIndex == 0) BindSelectorItems(); else if (mvContent.ActiveViewIndex == 1) { // bind page two EditItem1.ItemID = 0; EditItem1.BindData(); } else if (mvContent.ActiveViewIndex == 2) { BindReuse(); } } private void BindReuse() { DataTable dt = Database.Categories_GetAll(); ddlCategory.DataSource = dt; ddlCategory.DataBind(); ddlCategory.Items.Insert(0, new ListItem("Select", "")); } protected void Menu1_MenuItemClick(object sender, MenuEventArgs e) { mvContent.ActiveViewIndex = Int32.Parse(e.Item.Value); BindData(); } public void ShowAddItems() { Menu1.Items[1].Selected = true; mvContent.ActiveViewIndex = 1; EditItem1.BindData(); } public void ShowEditItem(int ItemID) { Menu1.Items[1].Selected = true; mvContent.ActiveViewIndex = 1; EditItem1.ItemID = ItemID; EditItem1.BindData(); } #endregion protected void EditItem1_Cancelled(object sender, EventArgs e) { Menu1.Items[0].Selected = true; mvContent.ActiveViewIndex = 0; } protected void EditItem1_ItemUpdated(object sender, EventArgs e) { BindSelectorItems(); Menu1.Items[0].Selected = true; mvContent.ActiveViewIndex = 0; } protected void EditItem1_ItemAdded(object sender, EventArgs e) { BindSelectorItems(); Menu1.Items[0].Selected = true; mvContent.ActiveViewIndex = 0; } protected void btnCopy_Click(object sender, EventArgs e) { int ItemID = Int32.Parse(ddlItem.SelectedValue); DataRow dr = Database.Items_Get(ItemID); ShowAddItems(); EditItem1.PrePopulate(dr); } protected void ddlCategory_SelectedIndexChanged(object sender, EventArgs e) { if (ddlCategory.SelectedValue != "") { DataTable dt = Database.Selectors_GetByCategoryID(Int32.Parse(ddlCategory.SelectedValue)); ddlSelector.DataSource = dt; ddlSelector.DataBind(); ddlSelector.Items.Insert(0, new ListItem("Select", "")); ddlSelector.Enabled = true; } } protected void ddlSelector_SelectedIndexChanged(object sender, EventArgs e) { if (ddlSelector.SelectedValue != "") { DataTable dt = Database.Items_GetBySelectorID(Int32.Parse(ddlSelector.SelectedValue)); ddlItem.DataSource = dt; ddlItem.DataBind(); ddlItem.Items.Insert(0, new ListItem("Select", "")); ddlItem.Enabled = true; } } }