예제 #1
0
        private async Task ExecuteSendEmailWithCodeAsync(object parameter)
        {
            await _longRunningOperationHelper.ProceedLongRunningOperationAsync(async() =>
            {
                var users = await _usersRepository.GetAllByPropertyAsync(nameof(Student), "Email", Email);
                _user     = users.FirstOrDefault();
                if (_user != null)
                {
                    var random    = new Random();
                    _recoveryCode = random.Next(10000, 90000);
                    await _mailingService.SendEmailWithRecoveryCodeAsync(Email, _recoveryCode);
                }
            });

            if (_user != null)
            {
                MessageBoxHelper.ShowMessageBox("Na podany adres e-mail został wysłany kod resetujący hasło.");
                RecoveryCodeSent = true;
                OnPropertyChanged(nameof(RecoveryCodeSent));
            }
            else
            {
                MessageBoxHelper.ShowErrorMessageBox("Podany adres e-mail nie jest przypisany do żadnego użytkownika.");
            }
        }