private async void ChangePasswordButton_Click(object sender, RoutedEventArgs e)
        {
            ClearErrors();
            ChangePassword changePassword = new ChangePassword()
            {
                OldPassword     = OldPasswordBox.Password,
                NewPassword     = NewPasswordBox.Password,
                ConfirmPassword = ConfirmPasswordBox.Password
            };

            HttpResult result;

            using (AccountClient accountClient = ClientFactory.CreateAccountClient())
            {
                result = await accountClient.ChangePasswordAsync(changePassword);
            }

            if (result.Succeeded)
            {
                this.NavigationService.GoBack();
            }
            else
            {
                DisplayErrors(result.Errors);
            }
            ClearPasswords();
        }
Exemplo n.º 2
0
        private async void ChangePasswordButton_Click(object sender, RoutedEventArgs e)
        {
            ResetDisplay();
            ChangePassword changePassword = new ChangePassword()
            {
                OldPassword     = OldPasswordBox.Password,
                NewPassword     = NewPasswordBox.Password,
                ConfirmPassword = ConfirmPasswordBox.Password
            };

            HttpResult result;

            using (AccountClient accountClient = ClientFactory.CreateAccountClient())
            {
                result = await accountClient.ChangePasswordAsync(changePassword);
            }

            if (result.Succeeded)
            {
                AppSettings settings = new AppSettings();
                settings.ChangePasswordCredential(username, changePassword.NewPassword);
                DisplaySuccess();
            }
            else
            {
                DisplayErrors(result.Errors);
            }
            ClearPasswords();
        }
Exemplo n.º 3
0
        //private async void btnProcedi_Clicked(object sender, EventArgs e)
        //{
        //    try
        //    {
        //        bool formIsValid = true;

        //        //Controllo validità della vecchia password.
        //        if (String.IsNullOrEmpty(entVecchiaPassword.Text))
        //        {
        //            formIsValid = false;
        //        }

        //        //Controllo validità della nuova password.
        //        if (String.IsNullOrEmpty(entNuovaPassword.Text) || !Regex.IsMatch(entNuovaPassword.Text, Utility.Utility.PasswordRegex))
        //        {
        //            formIsValid = false;
        //            lblValidatorEntPassword.IsVisible = true;
        //            entNuovaPassword.BackgroundColor = Color.FromRgb(255, 175, 173);

        //        }

        //        //Controllo che le due password siano uguali.
        //        if (String.IsNullOrEmpty(entConfermaPassword.Text) || !(entNuovaPassword.Text == entConfermaPassword.Text))
        //        {
        //            formIsValid = false;
        //            lblValidatorEntConfermaPassword.IsVisible = true;
        //            entConfermaPassword.BackgroundColor = Color.FromRgb(255, 175, 173);
        //        }

        //        //Se la form è valida proseguo con la registrazione.
        //        if (formIsValid)
        //        {
        //            lblValidatorEntConfermaPassword.IsVisible = false;
        //            entNuovaPassword.BackgroundColor = Color.White;
        //            entConfermaPassword.BackgroundColor = Color.White;
        //            AccountClient accountClient = new AccountClient(await ApiHelper.GetApiClient());

        //            ChangePasswordBindingModel changePasswordBindingModel = new ChangePasswordBindingModel()
        //            {
        //                OldPassword = entVecchiaPassword.Text,
        //                NewPassword = entNuovaPassword.Text,
        //                ConfirmPassword = entConfermaPassword.Text
        //            };

        //            ChangePasswordLoading.IsVisible = true;
        //            await accountClient.ChangePasswordAsync(changePasswordBindingModel);
        //            ChangePasswordLoading.IsVisible = false;
        //            await DisplayAlert(null, "Password cambiata correttamente", "OK");
        //        }
        //    }
        //    catch (ApiException Ex)
        //    {
        //        //Se sono qui non ho l'accesso, quindi la password è sbagliata.
        //        await DisplayAlert("Attenzione", "La password inserita non è valida.", "OK");
        //    }
        //    catch (Exception)
        //    {
        //        await Navigation.PushAsync(new ErrorPage());
        //    }
        //}

        async void TapGestureRecognizer_Tapped(System.Object sender, System.EventArgs e)
        {
            try
            {
                bool formIsValid = true;

                //Controllo validità della vecchia password.
                if (String.IsNullOrEmpty(entVecchiaPassword.Text))
                {
                    formIsValid = false;
                    await DisplayAlert("Attenzione", "La vecch password non è valida.", "OK");

                    return;
                }

                //Controllo validità della nuova password.
                if (String.IsNullOrEmpty(entNuovaPassword.Text) || !Regex.IsMatch(entNuovaPassword.Text, Utility.Utility.PasswordRegex))
                {
                    formIsValid = false;
                    await DisplayAlert("Attenzione", "La nuova password non è valida. Deve contenere almeno un carattere specialeun numero e una lettera maiuscola.", "OK");

                    return;
                }

                //Controllo che le due password siano uguali.
                if (String.IsNullOrEmpty(entConfermaPassword.Text) || !(entNuovaPassword.Text == entConfermaPassword.Text))
                {
                    formIsValid = false;
                    await DisplayAlert("Attenzione", "Le due password non corrispondono.", "OK");

                    return;
                }

                //Se la form è valida proseguo con la registrazione.
                if (formIsValid)
                {
                    entNuovaPassword.BackgroundColor    = Color.White;
                    entConfermaPassword.BackgroundColor = Color.White;
                    AccountClient accountClient = new AccountClient(await ApiHelper.GetApiClient());

                    ChangePasswordBindingModel changePasswordBindingModel = new ChangePasswordBindingModel()
                    {
                        OldPassword     = entVecchiaPassword.Text,
                        NewPassword     = entNuovaPassword.Text,
                        ConfirmPassword = entConfermaPassword.Text
                    };

                    ChangePasswordLoading.IsVisible = true;
                    await accountClient.ChangePasswordAsync(changePasswordBindingModel);

                    ChangePasswordLoading.IsVisible = false;
                    await DisplayAlert(null, "Password cambiata correttamente", "OK");
                }
            }
            catch (ApiException Ex)
            {
                //Se sono qui non ho l'accesso, quindi la password è sbagliata.
                await DisplayAlert("Attenzione", "La password inserita non è valida.", "OK");
            }
            catch (Exception)
            {
                await Navigation.PushAsync(new ErrorPage());
            }
        }