public IActionResult Product(ProductLocationViewModel p) { if (ModelState.IsValid) { ProductLocationViewModel model = new ProductLocationViewModel(); Product prod = _repository.GetProductFromId(p.ProductId); model.ProductId = prod.ProductId; model.ProductName = prod.ProductName; model.ProductPrice = prod.ProductPrice; model.ProductImage = prod.ProductImage; model.locations = _repository.GetLocations().ToList(); var user_id = HttpContext.Request.Cookies["user_id"]; Product item = new Product(p.ProductId, p.ProductName, p.ProductPrice, p.ProductQty, p.ProductImage); _repository.AddItemToCart(item, Int32.Parse(user_id), p.LocationId); TempData["Success"] = "1"; TempData.Keep("Success"); return(View(model)); } ModelState.AddModelError("", "Error adding item to cart"); return(View(p)); }
/// <summary> /// Will show user the product page to add to cart /// </summary> /// <param name="id"></param> /// <returns>Product page</returns> //GET Product public IActionResult Product(int id) { ProductLocationViewModel model = new ProductLocationViewModel(); Product p = _repository.GetProductFromId(id); model.locations = _repository.GetLocations().ToList(); model.ProductId = p.ProductId; model.ProductName = p.ProductName; model.ProductPrice = p.ProductPrice; model.ProductImage = p.ProductImage; TempData["Success"] = "0"; TempData.Keep("Success"); return(View(model)); }
public ActionResult EditFromProductInGame(ProductLocationViewModel plvm) { StringBuilder sb = new StringBuilder(); if (ModelState.IsValid) { db.Entry(plvm.ProductLocation).State = EntityState.Modified; foreach (var s in plvm.ProductLocation.SerialNumbers) { SerialNumberValidator validator = new SerialNumberValidator(); FluentValidation.Results.ValidationResult results = validator.Validate(s); IList <ValidationFailure> failures = results.Errors; foreach (var e in results.Errors) { ModelState.AddModelError(e.PropertyName + "Error", e.ErrorMessage); sb.AppendLine(e.ErrorMessage); } db.Entry(s).State = EntityState.Modified; } foreach (var v in plvm.ProductLocation.Vouchers) { db.Entry(v).State = EntityState.Modified; } if (ModelState.IsValid) { db.SaveChanges(); return(RedirectToAction("Edit", "ProductInGames", new { id = plvm.ProductLocation.ProductInGameID })); } else { ViewBag.ProductInGameID = plvm.ProductLocation.ProductInGameID; ViewBag.ErrorMessage = sb.ToString(); plvm.ProductLocation.ProductInGame = db.ProductInGames.Find(plvm.ProductLocation.ProductInGameID); return(View(plvm)); } } ViewBag.ErrorMessage = sb.ToString(); ViewBag.ProductInGameID = plvm.ProductLocation.ProductInGameID; plvm.ProductLocation.ProductInGame = db.ProductInGames.Find(plvm.ProductLocation.ProductInGameID); return(View(plvm)); }
// GET: ProductLocations/Edit/5 public ActionResult EditFromProductInGame(int?id, int ProductInGameID) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ProductLocation productLocation = db.ProductLocations.Include(x => x.SerialNumbers).Include(x => x.Vouchers).Where(x => x.ProductLocationID == id).First(); if (productLocation == null) { return(HttpNotFound()); } ProductLocationViewModel plvm = new ProductLocationViewModel(); plvm.ProductLocation = productLocation; plvm.SerialNumbers = productLocation.SerialNumbers; plvm.Vouchers = productLocation.Vouchers; ViewBag.ProductInGameID = ProductInGameID; return(View(plvm)); }