public IActionResult Brand(BrandViewModel model)
        {
            string failureMessage = null;
            string successMessage = null;
            var    redirectUrl    = "/ManageSite/Brand";

            if (ModelState.IsValid)
            {
                var result = ManageSiteHelper.AddBrand(model, _context);

                if (result == UpdateResult.Error)
                {
                    failureMessage = "Brand couldn't be updated.";
                }
                else if (result == UpdateResult.Success)
                {
                    successMessage = "Brand updated.";
                }
                else if (result == UpdateResult.Duplicate)
                {
                    failureMessage = "Brand already exists.";
                }
            }

            if (!string.IsNullOrWhiteSpace(failureMessage))
            {
                redirectUrl += string.Format("?failureMessage={0}", failureMessage);
            }
            if (!string.IsNullOrWhiteSpace(successMessage))
            {
                redirectUrl += string.Format("?successMessage={0}", successMessage);
            }

            return(ControllerHelper.RedirectToLocal(this, redirectUrl));
        }
Example #2
0
        public IActionResult UpdateSize([FromBody] SizeViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var result = ManageSiteHelper.AddSize(model, _context);

                    if (result == UpdateResult.Error)
                    {
                        throw new Exception("Size couldn't be updated.");
                    }
                    else if (result == UpdateResult.Duplicate)
                    {
                        throw new Exception("Size already exists.");
                    }

                    return(ControllerHelper.ReturnResult(UpdateResult.Success));
                }
                catch (Exception ex)
                {
                    StatusMessage = "An Error occured; " + ex.Message;
                }
            }

            model.StatusMessage = StatusMessage;

            return(ControllerHelper.ReturnResult(UpdateResult.Error, StatusMessage));
        }
        public IActionResult EditDiscount(DiscountViewModel model)
        {
            string failureMessage = null;
            string statusMessage  = null;
            string successMessage = null;
            var    redirectUrl    = "/ManageSite/Discount";
            var    isModelValid   = true;

            if ((model.Value == 0 && model.Percentage == 0) ||
                (model.StartDate != null && model.EndDate == null) ||
                (model.StartDate == null && model.EndDate != null) ||
                (string.IsNullOrWhiteSpace(model.Code))
                )
            {
                isModelValid   = false;
                failureMessage = "Discount Code couldn't be updated.  Please check the fields and try again.";
            }

            List <Discount> discounts = new List <Discount>();

            discounts = _context.Discounts.Where(x => x.Code == model.Code).ToList();

            if (discounts.Count > 0 && model.Id == 0)
            {
                isModelValid   = false;
                failureMessage = "Discount Code couldn't be updated.  Code already exists.";
            }

            if (model.HasMaxUse && model.MaxUsage == 0)
            {
                isModelValid   = false;
                failureMessage = "Max usage of discount code cannot be 0.";
            }

            if (model.HasMinValue && model.MinSpend == 0)
            {
                isModelValid   = false;
                failureMessage = "Minimun spend of discount code cannot be 0.";
            }

            if (!model.IsLive)
            {
                statusMessage = "Discount Code is not live so cannot be used.";
            }

            if (isModelValid)
            {
                var result = ManageSiteHelper.AddDiscount(model, _context);


                if (result == UpdateResult.Error)
                {
                    failureMessage = "Discount Code couldn't be updated.";
                }
                else if (result == UpdateResult.Success)
                {
                    successMessage = "Discount Code updated.";
                }
                else if (result == UpdateResult.Duplicate)
                {
                    failureMessage = "Discount Code already exists.";
                }
            }
            else
            {
                model.FailureMessage = failureMessage;
                model.StatusMessage  = statusMessage;
                model.SuccessMessage = successMessage;
                return(View(model));
            }

            if (!string.IsNullOrWhiteSpace(failureMessage))
            {
                redirectUrl += string.Format("?failureMessage={0}&", failureMessage);
            }
            if (!string.IsNullOrWhiteSpace(statusMessage))
            {
                redirectUrl += string.Format("?statusMessage={0}&", statusMessage);
            }
            if (!string.IsNullOrWhiteSpace(successMessage))
            {
                redirectUrl += string.Format("?successMessage={0}&", successMessage);
            }

            return(ControllerHelper.RedirectToLocal(this, redirectUrl));
        }