Пример #1
0
        public IActionResult Create(FunkoPop model)
        {
            //TODO: need to do user checks
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            try
            {
                model.DateAdded = DateTime.UtcNow;
                _service.Add(model);
            }
            catch (Exception e)
            {
                ShowStatusMessage(MessageTypeEnum.error, e.Message, "Duplicate Pop");

                return(View(model));
            }

            if (SessionValueExists("popWish"))
            {
                _wishService.Delete(Convert.ToInt32(GetFromSession <string>("popWishID")), _user.Id);

                RemoveFromSession("popWish");
                RemoveFromSession("popWishID");
                ShowStatusMessage(MessageTypeEnum.info, "Wish list has been updated", "Wish list");
            }
            ShowStatusMessage(MessageTypeEnum.success, "New Pop Added Successfully.", "Add Successful");

            return(RedirectToAction("Index", "Pop"));
        }
Пример #2
0
        public IActionResult Create()
        {
            var model = new FunkoPop {
                UserID = _user.Id, UserNum = _user.UserNum
            };

            ViewBag.Title = "Create";

            return(View(model));
        }
Пример #3
0
        public void Add(FunkoPop pop)
        {
            var existingPops = _repository.GetAll().Any(x => x.UserID == pop.UserID && x.Title == pop.Title && x.Series == pop.Series && x.PopLine == pop.PopLine);

            if (existingPops)
            {
                throw new ApplicationException($"An existing Pop of {pop.Title}, {pop.Series}, {pop.PopLine} already exists.");
            }

            _addEntityComponent.Execute(_repository, pop);
        }
Пример #4
0
        public IActionResult Edit(FunkoPop model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var existingFunkoPops = _service.GetAll(_user.Id);

            if (existingFunkoPops.Any(x => x.ID != model.ID && x.Title == model.Title && x.Series == model.Series && x.Number == model.Number))
            {
                ShowStatusMessage(MessageTypeEnum.error, $"A Pop of Name: {model.Title}, Series: {model.Series}, Line: {model.PopLine} already exists.", "Duplicate Pop");

                return(View(model));
            }

            //TODO: make sure user id is the same so as not to change other users data
            model.DateUpdated = DateTime.UtcNow;
            _service.Edit(model);

            ShowStatusMessage(MessageTypeEnum.success,
                              $"Pop of Name: {model.Title}, Series: {model.Series}, Line: {model.PopLine} updated.", "Update Successful");

            return(RedirectToAction("Index", "Pop"));
        }
Пример #5
0
 public void Edit(FunkoPop pop) => _editEntityComponent.Execute(_repository, pop);