public async Task <ActionResult> Register(RegisterViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var user = new User { UserName = model.UserName, FirstName = model.FirstName, LastName = model.LastName, Email = model.UserName, Enabled = true }; var registerResult = new IdentityResult(); try { registerResult = await UserManager.CreateAsync(user, model.Password); } catch (Exception ex) { EventLogProvider.LogException("AccountController", "Register", ex); ModelState.AddModelError(String.Empty, ResHelper.GetString("register_failuretext")); } if (registerResult.Succeeded) { mMembershipActivitiesLogger.LogRegistration(model.UserName); await SignInManager.SignInAsync(user, true, false); ContactManagementContext.UpdateUserLoginContact(model.UserName); mMembershipActivitiesLogger.LogLogin(model.UserName); return(RedirectToAction("Index", "Home")); } foreach (var error in registerResult.Errors) { ModelState.AddModelError(String.Empty, error); } return(View(model)); }
public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } var signInResult = SignInResult.Failed; try { signInResult = await signInManager.PasswordSignInAsync(model.UserName, model.Password, model.StaySignedIn, false); } catch (Exception ex) { eventLogService.LogException("AccountController", "Login", ex); } if (signInResult.Succeeded) { ContactManagementContext.UpdateUserLoginContact(model.UserName); membershipActivitiesLogger.LogLogin(model.UserName); var decodedReturnUrl = WebUtility.UrlDecode(returnUrl); if (!string.IsNullOrEmpty(decodedReturnUrl) && Url.IsLocalUrl(decodedReturnUrl)) { return(View("RedirectAfterLogin", decodedReturnUrl)); } return(Redirect("/")); } if (signInResult.IsNotAllowed) { ModelState.AddModelError(string.Empty, localizer["Your account requires activation before logging in."]); } else { ModelState.AddModelError(string.Empty, localizer["Your sign-in attempt was not successful. Please try again."].ToString()); } return(View(model)); }
public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } var signInResult = SignInStatus.Failure; try { signInResult = await SignInManager.PasswordSignInAsync(model.UserName, model.Password, model.StaySignedIn, false); } catch (Exception ex) { Service.Resolve <IEventLogService>().LogException("AccountController", "Login", ex); } if (signInResult == SignInStatus.Success) { ContactManagementContext.UpdateUserLoginContact(model.UserName); membershipActivitiesLogger.LogLogin(model.UserName); var decodedReturnUrl = Server.UrlDecode(returnUrl); if (!string.IsNullOrEmpty(decodedReturnUrl) && Url.IsLocalUrl(decodedReturnUrl)) { return(Redirect(decodedReturnUrl)); } return(Redirect(Url.Kentico().PageUrl(ContentItemIdentifiers.HOME))); } if (signInResult == SignInStatus.LockedOut) { ModelState.AddModelError(String.Empty, ResHelper.GetString("DancingGoatMvc.RequireConfirmedAccount")); } else { ModelState.AddModelError(String.Empty, ResHelper.GetString("login_failuretext")); } return(View(model)); }
public async Task <ActionResult> Login(LoginViewModel model, string returnUrl) { if (!ModelState.IsValid) { return(View(model)); } var signInResult = SignInStatus.Failure; try { signInResult = await SignInManager.PasswordSignInAsync(model.UserName, model.Password, model.StaySignedIn, false); } catch (Exception ex) { EventLogProvider.LogException("AccountController", "Login", ex); } if (signInResult == SignInStatus.Success) { ContactManagementContext.UpdateUserLoginContact(model.UserName); mMembershipActivitiesLogger.LogLogin(model.UserName); var decodedReturnUrl = Server.UrlDecode(returnUrl); if (!string.IsNullOrEmpty(decodedReturnUrl) && Url.IsLocalUrl(decodedReturnUrl)) { return(Redirect(decodedReturnUrl)); } return(RedirectToAction("Index", "Home")); } ModelState.AddModelError(String.Empty, ResHelper.GetString("login_failuretext")); return(View(model)); }
public async Task <ActionResult> Register(RegisterViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var user = new ApplicationUser { UserName = model.UserName, FirstName = model.FirstName, LastName = model.LastName, Email = model.UserName, FullName = UserInfoProvider.GetFullName(model.FirstName, null, model.LastName), Enabled = true }; var registerResult = new IdentityResult(); try { registerResult = await userManager.CreateAsync(user, model.Password); } catch (Exception ex) { eventLogService.LogException("AccountController", "Register", ex); ModelState.AddModelError(string.Empty, localizer["Your registration was not successful."]); } if (registerResult.Succeeded) { membershipActivitiesLogger.LogRegistration(model.UserName); var signInResult = await signInManager.PasswordSignInAsync(user, model.Password, true, false); if (signInResult.Succeeded) { ContactManagementContext.UpdateUserLoginContact(model.UserName); SendRegistrationSuccessfulEmail(user.Email); membershipActivitiesLogger.LogLogin(model.UserName); return(Redirect("/")); } if (signInResult.IsNotAllowed) { if (user.WaitingForApproval) { SendWaitForApprovalEmail(user.Email); } return(RedirectToAction(nameof(RequireConfirmedAccount))); } } foreach (var error in registerResult.Errors) { ModelState.AddModelError(string.Empty, error.Description); } return(View(model)); }
public async Task <ActionResult> Register(RegisterViewModel model) { if (!ModelState.IsValid) { return(View(model)); } var user = new User { UserName = model.UserName, FirstName = model.FirstName, LastName = model.LastName, Email = model.UserName, FullName = UserInfoProvider.GetFullName(model.FirstName, null, model.LastName), Enabled = true }; var registerResult = new IdentityResult(); try { registerResult = await UserManager.CreateAsync(user, model.Password); } catch (Exception ex) { Service.Resolve <IEventLogService>().LogException("AccountController", "Register", ex); ModelState.AddModelError(String.Empty, ResHelper.GetString("register_failuretext")); } if (registerResult.Succeeded) { membershipActivitiesLogger.LogRegistration(model.UserName); var signInResult = await SignInManager.PasswordSignInAsync(model.UserName, model.Password, true, false); if (signInResult == SignInStatus.Success) { ContactManagementContext.UpdateUserLoginContact(model.UserName); SendRegistrationSuccessfulEmail(user.Email); membershipActivitiesLogger.LogLogin(model.UserName); return(Redirect(Url.Kentico().PageUrl(ContentItemIdentifiers.HOME))); } if (signInResult == SignInStatus.LockedOut) { if (user.WaitingForApproval) { SendWaitForApprovalEmail(user.Email); } return(RedirectToAction("RequireConfirmedAccount")); } } foreach (var error in registerResult.Errors) { ModelState.AddModelError(String.Empty, error); } return(View(model)); }
private void DummyContactMergeMethod() { //DocSection:MergeContact ContactManagementContext.UpdateUserLoginContact(userName); //EndDocSection:MergeContact }