public RedirectResult BackInStock(BackInStockNotificationRequest request) { if (ModelState.IsValid) { _backInStockNotificationService.SaveRequest(request); TempData["back-in-stock"] = true; if (request.ProductVariant != null && request.ProductVariant.Product != null) { return (Redirect(string.Format("~/{0}?variant={1}", request.ProductVariant.Product.LiveUrlSegment, request.ProductVariant.Id))); } } return(Redirect(Referrer.ToString())); }
public PartialViewResult BackInStockForm(ProductVariant productVariant) { ViewData["back-in-stock"] = _productUiService.UserNotifiedOfBackInStock(productVariant, TempData["back-in-stock"] is bool && (bool)TempData["back-in-stock"]); var backInStockrequest = new BackInStockNotificationRequest { ProductVariant = productVariant }; if (CurrentRequestData.CurrentUser != null) { backInStockrequest.Email = CurrentRequestData.CurrentUser.Email; } return(PartialView(backInStockrequest)); }
public void SaveRequest(BackInStockNotificationRequest request) { _session.Transact(session => session.Save(request)); }