@using LANCommander.Server.Data @inherits LayoutComponentBase @layout BasicLayout @inject UserManager UserManager @inject RoleManager RoleManager @inject IUserStore UserStore @inject NavigationManager NavigationManager
@foreach (var step in Enum.GetValues(typeof(FirstTimeSetupStep))) { } @Body
@code { private int CurrentStep = (int)FirstTimeSetupStep.Database; protected override async Task OnInitializedAsync() { if (DatabaseContext.Provider != Data.Enums.DatabaseProvider.Unknown) { var role = await RoleManager.FindByNameAsync("Administrator"); if (role == null) await RoleManager.CreateAsync(new Role { Name = "Administrator" }); var administrators = await UserManager.GetUsersInRoleAsync("Administrator"); if (administrators.Count > 0) NavigationManager.NavigateTo("/"); } } internal async Task ChangeCurrentStep(FirstTimeSetupStep step) { CurrentStep = (int)step; await InvokeAsync(StateHasChanged); } }