示例#1
0
        private async Task CreateUserRequest(SecureString password, SecureString confirmPass, string userID, string email, string firstName, string lastName)
        {
            //Convert to unsecure
            string unsecurePassword    = Utility.ConvertToUnsecureString(password);
            string unsecureConfirmPass = Utility.ConvertToUnsecureString(confirmPass);

            //Check for uniformity
            if (RegisterViewModel.CheckPassUniformity(unsecurePassword, unsecureConfirmPass))
            {
                if (await(_viewModel as RegisterViewModel).Register(userID, email, unsecurePassword))
                {
                    Settings.Default.Username = userID;
                    Settings.Default.Save();

                    Dispatcher.Invoke(DispatcherPriority.Background,
                                      new Action(async() => {
                        await AnimateOut();
                        (Application.Current.MainWindow as MainWindow).frame.NavigationService.Navigate(new LoginPage());
                    }));
                }
            }
            else
            {
                spinner_imageawesome.Visibility = Visibility.Hidden;
                ((Application.Current.MainWindow as MainWindow).ViewModel as MainViewModel).DisplayErrorMessage("The passwords did not match");
            }
            Dispatcher.Invoke(DispatcherPriority.Background,
                              new Action(() => {
                spinner_imageawesome.Visibility = Visibility.Hidden;
            }));
        }