@namespace Oqtane.Modules.Admin.Roles @inherits ModuleBase @inject NavigationManager NavigationManager @inject IRoleService RoleService @inject IStringLocalizer Localizer
@Localizer["Cancel"] @code { private int _roleid; private string _name = string.Empty; private string _description = string.Empty; private string _isautoassigned = "False"; public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Admin; protected override async Task OnInitializedAsync() { try { _roleid = Int32.Parse(PageState.QueryString["id"]); var role = await RoleService.GetRoleAsync(_roleid); if (role != null) { _name = role.Name; _description = role.Description; _isautoassigned = role.IsAutoAssigned.ToString(); } } catch (Exception ex) { await logger.LogError(ex, "Error Loading Role {RoleId} {Error}", _roleid, ex.Message); AddModuleMessage("Error Loading Role", MessageType.Error); } } private async Task SaveRole() { var role = await RoleService.GetRoleAsync(_roleid); role.Name = _name; role.Description = _description; role.IsAutoAssigned = (_isautoassigned != null && Boolean.Parse(_isautoassigned)); role.IsSystem = false; try { role = await RoleService.UpdateRoleAsync(role); await logger.LogInformation("Role Saved {Role}", role); NavigationManager.NavigateTo(NavigateUrl()); } catch (Exception ex) { await logger.LogError(ex, "Error Saving Role {Role} {Error}", role, ex.Message); AddModuleMessage("Error Saving Role", MessageType.Error); } } }