using AyCode.Core.Helpers; using AyCode.Core.Loggers; using AyCode.Interfaces.Users; using AyCode.Utils.Extensions; using FruitBank.Common.Loggers; using FruitBankHybrid.Shared.Services.Loggers; using FruitBankHybrid.Shared.Services.SignalRs; using Mango.Nop.Core.Dtos; using Mango.Nop.Core.Models; using Microsoft.AspNetCore.Components; using Microsoft.AspNetCore.Components.Web; namespace FruitBankHybrid.Shared.Pages; public partial class Login : ComponentBase { [Inject] public required IEnumerable LogWriters { get; set; } [Inject] public required FruitBankSignalRClient FruitBankSignalRClient { get; set; } private ILogger _logger = null!; private List Users { get; set; } private CustomerDto? SelectedUser { get; set; } private string PasswordValue { get; set; } = string.Empty; private MgLoginModelResponse? LoginModelResponse { get; set; } protected override async Task OnInitializedAsync() { _logger = new LoggerClient(LogWriters.ToArray()); _logger.Info("OnInitializedAsync"); Users = await FruitBankSignalRClient.GetMeasuringUsers() ?? []; SelectedUser = Users.FirstOrDefault(); await base.OnInitializedAsync(); } private async Task OnLoginClick() { if (SelectedUser == null || PasswordValue.IsNullOrWhiteSpace()) { LoginModelResponse = new MgLoginModelResponse { ErrorMessage = "Válasszon felhsználót és adja meg a jelszavát!" }; return; } LoginModelResponse = await FruitBankSignalRClient.LoginMeasuringUser(SelectedUser.Email, PasswordValue); } protected async Task OnPasswordKeyDown(KeyboardEventArgs e) { if (e.Key == "Enter") await OnLoginClick(); } private string GetImageFileName(CustomerDto employee) { //return StaticAssetUtils.GetEmployeeImagePath(employee.Id); return string.Empty; } }