public ActionResult Create(ProductFormViewModel viewModel) { if (!ModelState.IsValid) { viewModel.Categories = _unitOfWork.Categories.GetLastChildCategories(); return(View("ProductForm", viewModel)); } var product = Mapper.Map <ProductFormViewModel, Product>(viewModel); var tags = _unitOfWork.Tags.GetTags().Where(t => viewModel.TagIds.Contains(t.Id)).ToList(); foreach (var tag in tags) { product.Tags.Add(tag); } product.ThumbnailPath = viewModel.GetThumbnailPath(); product.LastUpdate = product.DateOfIssue = DateTime.Now; _unitOfWork.Products.Add(product); _unitOfWork.Complete(); viewModel.Id = product.Id; viewModel.SaveThumbnailOnServer(); product.ThumbnailPath = viewModel.GetThumbnailPath(); _unitOfWork.Complete(); return(RedirectToAction("Dashboard", "Admin")); }
public ActionResult Edit(ProductFormViewModel viewModel) { if (!ModelState.IsValid) { viewModel.Categories = _unitOfWork.Categories.GetLastChildCategories(); return(View("ProductForm", viewModel)); } var productFromDb = _unitOfWork.Products.GetProduct(viewModel.Id); productFromDb.CategoryId = viewModel.CategoryId; productFromDb.Description = viewModel.Description; productFromDb.MarketUrl = viewModel.MarketUrl; productFromDb.Name = viewModel.Name; productFromDb.Price = viewModel.Price; productFromDb.LastUpdate = DateTime.Now; viewModel.SaveThumbnailOnServer(); _unitOfWork.Complete(); return(RedirectToAction("Index", "Home")); }