Esempio n. 1
0
        public async Task <ActionResult> AddClaimAsync(string userid, AddUserClaimModel model)
        {
            var user = await _userManager.FindByIdAsync(userid);

            if (user == null)
            {
                return(NotFound("Không tìm thấy user"));
            }
            ViewBag.user = user;
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var claims = _context.UserClaims.Where(c => c.UserId == user.Id);

            if (claims.Any(c => c.ClaimType == model.ClaimType && c.ClaimValue == model.ClaimValue))
            {
                ModelState.AddModelError(string.Empty, "Đặc tính này đã có");
                return(View(model));
            }

            await _userManager.AddClaimAsync(user, new Claim(model.ClaimType, model.ClaimValue));

            StatusMessage = "Đã thêm đặc tính cho user";

            return(RedirectToAction("AddRole", new { id = user.Id }));
        }
Esempio n. 2
0
        public async Task <IActionResult> EditClaim(int claimid)
        {
            var userclaim = _context.UserClaims.Where(c => c.Id == claimid).FirstOrDefault();
            var user      = await _userManager.FindByIdAsync(userclaim.UserId);

            if (user == null)
            {
                return(NotFound("Không tìm thấy user"));
            }

            var model = new AddUserClaimModel()
            {
                ClaimType  = userclaim.ClaimType,
                ClaimValue = userclaim.ClaimValue
            };

            ViewBag.user      = user;
            ViewBag.userclaim = userclaim;
            return(View("AddClaim", model));
        }
Esempio n. 3
0
        public async Task <IActionResult> EditClaim(int claimid, AddUserClaimModel model)
        {
            var userclaim = _context.UserClaims.Where(c => c.Id == claimid).FirstOrDefault();
            var user      = await _userManager.FindByIdAsync(userclaim.UserId);

            if (user == null)
            {
                return(NotFound("Không tìm thấy user"));
            }

            if (!ModelState.IsValid)
            {
                return(View("AddClaim", model));
            }

            if (_context.UserClaims.Any(c => c.UserId == user.Id &&
                                        c.ClaimType == model.ClaimType &&
                                        c.ClaimValue == model.ClaimValue &&
                                        c.Id != userclaim.Id))
            {
                ModelState.AddModelError("Claim này đã có");
                return(View("AddClaim", model));
            }


            userclaim.ClaimType  = model.ClaimType;
            userclaim.ClaimValue = model.ClaimValue;

            await _context.SaveChangesAsync();

            StatusMessage = "Bạn vừa cập nhật claim";


            ViewBag.user      = user;
            ViewBag.userclaim = userclaim;
            return(RedirectToAction("AddRole", new { id = user.Id }));
        }