Esempio n. 1
0
        public async Task ForgetPassword(ForgetPasswordAccountView viewModel)
        {
            ApplicationUser user = await _userManager.FindByNameAsync(viewModel.Username);

            if (user is null)
            {
                throw new AccountException("User is not found.");
            }

            if (!user.Email.Equals(viewModel.Email))
            {
                throw new AccountException("Emails are different.");
            }

            await CreateForgetPasswordEmail(user, viewModel.CurrentUrl);
        }
Esempio n. 2
0
        public async Task <IActionResult> ForgetPassword(ForgetPasswordAccountView forgetPasswordView)
        {
            try
            {
                var url = new Uri($"{Request.Scheme}://{Request.Host}");
                forgetPasswordView.CurrentUrl = url;
                await _accountService.ForgetPassword(forgetPasswordView);

                return(RedirectToAction("LogIn", "Account"));
            }
            catch (AccountException ex)
            {
                ModelState.AddModelError(string.Empty, ex.Message);
                return(View());
            }
        }