public ActionResult CartSummary() { var shoppingCart = ShoppingCartFinder.FindShoppingCart(); ViewData["CartCount"] = shoppingCart.Lines.Count; return(PartialView("CartSummary")); }
// // GET: /Store/AddToCart/5 public ActionResult AddToCart(string id) { var shoppingCart = ShoppingCartFinder.FindShoppingCart(); shoppingCart.AddToCart(session.Load <Album>(id)); session.SaveChanges(); // Go back to the main store page for more shopping return(RedirectToAction("Index")); }
// // GET: /ShoppingCart/ public ActionResult Index() { var cart = ShoppingCartFinder.FindShoppingCart(); // Set up our ViewModel var viewModel = new ShoppingCartViewModel { CartItems = cart.Lines, CartTotal = cart.Lines.Count }; // Return the view return(View(viewModel)); }
private void MigrateShoppingCart(string UserName) { // Associate shopping cart items with logged-in user var cart = ShoppingCartFinder.FindShoppingCart(); var newShoppingCartId = ShoppingCartFinder.SetShoppingCartId(UserName); if (cart.Id == newShoppingCartId) { return;// already migrated } var newCart = cart.MigrateCart(newShoppingCartId); session.Delete(cart); session.Store(newCart); session.SaveChanges(); }
public ActionResult AddressAndPayment(FormCollection values) { var order = new Order(); TryUpdateModel(order); try { if (string.Equals(values["PromoCode"], PromoCode, StringComparison.OrdinalIgnoreCase) == false) { return(View(order)); } order.Username = User.Identity.Name; order.OrderDate = DateTime.Now; //Process the order var cart = ShoppingCartFinder.FindShoppingCart(); cart.CreateOrder(order); var soldAlbums = session.Load <Album>(order.Lines.Select(x => x.Album.Id).ToArray()); foreach (var soldAlbum in soldAlbums) { soldAlbum.CountSold++; } session.Store(order); session.SaveChanges(); return(RedirectToAction("Complete", new { id = order.Id })); } catch { //Invalid - redisplay with errors return(View(order)); } }
public ActionResult RemoveFromCart(string id) { // Remove the item from the cart var shoppingCart = ShoppingCartFinder.FindShoppingCart(); string title = shoppingCart.RemoveFromCart(id); session.SaveChanges(); string message = title == null ? "The album was not found in your shopping cart." : Server.HtmlEncode(title) + " has been removed from your shopping cart."; // Display the confirmation message return(Json(new ShoppingCartRemoveViewModel { Message = message, CartTotal = shoppingCart.Total, CartCount = shoppingCart.Lines.Count, DeleteId = id.Split('/').Last() })); }