Fix #2230 - add support for an Unauthenticated User global role
This commit is contained in:
		| @ -59,7 +59,7 @@ else | ||||
|         if (UserSecurity.IsAuthorized(PageState.User, RoleNames.Host)) | ||||
|         { | ||||
|             _roles = await RoleService.GetRolesAsync(PageState.Site.SiteId, true); | ||||
|             _roles = _roles.Where(item => item.Name != RoleNames.Everyone).ToList(); | ||||
| 			_roles.RemoveAll(item => item.Name == RoleNames.Everyone || item.Name == RoleNames.Unauthenticated); | ||||
|         } | ||||
|         else | ||||
|         { | ||||
|  | ||||
| @ -88,15 +88,17 @@ else | ||||
|             userid = Int32.Parse(PageState.QueryString["id"]); | ||||
|             User user = await UserService.GetUserAsync(userid, PageState.Site.SiteId); | ||||
|             name = user.DisplayName; | ||||
|  | ||||
|             if (UserSecurity.IsAuthorized(PageState.User, RoleNames.Host)) | ||||
|             { | ||||
|                 roles = await RoleService.GetRolesAsync(PageState.Site.SiteId, true); | ||||
|                 roles = roles.Where(item => item.Name != RoleNames.Everyone).ToList(); | ||||
| 				roles.RemoveAll(item => item.Name == RoleNames.Everyone || item.Name == RoleNames.Unauthenticated); | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                 roles = await RoleService.GetRolesAsync(PageState.Site.SiteId); | ||||
|             } | ||||
|  | ||||
|             await GetUserRoles(); | ||||
|         } | ||||
|         catch (Exception ex) | ||||
|  | ||||
| @ -127,11 +127,10 @@ | ||||
| 			_permissionnames = PermissionNames; | ||||
| 		} | ||||
|  | ||||
| 		_roles = await RoleService.GetRolesAsync(ModuleState.SiteId); | ||||
| 		_roles.Insert(0, new Role { Name = RoleNames.Everyone }); | ||||
| 		if (UserSecurity.IsAuthorized(PageState.User, RoleNames.Host)) | ||||
| 		_roles = await RoleService.GetRolesAsync(ModuleState.SiteId, true); | ||||
| 		if (!UserSecurity.IsAuthorized(PageState.User, RoleNames.Host)) | ||||
| 		{ | ||||
| 			_roles.Add(new Role { Name = RoleNames.Host }); | ||||
| 			_roles.RemoveAll(item => item.Name == RoleNames.Host); | ||||
| 		} | ||||
|  | ||||
| 		_permissions = new List<PermissionString>(); | ||||
| @ -254,6 +253,7 @@ | ||||
| 			permission = _permissions[i]; | ||||
| 			List<string> ids = permission.Permissions.Split(';', StringSplitOptions.RemoveEmptyEntries).ToList(); | ||||
| 			ids.Remove("!" + RoleNames.Everyone); // remove deny all users | ||||
| 			ids.Remove("!" + RoleNames.Unauthenticated); // remove deny unauthenticated | ||||
| 			ids.Remove("!" + RoleNames.Registered); // remove deny registered users | ||||
| 			if (UserSecurity.IsAuthorized(PageState.User, RoleNames.Host)) | ||||
| 			{ | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Shaun Walker
					Shaun Walker