Пример #1
0
        public async Task <IActionResult> UpdateUsersInRole(int roleId)
        {
            ViewBag.roleId = roleId;

            var role = await _roleManager.FindByIdAsync(roleId.ToString());

            if (role == null)
            {
                return(View("StatusCodes/RoleNotFound", roleId));
            }

            var model = new List <UpdateUserRoleViewModel>();

            foreach (var user in _userManager.Users.ToList())
            {
                var userRoleViewModel = new UpdateUserRoleViewModel
                {
                    UserId   = user.Id,
                    UserName = user.UserName
                };

                if (await _userManager.IsInRoleAsync(user, role.Name))
                {
                    userRoleViewModel.IsSelected = true;
                }
                else
                {
                    userRoleViewModel.IsSelected = false;
                }

                model.Add(userRoleViewModel);
            }

            return(View(model));
        }
        public ActionResult EditUserRoles(UpdateUserRoleViewModel model)
        {
            //var userId = Request.Form[1].ToString();
            //var rolIdler = Request.Form[2].ToString().Split(',');
            var userId       = model.Id;
            var rolIdler     = model.Roles;
            var roleManager  = NewRoleManager();
            var seciliRoller = new string[rolIdler.Count];

            for (var i = 0; i < rolIdler.Count; i++)
            {
                var rid = rolIdler[i];
                seciliRoller[i] = roleManager.FindById(rid).Name;
            }

            var userManager = NewUserManager();
            var user        = userManager.FindById(userId);

            foreach (var identityUserRole in user.Roles.ToList())
            {
                userManager.RemoveFromRole(userId, roleManager.FindById(identityUserRole.RoleId).Name);
            }

            for (int i = 0; i < seciliRoller.Length; i++)
            {
                userManager.AddToRole(userId, seciliRoller[i]);
            }

            return(RedirectToAction("EditUser", new { id = userId }));
        }
Пример #3
0
        public async Task <IActionResult> EditUserRoles(UpdateUserRoleViewModel model)
        {
            //var userId = Request.Form[1].ToString();
            //var rolIdler = Request.Form[2].ToString().Split(',');

            var userId       = model.Id;
            var rolIdler     = model.Roles;
            var roleManager  = _membershipTools.RoleManager;
            var seciliRoller = new string[rolIdler.Count];

            for (var i = 0; i < rolIdler.Count; i++)
            {
                var rid = rolIdler[i];
                seciliRoller[i] = roleManager.FindByIdAsync(rid).Result.ToString();
            }

            var userManager = _membershipTools.UserManager;
            var user        = userManager.FindByIdAsync(userId).Result;
            var Roles       = _membershipTools.UserManager.GetRolesAsync(user).Result;

            foreach (var identityUserRole in Roles)
            {
                await userManager.RemoveFromRoleAsync(user, identityUserRole);
            }

            for (int i = 0; i < seciliRoller.Length; i++)
            {
                await userManager.AddToRoleAsync(user, seciliRoller[i]);
            }

            return(RedirectToAction("EditUser", new { id = userId }));
        }
        public async Task <IActionResult> UpdateUserRole(string Id)
        {
            ViewBag.roleId = Id;
            var role = await roleManager.FindByIdAsync(Id);

            if (role == null)
            {
                ViewBag.ErrorMessage = $"The role with Id { Id } could not be found";
                return(View("NotFound"));
            }
            ViewBag.roleName = role.Name;
            List <UpdateUserRoleViewModel> model = new List <UpdateUserRoleViewModel>();

            foreach (var user in userManager.Users)
            {
                UpdateUserRoleViewModel updateUserRole = new UpdateUserRoleViewModel
                {
                    UserId   = user.Id,
                    Username = user.UserName
                };
                if (await userManager.IsInRoleAsync(user, role.Name))
                {
                    updateUserRole.IsSelected = true;
                }
                else
                {
                    updateUserRole.IsSelected = false;
                }
                model.Add(updateUserRole);
            }
            return(PartialView(model));
        }
