private void ConfigureStaySelectorControl() { StayCriteriaSelection objStayCriteriaSelection = (StayCriteriaSelection)Session[Constants.Sessions.StayCriteriaSelection]; HotelSearchRS objAreaListHotelSearchRS = (HotelSearchRS)Session["AreaListHotelSearchRS"]; HotelSearchRS objPropertyListHotelSearchRS = (HotelSearchRS)Session["PropertyListHotelSearchRS"]; HotelDescriptiveInfoRS objHotelDescriptiveInfoRS = (HotelDescriptiveInfoRS)Session["HotelDescriptiveInfoRS"]; CountryListItem[] objCountryListItems = new CountryListItem[0]; AreaListItem[] objAreaListItems = new AreaListItem[0]; HotelListItem[] objHotelListItems = new HotelListItem[0]; if (ConfigurationManager.AppSettings["EnableHotelSearch"] == "1") { objCountryListItems = this.GetCountryList(objAreaListHotelSearchRS.AreaListItems); objAreaListItems = this.GetCountryAreaList(objStayCriteriaSelection.CountryCode, objAreaListHotelSearchRS.AreaListItems); objHotelListItems = this.GetAreaHotelList(objStayCriteriaSelection.AreaID, objPropertyListHotelSearchRS.HotelListItems); } else { objHotelListItems = objPropertyListHotelSearchRS.HotelListItems; } HotelDescriptiveInfo objHotelDescriptiveInfo = new HotelDescriptiveInfo(); if (objHotelDescriptiveInfoRS.HotelDescriptiveInfos.Length != 0) { objHotelDescriptiveInfo = objHotelDescriptiveInfoRS.HotelDescriptiveInfos[0]; } ucStayCriteriaControl.Clear(); ucStayCriteriaControl.ID = "StayCriteriaSelector"; if (ConfigurationManager.AppSettings["EnableHotelSearch"] == "1") ucStayCriteriaControl.StayCriteriaSelectorType = StayCriteriaSelectorType.HotelSearch; else ucStayCriteriaControl.StayCriteriaSelectorType = StayCriteriaSelectorType.HotelList; ucStayCriteriaControl.CountryListItems = objCountryListItems; ucStayCriteriaControl.AreaListItems = objAreaListItems; ucStayCriteriaControl.HotelListItems = objHotelListItems; ucStayCriteriaControl.StayCriteriaSelectorMode = StayCriteriaSelectorMode.Change; ucStayCriteriaControl.StayCriteriaSelection = (StayCriteriaSelection)Session[Constants.Sessions.StayCriteriaSelection]; ucStayCriteriaControl.HotelDescriptiveInfo = objHotelDescriptiveInfo; return; }
private void ConfigureStaySelectorControl() { StayCriteriaSelection objStayCriteriaSelection = (StayCriteriaSelection)Session[Constants.Sessions.StayCriteriaSelection]; HotelSearchRS objAreaListHotelSearchRS = (HotelSearchRS)Session["AreaListHotelSearchRS"]; HotelSearchRS objPropertyListHotelSearchRS = (HotelSearchRS)Session["PropertyListHotelSearchRS"]; CountryListItem[] objCountryListItems = this.GetCountryList(objAreaListHotelSearchRS.AreaListItems); AreaListItem[] objAreaListItems = new AreaListItem[0]; HotelListItem[] objHotelListItems = new HotelListItem[0]; bool bCountrySelected = false; bool bAreaSelected = false; bool bHotelSelected = false; if (objStayCriteriaSelection.CountryCode != null && objStayCriteriaSelection.CountryCode != "") bCountrySelected = true; if (objStayCriteriaSelection.AreaID != null && objStayCriteriaSelection.AreaID != "") bAreaSelected = true; if (objStayCriteriaSelection.HotelCode != null && objStayCriteriaSelection.HotelCode != "") bHotelSelected = true; if (!bCountrySelected && !bAreaSelected && bHotelSelected) // can occurr from deep link page, init country and area selections { bool bHotelLocated = false; for (int i = 0; i < objPropertyListHotelSearchRS.HotelListItems.Length; i++) { if (objPropertyListHotelSearchRS.HotelListItems[i].HotelCode == objStayCriteriaSelection.HotelCode) { if (objPropertyListHotelSearchRS.HotelListItems[i].AreaIDs != null && objPropertyListHotelSearchRS.HotelListItems[i].AreaIDs.Length != 0) { string strCountryCode = this.GetCountryCode(objPropertyListHotelSearchRS.HotelListItems[i].AreaIDs[0], objAreaListHotelSearchRS.AreaListItems); if (strCountryCode != null && strCountryCode != "") { objStayCriteriaSelection.CountryCode = strCountryCode; bCountrySelected = true; objStayCriteriaSelection.AreaID = objPropertyListHotelSearchRS.HotelListItems[i].AreaIDs[0]; bAreaSelected = true; Session[Constants.Sessions.StayCriteriaSelection] = objStayCriteriaSelection; bHotelLocated = true; break; } else { break; } } else { break; } } } if (!bHotelLocated) { objStayCriteriaSelection.HotelCode = ""; Session[Constants.Sessions.StayCriteriaSelection] = objStayCriteriaSelection; bHotelSelected = false; } } if (!bCountrySelected && bAreaSelected) // can occurr from deep link page, init country selection { string strCountryCode = this.GetCountryCode(objStayCriteriaSelection.AreaID, objAreaListHotelSearchRS.AreaListItems); if (strCountryCode != null && strCountryCode != "") { objStayCriteriaSelection.CountryCode = strCountryCode; Session[Constants.Sessions.StayCriteriaSelection] = objStayCriteriaSelection; bCountrySelected = true; } } if (bCountrySelected) { objAreaListItems = this.GetCountryAreaList(objStayCriteriaSelection.CountryCode, objAreaListHotelSearchRS.AreaListItems); } if (!bCountrySelected && objCountryListItems.Length == 1) // default country selection if only 1 choice { objStayCriteriaSelection.CountryCode = objCountryListItems[0].CountryCode; bCountrySelected = true; objAreaListItems = this.GetCountryAreaList(objStayCriteriaSelection.CountryCode, objAreaListHotelSearchRS.AreaListItems); objStayCriteriaSelection.AreaID = ""; bAreaSelected = false; objStayCriteriaSelection.HotelCode = ""; bHotelSelected = false; } if (bCountrySelected && !bAreaSelected && objAreaListItems.Length == 1) // default area selection if only 1 choice { objStayCriteriaSelection.AreaID = objAreaListItems[0].AreaID; bAreaSelected = true; objStayCriteriaSelection.HotelCode = ""; bHotelSelected = false; } if (bCountrySelected && bAreaSelected) { objHotelListItems = this.GetAreaHotelList(objStayCriteriaSelection.AreaID, objPropertyListHotelSearchRS.HotelListItems); if (objHotelListItems.Length == 1) // default hotel selection if only 1 choice objStayCriteriaSelection.HotelCode = objHotelListItems[0].HotelCode; } ucStayCriteriaControl.Clear(); ucStayCriteriaControl.ID = "StayCriteriaSelector"; ucStayCriteriaControl.StayCriteriaSelectorType = StayCriteriaSelectorType.HotelSearch; ucStayCriteriaControl.StayCriteriaSelectorMode = StayCriteriaSelectorMode.New; ucStayCriteriaControl.CountryListItems = objCountryListItems; ucStayCriteriaControl.AreaListItems = objAreaListItems; ucStayCriteriaControl.HotelListItems = objHotelListItems; ucStayCriteriaControl.StayCriteriaSelection = objStayCriteriaSelection; ucStayCriteriaControl.HotelDescriptiveInfo = null; return; }
// GET: Hotel public ActionResult Index() { var model = new HotelListItem[0]; return(View(model)); }
public HotelListItem[] GetAreaHotelList(string strAreaID, HotelListItem[] objHotelListItems) { List<HotelListItem> lHotelListItems = new List<HotelListItem>(); for (int i = 0; i < objHotelListItems.Length; i++) { for (int j = 0; j < objHotelListItems[i].AreaIDs.Length; j++) { if (objHotelListItems[i].AreaIDs[j] == strAreaID) { lHotelListItems.Add(objHotelListItems[i]); break; } } } return lHotelListItems.ToArray(); }