Files
FoodsharingOnboarding/FoodsharingSiegen.Server/Pages/Login.razor.cs
2022-05-30 11:05:19 +02:00

81 lines
2.2 KiB
C#

using Blazorise;
using Microsoft.AspNetCore.Components.Web;
namespace FoodsharingSiegen.Server.Pages
{
/// <summary>
/// The login class (a. beging, 11.04.2022)
/// </summary>
public partial class Login
{
#region Public Properties
/// <summary>
/// Gets or sets the value of the is valid mail (ab)
/// </summary>
public ValidationStatus IsValidMail { get; set; }
/// <summary>
/// Gets or sets the value of the is valid password (ab)
/// </summary>
public ValidationStatus IsValidPassword { get; set; }
#endregion
#region Private Properties
/// <summary>
/// Gets or sets the value of the mail-address (ab)
/// </summary>
private string? MailAddress { get; set; }
/// <summary>
/// Gets or sets the value of the password (ab)
/// </summary>
private string? Password { get; set; }
#endregion
#region Private Method PerformLogin
/// <summary>
/// Performs the login (a. beging, 11.04.2022)
/// </summary>
private async Task PerformLogin()
{
//Todo Eingaben Validieren [04.04.22 - Andre Beging]
if (string.IsNullOrWhiteSpace(MailAddress) || string.IsNullOrWhiteSpace(Password))
{
MailAddress = string.Empty;
Password = string.Empty;
return;
}
var loginR = await AuthService.Login(MailAddress, Password);
if (loginR.Success)
{
NavigationManager.NavigateTo("/", true);
}
else
{
await Notification?.Error(loginR.ErrorMessage)!;
}
}
#endregion
#region Private Method TextEdit_KeyUp
/// <summary>
/// Texts the edit key up using the specified arg (a. beging, 11.04.2022)
/// </summary>
/// <param name="arg">The arg</param>
private async Task TextEdit_KeyUp(KeyboardEventArgs arg)
{
if (arg.Key == "Enter") await PerformLogin();
}
#endregion
}
}