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 Travel.Vendor; using System.Security.Permissions; using AssetTableAdapters; using DestinationTableAdapters; [PrincipalPermission(SecurityAction.Demand, Role = "Vendor")] [PrincipalPermission(SecurityAction.Demand, Role = "Admin")] public partial class partners_resort_Location : System.Web.UI.Page { Asset.AssetsRow asset; protected void Page_Load(object sender, EventArgs e) { // Highlight the current nav button HyperLink curBtn = Master.FindControl("LocationBtn") as HyperLink; curBtn.CssClass = "on"; if (!IsPostBack) { LoadDestinations(); LoadData(); } } private void LoadData() { asset = Session["Asset"] as Asset.AssetsRow; if (asset == null) Response.Redirect("~/Default.aspx"); AssetTitle.Text = asset.Title; //load the corresponding destination data DestinationsTableAdapter destinationAdapter = new DestinationsTableAdapter(); Destination.DestinationsRow curDestinationData = destinationAdapter.GetByDestinationId(asset.DestinationId)[0]; /* //load the corresponding subdestination data SubDestinationsTableAdapter subDestinationAdapter = new SubDestinationsTableAdapter(); Destination.SubDestinationsRow curSubDestinationData = subDestinationAdapter.GetBySubDestinationId(asset.SubDestinationId)[0]; */ //load the corresponding asset data AssetDataTableAdapter assetDataAdapter = new AssetDataTableAdapter(); Asset.AssetDataRow curAssetData = assetDataAdapter.GetByAssetIdAndPublishLevel( (int)AssetPublishLevel.Preview, asset.AssetId )[0] ; Destinations.SelectedValue = asset.DestinationId.ToString(); // if (asset["Destination"] != null && !asset["Destination"].Equals(string.Empty)) if (curDestinationData.Title != "") LoadSubDestinations(curDestinationData.DestinationId); else SubDestinations.Items.Insert(0, new ListItem("Please Select Destination First", string.Empty)); SubDestinations.SelectedValue = asset.SubDestinationId.ToString(); Address1.Text = curAssetData.Address1; Address2.Text = curAssetData.Address2; Address3.Text = curAssetData.Address3; } private void SaveData() { asset = Session["Asset"] as Asset.AssetsRow; if (asset == null) Response.Redirect("~/Default.aspx"); AssetDataTableAdapter assetDataAdapter = new AssetDataTableAdapter(); Asset.AssetDataRow curAssetData = assetDataAdapter.GetByAssetIdAndPublishLevel( (int)AssetPublishLevel.Preview, asset.AssetId )[0] ; if (Destinations.SelectedValue != "") asset.DestinationId = Int32.Parse(Destinations.SelectedValue); if (SubDestinations.SelectedValue != "") asset.SubDestinationId = Int32.Parse(SubDestinations.SelectedValue); curAssetData.Address1 = Address1.Text.Trim(); curAssetData.Address2 = Address2.Text.Trim(); curAssetData.Address3 = Address3.Text.Trim(); assetDataAdapter.Update(curAssetData); } protected void Update_Click(object sender, ImageClickEventArgs e) { SaveData(); } private void LoadDestinations() { DestinationsTableAdapter destinationAdapter = new DestinationsTableAdapter(); Destination.DestinationsDataTable allDestinations = destinationAdapter.GetAll(); Destinations.DataSource = allDestinations; Destinations.DataBind(); Destinations.Items.Insert(0,new ListItem("Select", string.Empty)); } private void LoadSubDestinations(int destinationID) { SubDestinations.Items.Clear(); //SubDestinationCollection subDestinations = SubDestination.FetchByDestinationID(destinationID); /* SubDestinationsTableAdapter subDestinationAdapter new SubDestinationsTableAdapter(); */ //use the destinations table for now as per JT. DestinationsTableAdapter destinationAdapter = new DestinationsTableAdapter(); Destination.DestinationsDataTable allDestinations = destinationAdapter.GetAll(); // if (subDestinations.Count == 0) // SubDestinations.Items.Insert(0,new ListItem("N/A", string.Empty)); // else // { // SubDestinations.DataSource = subDestinations; // SubDestinations.DataSource = subDestinationAdapter; // SubDestinations.DataBind(); // SubDestinations.Items.Insert(0,new ListItem("N/A", string.Empty)); // } SubDestinations.DataSource = allDestinations; SubDestinations.DataBind(); SubDestinations.Items.Insert(0,new ListItem("N/A", string.Empty)); } protected void Destinations_SelectedIndexChanged(object sender, EventArgs e) { if (Destinations.SelectedValue.Equals(string.Empty)) SubDestinations.Items.Clear(); else LoadSubDestinations(Int32.Parse(Destinations.SelectedValue)); } }