using Justice.Helpers; namespace Justice.Views { public partial class LoginPage : ContentPage { public LoginPage() { InitializeComponent(); } protected override void OnAppearing() { base.OnAppearing(); // Clear the fields when the page is loaded UsernameEntry.Text = string.Empty; PasswordEntry.Text = string.Empty; RolePicker.SelectedItem = null; // Clear role selection if needed } private async void OnLoginButtonClicked(object sender, EventArgs e) { var endvalidUsername = "enduser"; var endvalidPassword = "enduser123"; var authvalidUsername = "authuser"; var authvalidPassword = "authuser123"; var enteredUsername = UsernameEntry?.Text?.Trim(); var enteredPassword = PasswordEntry?.Text?.Trim(); var selectedRole = RolePicker?.SelectedItem?.ToString(); if (string.IsNullOrEmpty(selectedRole)) { await DisplayAlert("Error", "Please select a role to proceed.", "OK"); return; } if (string.IsNullOrWhiteSpace(enteredUsername) || string.IsNullOrWhiteSpace(enteredPassword)) { await DisplayAlert("Error", "Please enter both username and password.", "OK"); return; } if (enteredUsername == endvalidUsername && enteredPassword == endvalidPassword && selectedRole == "End User") { AuthHelper.Login("EndUser"); await Shell.Current.GoToAsync("//DashboardPage"); } else if (enteredUsername == authvalidUsername && enteredPassword == authvalidPassword && selectedRole == "Authority User") { AuthHelper.Login("AuthorityUser"); await Shell.Current.GoToAsync("//AuthorityReportsPage"); } else { await DisplayAlert("Error", "Invalid credentials. Please try again.", "OK"); } } private async void OnRegisterButtonClicked(object sender, EventArgs e) { await Shell.Current.GoToAsync("//RegistrationPage"); } } }