public void MapFinishRegistrationAndConfirmAccountToApplicationUser(FinishRegistrationAndConfirmAccountAccountView viewModel, Client model) { model.FirstName = viewModel.FirstName; model.LastName = viewModel.LastName; model.MiddleName = viewModel.MiddleName; model.BirthDate = viewModel.BirthDate; model.PhoneNumber = viewModel.PhoneNumber; model.AddressLine = viewModel.AddressLine; }
public async Task <IdentityResult> FinishRegistrationAndConfirmAccount(FinishRegistrationAndConfirmAccountAccountView viewModel) { var result = new IdentityResult(); if (viewModel.UserId is null || viewModel.Token is null) { throw new AccountException("Error finishing registration."); } ApplicationUser user = await _userManager.FindByIdAsync(viewModel.UserId); if (user is null) { throw new AccountException("User not found."); } if (user.EmailConfirmed) { result = IdentityResult.Success; return(result); } _accountMapper.MapFinishRegistrationAndConfirmAccountToApplicationUser(viewModel, user as Student); IdentityResult updateResult = await _userManager.UpdateAsync(user); if (!updateResult.Succeeded) { throw new AccountException("Error updating user."); } result = await _userManager.ConfirmEmailAsync(user, viewModel.Token); return(result); }
public async Task <IActionResult> FinishRegistrationAndConfirmAccount([FromForm] FinishRegistrationAndConfirmAccountAccountView viewModel) { IdentityResult result = await _accountService.FinishRegistrationAndConfirmAccount(viewModel); return(RedirectToAction("LogIn", "Account")); }