protected void Page_Init(object sender, EventArgs e) { if (Page.RouteData.Values["hotelName"] != null && Page.RouteData.Values["productName"] != null) { _products = _productRepository.GetProductsByName((string)Page.RouteData.Values["hotelName"], (string)Page.RouteData.Values["productName"], (string)Session["UserSession"]); _hotel = _productRepository.HotelList.First(h => h.HotelId == _products.ProductId); } if (Session[Constant.UpgradeKey] != null) { int bookingsTempId = int.Parse(Session[Constant.UpgradeKey].ToString()); _bookingTemp = _productRepository.GetBookingsTempById(bookingsTempId); } if (!IsPostBack) { List <Products> availableUpgradeProducts = _productRepository.GetAvailbleUpgradeProducts(_products.ProductId, _bookingTemp.Item1.CheckinDate); const String mixpanelscript = "MixpanelScript"; string strScript = string.Empty; availableUpgradeProducts.ForEach(item => { string strUrl = string.Format("/{0}/{1}/{2}/{3}-", Page.RouteData.Values["market"], Page.RouteData.Values["city"], Page.RouteData.Values["hotelName"], item.ProductName.Trim().Replace(" ", "-").ToLower()); switch (item.ProductType) { case (int)Enums.ProductType.SpaPass: strUrl += "spa-pass"; break; case (int)Enums.ProductType.Daybed: strUrl += "daybeds"; break; default: strUrl += "cabanas"; break; } strScript += Helper.GetMixpanelScriptRedirect(item.ProductId, strUrl); }); if (!string.IsNullOrEmpty(strScript)) { ScriptManager.RegisterClientScriptBlock(HotelList, typeof(string), mixpanelscript, strScript, true); } LvHotelRepeater.DataSource = availableUpgradeProducts; LvHotelRepeater.DataBind(); } if (PublicCustomerInfos != null) { _customerCredits = _customerCreditRepository.GetById(PublicCustomerInfos.CustomerId); } }
private void BindHotelSearch(out List <Products> listProducts) { SearchResultObject = GetSearchResult(); listProducts = SearchResultObject.Result.Items; const string mixpanelscript = "MixpanelScript"; string strScript = string.Empty; listProducts.ForEach(item => { if (item.ProductId == 0) { strScript += Helper.GetMixpanelScriptRedirect(item.ProductId, Constant.GoldPassLink + "?source=search"); } else { strScript += Helper.GetMixpanelScriptRedirect(item.ProductId, string.Format("/{0}/{1}/{2}/{3}/{4}", Page.RouteData.Values["market"] ?? "socal", Helper.ReplaceSpecialCharacter(item.Hotels.City), Helper.ReplaceSpecialCharacter(item.Hotels.HotelName), Helper.ReplaceSpecialCharacter(item.ProductName), item.ProductId)); } }); if (!string.IsNullOrEmpty(strScript)) { ScriptManager.RegisterClientScriptBlock(HotelList, typeof(string), mixpanelscript, strScript, true); } LvHotelRepeater.DataSource = listProducts; LvHotelRepeater.DataBind(); FilterResultHidden.Value = WebUtility.HtmlEncode(string.Format("<b>{0}</b> out of {1}", listProducts.Count > 3 ? listProducts.Count - 1 : listProducts.Count, SearchResultObject.Result.TotalRecords)); // Keep Search Params in Session string json = JsonConvert.SerializeObject(SearchParamsSaved, CustomSettings.SerializerSettings()); Session["SearchParamsSaved"] = json; }