public virtual ActionResult Breadcrumb(string storeNumber) { if (string.IsNullOrEmpty(storeNumber)) { return(View()); } var breadcrumbViewModel = BreadcrumbViewService.CreateBreadcrumbViewModel(new GetBreadcrumbParam { CurrentPageId = SitemapNavigator.CurrentPageId.ToString(), CultureInfo = ComposerContext.CultureInfo }); var model = StoreViewService.GetStoreViewModelAsync(new GetStoreByNumberParam { Scope = ComposerContext.Scope, CultureInfo = ComposerContext.CultureInfo, StoreNumber = storeNumber, BaseUrl = RequestUtils.GetBaseUrl(Request).ToString(), }).Result; if (model == null) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound)); } if (!string.IsNullOrEmpty(model.LocalizedDisplayName)) { breadcrumbViewModel.ActivePageName = model.LocalizedDisplayName; } return(View(breadcrumbViewModel)); }
public virtual ActionResult LanguageSwitch(string storeNumber) { var baseUrl = RequestUtils.GetBaseUrl(Request).ToString(); if (storeNumber == null) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound)); } var storeViewModel = StoreViewService.GetStoreViewModelAsync(new GetStoreByNumberParam { BaseUrl = baseUrl, CultureInfo = ComposerContext.CultureInfo, Scope = ComposerContext.Scope, IncludeAddresses = false, IncludeSchedules = false, StoreNumber = storeNumber }).Result; if (storeViewModel == null) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound)); } var languageSwitchViewModel = LanguageSwitchService.GetViewModel(cultureInfo => BuildUrl( baseUrl, cultureInfo, storeViewModel.LocalizedDisplayNames[cultureInfo.Name], storeViewModel.Number), ComposerContext.CultureInfo); return(View("LanguageSwitch", languageSwitchViewModel)); }
public virtual async Task <IHttpActionResult> GetStore(StoreRequest request) { var baseUrl = RequestUtils.GetBaseUrl(Request).ToString(); var vm = await StoreViewService.GetStoreViewModelAsync(new GetStoreByNumberParam { BaseUrl = baseUrl, CultureInfo = ComposerContext.CultureInfo, Scope = ComposerContext.Scope, StoreNumber = request.StoreNumber }); return(Ok(vm)); }
protected virtual async Task <StoreViewModel> GetStoreViewModelAsync(string storeNumber) { if (string.IsNullOrWhiteSpace(storeNumber)) { return(ContextHelper.HandlePreviewMode(() => GetStoreViewModelAsync(PreviewModeService.Value.GetStoreNumber()).Result)); } var vm = await StoreViewService.GetStoreViewModelAsync(new GetStoreByNumberParam { StoreNumber = storeNumber, CultureInfo = ComposerContext.CultureInfo, Scope = ComposerContext.Scope, BaseUrl = RequestUtils.GetBaseUrl(Request).ToString() }).ConfigureAwait(false); return(vm); }
public virtual ActionResult StoreDetails(string storeNumber, int zoom = 14) { if (string.IsNullOrEmpty(storeNumber)) { return(View()); } var baseUrl = RequestUtils.GetBaseUrl(Request).ToString(); var model = StoreViewService.GetStoreViewModelAsync(new GetStoreByNumberParam { Scope = ComposerContext.Scope, CultureInfo = ComposerContext.CultureInfo, StoreNumber = storeNumber, BaseUrl = baseUrl }).Result; if (model == null) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound)); } model.Context.Add("zoom", zoom); return(View("StoreDetails", model)); }