public async Task <IActionResult> AcceptInvitationConfirm(AcceptInvitationModel model) { try { if (!model.PrivacyPolicyAgreed) { ModelState.AddModelError("TOC", "You must agree to our Terms & Conditions before you can sign up!"); return(View("AcceptInvitation", model)); } await _dataAccess.AcceptInvitation(model.Token, model.Email); var user = await _userManager.FindByEmailAsync(model.Email); return(RedirectToAction(user == null ? "SignUp" : "SignIn")); } catch (Exception ex) { _logger.LogError(ex, "Sorry we could not complete the accept invitation process!"); if (_hostingEnvironment.IsDevelopment()) { throw; } return(RedirectToAction("CriticalError", "Home", new { errorType = "AcceptInvitation" })); } }