Ejemplo n.º 1
0
        public async Task <IActionResult> UpdateStaged([FromBody] UpdateSubCategoryForm form)
        {
            var subCategory = _context.SubCategories
                              .FirstOrDefault(x => x.Id == form.Id);

            if (subCategory == null)
            {
                return(NoContent());
            }
            if (subCategory.UserId != UserId)
            {
                return(BadRequest("Can't edit this SubCategory."));
            }

            subCategory.Description = form.Description;

            await _context.SaveChangesAsync();

            return(Ok());
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> UpdateSubCategory([FromBody] UpdateSubCategoryForm form)
        {
            var subcategory = _context.SubCategories.FirstOrDefault(x => x.Id == form.Id);

            if (subcategory == null)
            {
                return(NoContent());
            }

            var newSubcategory = new SubCategory
            {
                Slug        = subcategory.Slug,
                Name        = subcategory.Name,
                Description = form.Description,
                CategoryId  = form.CategoryId,
                UserId      = UserId,
                Version     = subcategory.Version + 1
            };

            newSubcategory.Version = subcategory.Slug.Equals(newSubcategory.Slug, StringComparison.InvariantCultureIgnoreCase)
                ? subcategory.Version + 1
                : 1;

            _context.Add(newSubcategory);

            await _context.SaveChangesAsync();

            _context.Add(new ModerationItem
            {
                Current = subcategory.Id,
                Target  = newSubcategory.Id,
                UserId  = UserId,
                Type    = ModerationTypes.SubCategory
            });

            await _context.SaveChangesAsync();

            return(Ok());
        }