예제 #1
0
        async void UpdateUser()
        {
            Android.App.AlertDialog dialog = new SpotsDialog(this);
            dialog.Show();
            try {
                user.FirstName = firstName.Text;
                user.LastName  = lastName.Text;
                user.Country   = country.Text;
                user.City      = city.Text;
                if (dateOfBirth != null)
                {
                    user.DateOfBirth = dateOfBirth;
                }

                var response = await AccountsApi.UpdateCurentUser(user);

                if (response.Succeed)
                {
                    LocalProvider.SetCurrentUser(user);
                    StartActivity(new Intent(this, typeof(UserProfile)));
                    Finish();
                }
                else
                {
                    var newFragment = new MessageAlert(response.Errors);
                    newFragment.Show(FragmentManager.BeginTransaction(), "dialog");
                }
            } catch (Exception ex) {
                System.Diagnostics.Debug.WriteLine($"{this.GetType().Name}: Exception: {ex.Message}");
            }
            dialog.Dismiss();
        }
예제 #2
0
        async void CreateUser()
        {
            Android.App.AlertDialog dialog = new SpotsDialog(this);
            dialog.Show();
            user = new User {
                Email       = auth.CurrentUser.Email,
                Id          = auth.CurrentUser.Uid.ToString(),
                FirstName   = firstName.Text,
                LastName    = lastName.Text,
                Country     = country.Text,
                City        = city.Text,
                DateOfBirth = dateOfBirth
            };
            var response = await AccountsApi.RegisterNew(user);

            if (response.Succeed)
            {
                LocalProvider.SetCurrentUser(user);
                StartActivity(new Intent(this, typeof(UserProfile)));
                Finish();
            }
            else
            {
                var newFragment = new MessageAlert(response.Errors);
                newFragment.Show(FragmentManager.BeginTransaction(), "dialog");
            }
            dialog.Dismiss();
        }
예제 #3
0
 void GetUser()
 {
     Android.App.AlertDialog dialog = new SpotsDialog(this);
     dialog.Show();
     try {
         user = LocalProvider.GetCurrentUser();
         using (var p = new Handler(Looper.MainLooper)) {
             p.Post(() => {
                 firstName.Text = user.FirstName;
                 lastName.Text  = user.LastName;
                 city.Text      = user.City;
                 country.Text   = user.Country;
                 birthDate.Text = user.DateOfBirth?.ToString("dd MMMM yyyy");
                 linearLayout.Invalidate();
             });
         }
     } catch (Exception ex) { }
     dialog.Dismiss();
 }
예제 #4
0
 void GetUser()
 {
     Android.App.AlertDialog dialog = new SpotsDialog(this);
     dialog.Show();
     try {
         //var response = await AccountsApi.GetCurentUser();
         var user = LocalProvider.GetCurrentUser();
         using (var p = new Handler(Looper.MainLooper)) {
             p.Post(() => {
                 txtWelcome.Text = "Welcome , " + user.Email;
                 firstName.Text  = user.FirstName;
                 lastName.Text   = user.LastName;
                 City.Text       = user.City;
                 Country.Text    = user.Country;
                 birthDate.Text  = user.DateOfBirth?.ToString("dd MMMM yyyy");
                 linearLayout.Invalidate();
             });
         }
     } catch (Exception ex) { }
     dialog.Dismiss();
 }
예제 #5
0
        private async void LoginUser(string email, string password)
        {
            Android.App.AlertDialog dialog = new SpotsDialog(this);
            dialog.Show();

            try {
                var user = await FirebaseAuth.Instance.SignInWithEmailAndPasswordAsync(email, password);

                if (user != null)
                {
                    var response = await AccountsApi.GetCurentUser();

                    if (response.Succeed)
                    {
                        LocalProvider.SetCurrentUser(response.ResponseObject);
                        StartActivity(new Android.Content.Intent(this, typeof(UserProfile)));
                        Finish();
                    }
                    else
                    {
                        var newFragment = new MessageAlert(response.Errors);
                        newFragment.Show(FragmentManager.BeginTransaction(), "dialog");
                    }
                }
                else
                {
                    var newFragment = new MessageAlert(Resources.GetText(Resource.String.noUserAccess));
                    newFragment.Show(FragmentManager.BeginTransaction(), "dialog");
                }
            } catch (FirebaseAuthException ex) {
                var eee   = ex.ErrorCode;
                int errID = Resources.GetIdentifier(eee, "string", PackageName);


                var newFragment = new MessageAlert(Resources.GetText(errID));
                newFragment.Show(FragmentManager.BeginTransaction(), "dialog");
            }

            dialog.Dismiss();
        }
        async void BtnLogin_ClickAsync(object sender, EventArgs e)
        {
            if (IsUserNameValid() && IsPasswordValid())
            {
                AlertDialog dialog = new SpotsDialog(this, Resource.Style.CustomDialog);
                dialog.SetMessage("Checking Your Details...");
                dialog.SetCancelable(false);
                dialog.Show();

                npcc_authentication oauth = new npcc_authentication();
                inf_login_info      lg    = await oauth.Login(txtUsername.Text, txtPassword.Text);

                dialog.Dismiss();

                //We have successfully authenticated a the user,
                //Now fire our OnLoginSuccess Event.
                if (lg.Authenticated == inf_login_result.SuccessfullyAuthenticated)
                {
                    await SecureStorage.SetAsync("oauth_token", lg.Token);

                    //We have successfully authenticated a the user,
                    //Now fire our OnLoginSuccess Event.
                    DBRepository dBRepository = new DBRepository();
                    dBRepository.DropTable();
                    bool b = await dBRepository.RefreshUserInfoAsync();

                    StartActivity(typeof(HomeActivity));
                    Finish();
                }
                else
                {
                    Toast.MakeText(this, lg.Authenticated.ToString(), ToastLength.Long).Show();
                }
            }
            else
            {
                Toast.MakeText(this, "Empty Username/ Password!", ToastLength.Long).Show();
            }
        }
예제 #7
0
        private async void SignUpUser(string email, string password)
        {
            Android.App.AlertDialog dialog = new SpotsDialog(this);
            dialog.Show();
            try {
                var user = await FirebaseAuth.Instance.CreateUserWithEmailAndPasswordAsync(email, password);

                if (user != null)
                {
                    StartActivity(new Intent(this, typeof(UserInfo)));
                    Finish();
                }
            } catch (FirebaseAuthException ex) {
                var eee   = ex.ErrorCode;
                int errID = Resources.GetIdentifier(eee, "string", PackageName);


                var newFragment = new MessageAlert(Resources.GetText(errID));
                newFragment.Show(FragmentManager.BeginTransaction(), "dialog");
            }
            dialog.Dismiss();
        }