| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- namespace practiceApplicaiton;
- public partial class LoginPage : ContentPage
- {
- public LoginPage()
- {
- InitializeComponent();
- RolePicker.SelectedIndex = 1; // По умолчанию — Менеджер
- }
- private async void OnLoginClicked(object sender, EventArgs e)
- {
- ErrorLabel.IsVisible = false;
- LoginButton.IsEnabled = false;
- if (RolePicker.SelectedIndex < 0)
- {
- ShowError("Выберите роль");
- return;
- }
- var role = RolePicker.SelectedIndex == 0 ? AppRole.Admin : AppRole.Manager;
- var password = PasswordEntry.Text ?? "";
- if (string.IsNullOrWhiteSpace(password))
- {
- ShowError("Введите пароль");
- return;
- }
- try
- {
- var ok = await Database.ConnectAsync(role, password);
- if (ok)
- {
- Application.Current!.Windows[0].Page = new AppShell();
- }
- else
- {
- ShowError("Неверный пароль или нет доступа к БД");
- }
- }
- catch (Exception ex)
- {
- ShowError($"Ошибка подключения: {ex.Message}");
- }
- finally
- {
- LoginButton.IsEnabled = true;
- }
- }
- private void ShowError(string msg)
- {
- ErrorLabel.Text = msg;
- ErrorLabel.IsVisible = true;
- }
- }
|