Files
EonaCat.LogStack/EonaCat.LogStack.Status/Pages/Admin/Login.cshtml.cs
2026-04-06 08:15:54 +02:00

31 lines
979 B
C#

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using EonaCat.LogStack.Status.Services;
namespace EonaCat.LogStack.Status.Pages.Admin;
// This file is part of the EonaCat project(s) which is released under the Apache License.
// See the LICENSE file or go to https://EonaCat.com/License for full license details.
public class LoginModel : PageModel
{
private readonly AuthenticationService _auth;
public LoginModel(AuthenticationService auth) => _auth = auth;
[BindProperty] public string Password { get; set; } = "";
public string? Error { get; set; }
public void OnGet() { }
public async Task<IActionResult> OnPostAsync()
{
if (!string.IsNullOrWhiteSpace(Password) && await _auth.ValidatePasswordAsync(Password))
{
HttpContext.Session.SetString("IsAdmin", "true");
return RedirectToPage("/Index");
}
Error = "Invalid password.";
return Page();
}
}