@page "/admin/login"
@rendermode InteractiveServer
@inject AdminAuthService AuthService
@inject NavigationManager NavManager
@code {
private string username = string.Empty;
private string password = string.Empty;
private bool isSubmitting = false;
private string errorMessage = string.Empty;
protected override async Task OnInitializedAsync()
{
await AuthService.InitializeAsync();
if (AuthService.IsAuthenticated)
{
NavManager.NavigateTo("/admin");
}
}
private async Task HandleLogin()
{
isSubmitting = true;
errorMessage = string.Empty;
bool success = await AuthService.LoginAsync(username, password);
if (success)
{
NavManager.NavigateTo("/admin");
}
else
{
errorMessage = "Invalid admin username or password.";
}
isSubmitting = false;
}
}