示例#1
0
        private void ButtonSave_Clicked(object sender, EventArgs e)
        {
            if (string.IsNullOrWhiteSpace(entryEmail.Text) |
                string.IsNullOrWhiteSpace(entryPassword.Text) |
                string.IsNullOrWhiteSpace(entryFirstName.Text) |
                !Email.SenacEmailIsValid(entryEmail.Text))
            {
                return;
            }

            var result = repository.Get(user.Email);

            if (result != null)
            {
                DisplayAlert("Info", "User already registered :(", "OK");
                return;
            }

            user.FirstName = entryFirstName.Text;
            user.LastName  = entryLastName.Text;
            user.Email     = entryEmail.Text;
            user.Password  = entryPassword.Text;

            if (repository.Save(user))
            {
                DisplayAlert("Info", "User save successfully :)", "OK");

                entryEmail.Text     = string.Empty;
                entryLastName.Text  = string.Empty;
                entryPassword.Text  = string.Empty;
                entryFirstName.Text = string.Empty;

                Navigation.PushAsync(new LoginPage(user.Email));
            }
            else
            {
                DisplayAlert("Info", "Fail to save user :(", "OK");
            }
        }
        private void ButtonLogin_Clicked(object sender, EventArgs e)
        {
            labelInvalidEmail.IsVisible    = false;
            labelInvalidPassword.IsVisible = false;

            if (string.IsNullOrWhiteSpace(entryPassword.Text))
            {
                labelInvalidPassword.IsVisible = true;
            }

            if (string.IsNullOrWhiteSpace(entryEmail.Text) | !Email.SenacEmailIsValid(entryEmail.Text))
            {
                labelInvalidEmail.IsVisible = true;
                return;
            }

            var user       = new User();
            var repository = new UserRepository();

            user.Email    = entryEmail.Text;
            user.Password = entryPassword.Text;

            if (repository.Auth(user))
            {
                var userAuth = repository.Get(user.Email);

                entryEmail.Text    = string.Empty;
                entryPassword.Text = string.Empty;

                Navigation.PushAsync(new MainPage(userAuth.FirstName, user.Email));
            }
            else
            {
                DisplayAlert("Info", "Login invalid, email or password incorrect :(", "OK");
            }
        }