Пример #5
0
        public async Task <IActionResult> OnGetAsync(string id)
        {
            var roles = await _db.Roles.ToListAsync();

            var users = await _db.IdentityUser.FirstOrDefaultAsync(m => m.Id == id);


            if (id.Trim().Length == 0)
            {
                return(NotFound());
            }

            if (users == null)
            {
                return(NotFound());
            }

            var viewModel = new UpdateUserRoleViewModel
            {
                Id           = id,
                Email        = users.Email,
                selectedRole = _userManager.GetRolesAsync(users).Result[0],
                Roles        = roles.Select(x => new SelectListItem
                {
                    Value = x.NormalizedName,
                    Text  = x.NormalizedName
                })
            };

            IdentityUser = viewModel;
            return(Page());
        }
Пример #6
0
        public ActionResult UpdateUserRole([FromBody] UpdateUserRoleViewModel model)
        {
            if (ModelState.IsValid)
            {
                if (_userBll.UpdateUserRole(model.UserId, model.Role))
                {
                    return(Ok());
                }
            }

            return(BadRequest());
        }
Пример #7
0
        // GET: /<controller>/
        /// <summary>
        /// Indexes this instance.
        /// </summary>
        /// <returns></returns>
        public IActionResult Index()
        {
            UpdateUserRoleViewModel model = new UpdateUserRoleViewModel()
            {
                Users = _userManager.Users.Include(u => u.Roles).ToList(),
                Roles = _roleManager.Roles.ToList()
            };
            var users     = _userManager.Users.Include(u => u.Roles).ToList();
            var test      = _roleManager.Roles.ToList();
            var roles     = _context.Roles.ToList();
            var userRoles = _context.UserRoles.ToList();

            //var roles = _roleManager.Roles.ToList();
            //var roles = _userManager.GetUsersInRoleAsync(users.);

            return(View(model));
        }
Пример #8
0
        public async Task <IActionResult> UpdateUserRole(UpdateUserRoleViewModel vm)
        {
            var user = await _userManager.FindByEmailAsync(vm.UserEmail);

            if (user != null)
            {
                if (vm.Delete)
                {
                    await _userManager.RemoveFromRoleAsync(user, vm.Role);
                }
                else
                {
                    await _userManager.AddToRoleAsync(user, vm.Role);
                }

                return(RedirectToAction("Index"));
            }
            return(RedirectToAction("Index"));
        }
Пример #9
0
        public async Task <IActionResult> UpdateUserRole(UpdateUserRoleViewModel vm)
        {
            if (vm.Role != null && vm.UserEmail != null)
            {
                var user = await _userManager.FindByEmailAsync(vm.UserEmail);

                if (vm.Delete)
                {
                    await _userManager.RemoveFromRoleAsync(user, vm.Role);
                }
                else
                {
                    await _userManager.AddToRoleAsync(user, vm.Role);
                }

                return(RedirectToAction("RolesIndex"));
            }
            else
            {
                ModelState.AddModelError(string.Empty, "You need to select both Role and User");
                return(RedirectToAction("RolesIndex"));
            }
        }
Пример #10
0
        /// <summary>
        /// Updates the user role.
        /// </summary>
        /// <param name="userId">The user identifier.</param>
        /// <returns></returns>
        public ActionResult UpdateUserRole(FormCollection userId)
        {
            UpdateUserRoleViewModel model = new UpdateUserRoleViewModel()
            {
                Users = _userManager.Users.Include(u => u.Roles).ToList(),
                Roles = _roleManager.Roles.ToList()
            };

            var users = _userManager.Users.Include(u => u.Roles).ToList();
            // prepopulate roles for the view dropdown
            var list = _context.Roles.OrderBy(r => r.Name).ToList().Select(rr => new SelectListItem {
                Value = rr.Name.ToString(), Text = rr.Name
            }).ToList();

            ViewBag.Roles = list;
            var uList = _context.Users.ToList().Select(rr => new SelectListItem {
                Value = rr.UserName.ToString(), Text = rr.UserName
            }).ToList();

            ViewBag.Users = uList;

            return(View());
        }