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

52 lines
1.8 KiB

6 months ago
using Justice.Helpers;
namespace Justice.Views
{
public partial class LoginPage : ContentPage
{
public LoginPage()
{
InitializeComponent();
}
6 months ago
private async void OnLoginButtonClicked(object sender, EventArgs e)
6 months ago
{
6 months ago
var endvalidUsername = "test";
var endvalidPassword = "test123";
var authvalidUsername = "auth";
var authvalidPassword = "auth123";
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");
await Shell.Current.GoToAsync("//ViewReportsPage");
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
}
}
}
}