public ActionResult Edit(ProductItem item)
 {
     try
     {
         Service.Product.Save(item);
         return RedirectToRouteNotify("EditProduct", new { id = item.Id });
     }
     catch (ValidationException ex)
     {
         AddModelErrors(ex);
         Service.Product.AppendData(item);
         return View("~/Views/Admin/Products/Edit.cshtml", item);
     }
 }
Example #2
0
        public ProductItem Get(long id)
        {
            var productItem = new ProductItem();

            if (id != 0)
            {
                productItem = Db.GetProductItem(id);

                var firstImage = productItem.ProductImages.FirstOrDefault();
                if (firstImage != null && firstImage.Position > 0)
                {
                    firstImage.IsChecked = true;
                }
            }

            AppendData(productItem);

            return productItem;
        }
Example #3
0
        public void Save(ProductItem item)
        {
            var errors = item.GetValidationErrors();

            errors.ThrowIfHasErrors();

            var product = new tblProduct();
            if (item.Id != 0)
            {
                product = Db.Set<tblProduct>().Single(x => x.Id == item.Id);
            }
            else
            {
                product = Db.Set<tblProduct>().Create();
                Db.Set<tblProduct>().Add(product);
            }

            product.Descripton = item.Descripton;
            product.Name = item.Name;
            product.YandexUrl = item.YandexUrl;
            product.Specs = item.Specs;
            product.CategoryId = item.CategoryId;

            Db.SaveChanges();

            item.Id = product.Id;
        }
Example #4
0
 public void AppendData(ProductItem item)
 {
     item.AvaliableCategories = Db.AllCategoriesFlatten();
 }