You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Seekers/Views/LoginPage.xaml.cs

66 lines
2.2 KiB

6 months ago
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
}
6 months ago
6 months ago
private async void OnLoginButtonClicked(object sender, EventArgs e)
6 months ago
{
6 months ago
var endvalidUsername = "euser";
var endvalidPassword = "euser123";
var authvalidUsername = "auser";
var authvalidPassword = "auser123";
6 months ago
var enteredUsername = UsernameEntry?.Text?.Trim();
var enteredPassword = PasswordEntry?.Text?.Trim();
var selectedRole = RolePicker?.SelectedItem?.ToString();
if (string.IsNullOrEmpty(selectedRole))
6 months ago
{
6 months ago
await DisplayAlert("Error", "Please select a role to proceed.", "OK");
6 months ago
return;
}
6 months ago
if (string.IsNullOrWhiteSpace(enteredUsername) || string.IsNullOrWhiteSpace(enteredPassword))
6 months ago
{
6 months ago
await DisplayAlert("Error", "Please enter both username and password.", "OK");
return;
}
6 months ago
6 months ago
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");
6 months ago
await Shell.Current.GoToAsync("//AuthorityReportsPage");
6 months ago
}
6 months ago
else
6 months ago
{
6 months ago
await DisplayAlert("Error", "Invalid credentials. Please try again.", "OK");
6 months ago
}
}
private async void OnRegisterButtonClicked(object sender, EventArgs e)
{
await Shell.Current.GoToAsync("//RegistrationPage");
}
6 months ago
}
}