Example #1
0
        public async Task <IActionResult> CreateOrEdit(int?id)
        {
            CreateOrEditProductViewModel model;

            if (id.HasValue)
            {
                var product = await this.productsRepository.Get(id.Value).ConfigureAwait(false);

                model = new CreateOrEditProductViewModel
                {
                    Id         = product.Id,
                    Title      = product.Title,
                    SizeColors = new SizeColor {
                        Values = product.Colors
                    },
                    Price       = product.Price,
                    Thumbnail   = product.Thumbnail,
                    Photos      = product.Photos?.Select(x => x.Uri).ToList() ?? new List <string>(),
                    Category    = product.Category,
                    Description = product.Description,
                    Unit        = product.Unit
                };
            }
            else
            {
                model = new CreateOrEditProductViewModel();
            }

            this.ViewBag.Categories = new SelectList(this.categoriesProvider.Leafs(), "Name", "Title", model.Category);

            return(this.View(model));
        }
Example #2
0
        public async Task <IActionResult> CreateOrEdit(CreateOrEditProductViewModel model)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View(model));
            }

            Product product;

            if (model.Id.HasValue)
            {
                product = await this.productsRepository.Get(model.Id.Value).ConfigureAwait(false);
            }
            else
            {
                product = new Product();
            }

            product.Title = model.Title;
            product.Price = model.Price;

            product.Colors = model.SizeColors.Values.ToList();

            product.Category    = model.Category;
            product.Description = model.Description;
            product.Unit        = model.Unit;

            await(model.Id.HasValue
                ? this.productsRepository.Update(product)
                : this.productsRepository.Create(product));

            return(this.RedirectToAction(model.Id.HasValue ? "Details" : "CreateOrEdit", new { id = product.Id }));
        }
Example #3
0
        public ActionResult Create(CreateOrEditProductViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    Product product = new Product
                    {
                        Name  = model.Name,
                        Price = model.Price
                    };

                    //_db.Products.Add(product);
                    //_db.SaveChanges();

                    //return RedirectToAction("Index");
                    return(Content(Boolean.TrueString));
                }

                //return View(category);
                //return PartialView("_Add", category);
                return(Content("Please review your form."));
            }
            catch (Exception ex)
            {
                return(Content("Error Occured!"));
            }
        }
Example #4
0
        public ActionResult NumberUI()
        {
            var categories = SelectListItemExtension.PopulateDropdownList(_db.Categories.ToList <Category>(), "CategoryId", "Name").ToList();

            var model = new CreateOrEditProductViewModel()
            {
                ddlCategories = categories
            };

            return(View(model));
        }
Example #5
0
        public ActionResult Create()
        {
            //var categories = _db.Categories.ToList<Category>().PopulateDropdownList("CategoryId", "Name").ToList();
            var categories = SelectListItemExtension.PopulateDropdownList(_db.Categories.ToList <Category>(), "CategoryId", "Name").ToList();
            //ViewBag.CategoryId = new SelectList(_db.Categories, "CategoryId", "Name");

            var model = new CreateOrEditProductViewModel()
            {
                ddlCategories = categories
            };

            //return View();
            //return PartialView("_Create");
            //return View("_Create");
            return(View("_Create", model));
        }