public async Task <ActionResult> AddPermission(SecurityAdminAction securityAdminAction) { if (securityAdminAction != null && securityAdminAction.PresidentId != null && securityAdminAction.UserId != null) { var user = await _UserManager.FindByIdAsync(securityAdminAction.UserId); var claim = new Claim( securityAdminAction.Permission, securityAdminAction.PresidentId); var claims = await _UserManager.GetClaimsAsync(user); /* * var removeThisClaim = ( * from temp in claims * where temp.Type == SecurityConstants.Claim_LevelOfAwesomeness * select temp * ).FirstOrDefault(); * * if (removeThisClaim != null) * { * await _UserManager.RemoveClaimAsync(user, removeThisClaim); * } */ await _UserManager.AddClaimAsync(user, claim); } return(RedirectToAction("Index")); }
public ActionResult RemoveSubscription( SecurityAdminAction securityAdminAction) { if (securityAdminAction != null && securityAdminAction.UserId != null) { _SubscriptionService.RemoveSubscription( GetSelectedUsername(securityAdminAction)); } return(RedirectToAction("Index")); }
public async Task <ActionResult> RemoveFromGroup(SecurityAdminAction securityAdminAction) { if (securityAdminAction != null && securityAdminAction.RoleId != null && securityAdminAction.UserId != null) { var role = await _RoleManager.FindByIdAsync(securityAdminAction.RoleId); var user = await _UserManager.FindByIdAsync(securityAdminAction.UserId); await _UserManager.RemoveFromRoleAsync(user, role.Name); } return(RedirectToAction("Index")); }
private string GetSelectedUsername(SecurityAdminAction securityAdminAction) { var allUsers = _UserManager.Users.ToList(); var username = (from temp in allUsers where temp.Id == securityAdminAction.UserId select temp).FirstOrDefault(); if (username != null) { return(username.UserName); } else { return(securityAdminAction.UserId); } }
public IActionResult Index() { var model = new SecurityAdminAction(); model.Presidents = AdaptToSelectListItems(_SponsorService.GetSponsors()); model.Roles = AdaptToSelectListItems(_RoleManager.Roles.ToList()); model.Users = AdaptToSelectListItems(_UserManager.Users.OrderBy(x => x.UserName).ToList()); model.Permissions = new List <SelectListItem>(); model.Permissions.Add(new SelectListItem() { Value = SecurityConstants.PermissionName_Edit, Text = SecurityConstants.PermissionName_Edit }); model.Permissions.Add(new SelectListItem() { Value = SecurityConstants.PermissionName_View, Text = SecurityConstants.PermissionName_View }); model.Claims = GetAllClaims(); model.SubscriptionTypes = new List <SelectListItem>(); model.SubscriptionTypes.Add(new SelectListItem() { Value = SecurityConstants.SubscriptionType_Basic, Text = SecurityConstants.SubscriptionType_Basic }); model.SubscriptionTypes.Add(new SelectListItem() { Value = SecurityConstants.SubscriptionType_Ultimate, Text = SecurityConstants.SubscriptionType_Ultimate }); return(View(model)); }
public async Task <ActionResult> RemovePermission(SecurityAdminAction securityAdminAction) { if (securityAdminAction != null && securityAdminAction.PresidentId != null && securityAdminAction.UserId != null) { var user = await _UserManager.FindByIdAsync(securityAdminAction.UserId); var claims = await _UserManager.GetClaimsAsync(user); var removeThisClaim = ( from temp in claims where temp.Type == securityAdminAction.Permission select temp ).FirstOrDefault(); if (removeThisClaim != null) { await _UserManager.RemoveClaimAsync(user, removeThisClaim); } } return(RedirectToAction("Index")); }