예제 #1
0
        public override void ViewDidLoad()
        {
            emailTextForgot.BecomeFirstResponder();
            DismissKeyboardOnBackgroundTap();
            RegisterForKeyboardNotifications();
            ShouldReturn(emailTextForgot);


            getPasswordButton.TouchUpInside += async(object sender, System.EventArgs e) =>
            {
                try
                {
                    string email = emailTextForgot.Text;
                    await ParseUser.RequestPasswordResetAsync(email);

                    AlertPopUp("Link sent", "A password reset link has been sent to " + email, "OK");
                }
                catch (ParseException ex)
                {
                    Debug.WriteLine(ex.Message);
                }
            };

            backButtonForgot.TouchUpInside += (o, e) =>
            {
                NavigationController.PopViewController(true);
                ClearFields(emailTextForgot);
            };
        }
예제 #2
0
 public void forgetSendEmail()
 {
     if (forgetEmail.text.Length == 0)
     {
         MNPopup mNPopup = new MNPopup("Error", "Please Input Correct!");
         mNPopup.AddAction("Ok", () => { Debug.Log("Ok action callback"); });
         mNPopup.Show();
     }
     else
     {
         //MNP.ShowPreloader("", "");
         ParseUser.RequestPasswordResetAsync(forgetEmail.text).ContinueWith(t => {
             MNP.HidePreloader();
             if (t.IsFaulted)
             {
                 // Errors from Parse Cloud and network interactions
                 using (IEnumerator <System.Exception> enumerator = t.Exception.InnerExceptions.GetEnumerator())
                 {
                     if (enumerator.MoveNext())
                     {
                         ParseException error = (ParseException)enumerator.Current;
                         // error.Message will contain an error message
                         // error.Code will return "OtherCause"
                         UnityMainThreadDispatcher.Instance().Enqueue(showErrorWithMessage(error.Message));
                     }
                 }
             }
             else
             {
                 UnityMainThreadDispatcher.Instance().Enqueue(showSuccessWithMessage("Send Email Successful!"));
             }
         });
     }
 }
예제 #3
0
        private async void solicitar(object sender, RoutedEventArgs e)
        {
            string email = re_email.Text;

            if (email.Equals(""))
            {
                warning.Visibility = Visibility.Visible;
                var margin = panel_button.Margin;
                margin.Top          = -17;
                panel_button.Margin = margin;
                re_email.Text       = "";
            }
            else
            {
                warning.Visibility = Visibility.Collapsed;
                var margin = panel_button.Margin;
                margin.Top              = 0;
                panel_button.Margin     = margin;
                panel_button.Visibility = Visibility.Collapsed;
                PrgRing2.Visibility     = Visibility.Visible;
                try
                {
                    await ParseUser.RequestPasswordResetAsync(email);

                    PrgRing2.Visibility = Visibility.Collapsed;
                    Accept.Visibility   = Visibility.Visible;
                    await Task.Delay(2000);

                    Frame rootFrame = Window.Current.Content as Frame;
                    rootFrame.Navigate(typeof(LoginPage));
                }
                catch (Exception ex)
                {
                    string error = ex.Message;
                    if (error.Contains("found"))
                    {
                        warning.Text = "No existe el correo " + email;
                        var margin2 = panel_button.Margin;
                        margin2.Top             = -17;
                        panel_button.Margin     = margin2;
                        warning.Visibility      = Visibility.Visible;
                        PrgRing2.Visibility     = Visibility.Collapsed;
                        panel_button.Visibility = Visibility.Visible;
                    }
                    switch (error)
                    {
                    case "invalid email address":
                        warning.Text = "Ingrese un correo electrónico valido.";
                        var margin3 = panel_button.Margin;
                        margin3.Top             = -17;
                        panel_button.Margin     = margin3;
                        panel_button.Visibility = Visibility.Visible;
                        PrgRing2.Visibility     = Visibility.Collapsed;
                        warning.Visibility      = Visibility.Visible;
                        break;
                    }
                }
            }
        }
예제 #4
0
 public async Task ResetPassword(string email)
 {
     try {
         await ParseUser.RequestPasswordResetAsync(email);
     } catch (Exception e) {
         return;
     }
 }
예제 #5
0
 public async void ResetPassword(string userEmail)
 {
     try {
         //reset link will be sent to the user's email address
         await ParseUser.RequestPasswordResetAsync(userEmail);
     } catch (Exception e) {
         Console.WriteLine(e.Message);
     }
 }
예제 #6
0
        public Task TestRequestPasswordReset()
        {
            var mockController = new Mock <IParseUserController>();

            ParseCorePlugins.Instance.UserController = mockController.Object;

            return(ParseUser.RequestPasswordResetAsync("*****@*****.**").ContinueWith(t => {
                Assert.False(t.IsFaulted);
                Assert.False(t.IsCanceled);
                mockController.Verify(obj => obj.RequestPasswordResetAsync("*****@*****.**",
                                                                           It.IsAny <CancellationToken>()), Times.Exactly(1));
            }));
        }
예제 #7
0
        async private void ButtonRéinitialiser_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                await ParseUser.RequestPasswordResetAsync(eMail.Text);

                MessageBox.Show("Consultez le mail de réinitialisation.");
                NavigationService.Navigate(new Uri("/MainPage.xaml", UriKind.Relative));
            }
            catch
            {
                MessageBox.Show("Adresse mail incorrecte.");
            }
        }
예제 #8
0
        private async void OnStepExited(StepExitCode exitCode)
        {
            var message = "Recovery email not sent successfully";

            AndHUD.Shared.Show(Context, string.Format("Authenticating email {0}", _recoveryEmail), -1, MaskType.Black);
            try
            {
                if (exitCode == StepExitCode.ExitPrevious)
                {
                    return;
                }

                message = "Recovery email sent successfully";
                //let us send the recovery email

                await ParseUser.RequestPasswordResetAsync(_recoveryEmail);
            }
            catch (ParseException ex)
            {
                message = "Error sending password reset " + ex.Message;
                Console.WriteLine(message);
                MetricsManager.TrackEvent(message + ex.StackTrace);
            }
            catch (Exception ex)
            {
                message = "Error sending password reset " + ex.Message;
                Console.WriteLine(message);
                MetricsManager.TrackEvent(message + ex.StackTrace);
            }
            finally
            {
                AndHUD.Shared.Dismiss(Context);
            }

            Toast.MakeText(Context, message, Android.Widget.ToastLength.Long).Show();
        }
예제 #9
0
 public override void OnEnter()
 {
     _task = ParseUser.RequestPasswordResetAsync(email.Value);
 }
예제 #10
0
 public async void passwordReset(string email)
 {
     ParseUser.RequestPasswordResetAsync(email);
 }
예제 #11
0
 public Task RequestPasswordReset(string email)
 {
     return(ParseUser.RequestPasswordResetAsync(email));
 }
예제 #12
0
 public async void ResetPassword(string email)
 {
     await ParseUser.RequestPasswordResetAsync(email);
 }
예제 #13
0
    // Use this for initialization
    void OnClick()
    {
        Task requestPasswordTask = ParseUser.RequestPasswordResetAsync(email.value);

        email.value = "信件已寄出!";
    }