@namespace Oqtane.Modules.Admin.Roles @inherits ModuleBase @inject IRoleService RoleService @inject IStringLocalizer Localizer @inject IStringLocalizer SharedLocalizer @if (_roles == null) {

@SharedLocalizer["Loading"]

} else {
      @SharedLocalizer["Name"]
@context.Name
} @code { private List _roles; public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.View; protected override async Task OnParametersSetAsync() { await GetRoles(); } private async Task DeleteRole(Role role) { try { await RoleService.DeleteRoleAsync(role.RoleId); await logger.LogInformation("Role Deleted {Role}", role); await GetRoles(); StateHasChanged(); } catch (Exception ex) { await logger.LogError(ex, "Error Deleting Role {Role} {Error}", role, ex.Message); AddModuleMessage(Localizer["Error.DeleteRole"], MessageType.Error); } } private async Task GetRoles() { if (UserSecurity.IsAuthorized(PageState.User, RoleNames.Host)) { _roles = await RoleService.GetRolesAsync(PageState.Site.SiteId, true); _roles.RemoveAll(item => item.Name == RoleNames.Everyone || item.Name == RoleNames.Unauthenticated); } else { _roles = await RoleService.GetRolesAsync(PageState.Site.SiteId); } } }