public ActionResult JsonRegister(UserFormModel form) { if (ModelState.IsValid) { var command = new UserRegisterCommand { FirstName = form.FirstName, LastName = form.LastName, Email = form.Email, Password = form.Password, Activated = true, RoleId = (Int32)UserRoles.User }; IEnumerable<ValidationResult> errors = commandBus.Validate(command); ModelState.AddModelErrors(errors); if (ModelState.IsValid) { var result = commandBus.Submit(command); if (result.Success) { User user = userRepository.Get(u => u.Email == form.Email); formAuthentication.SetAuthCookie(this.HttpContext, UserAuthenticationTicketBuilder.CreateAuthenticationTicket( user)); return Json(new { success = true }); } else { ModelState.AddModelError("", "An unknown error occurred."); } } // If we got this far, something failed return Json(new { errors = GetErrorsFromModelState() }); } // If we got this far, something failed return Json(new { errors = GetErrorsFromModelState() }); }
public ActionResult Register(UserFormModel model) { if (ModelState.IsValid) { var command = new UserRegisterCommand { FirstName = model.FirstName, LastName = model.LastName, Email = model.Email, Password = model.Password, Activated = true, RoleId = (Int32)UserRoles.User }; IEnumerable<ValidationResult> errors = commandBus.Validate(command); ModelState.AddModelErrors(errors); if (ModelState.IsValid) { var result = commandBus.Submit(command); if (result.Success) { User user = userRepository.Get(u => u.Email == model.Email); formAuthentication.SetAuthCookie(this.HttpContext, UserAuthenticationTicketBuilder.CreateAuthenticationTicket(user)); return RedirectToAction("Index", "Home"); } else { ModelState.AddModelError("", "An unknown error occurred."); } } // If we got this far, something failed, redisplay form return View(model); } // If we got this far, something failed, redisplay form return View(model); }
public async Task<ActionResult> Register(UserFormModel model) { if (ModelState.IsValid) { var command = new UserRegisterCommand { FirstName = model.FirstName, LastName = model.LastName, Email = model.Email, Password = model.Password, Activated = true, RoleId = (Int32)UserRoles.User }; IEnumerable<ValidationResult> errors = commandBus.Validate(command); ModelState.AddModelErrors(errors); if (ModelState.IsValid) { var result = commandBus.Submit(command); if (result.Success) { var user = this.userRepository.Get(x => x.Email.ToUpper() == command.Email.ToUpper() && Md5Encrypt.Md5EncryptPassword(command.Password) == x.PasswordHash); FNHMVCUser appUser = new FNHMVCUser() { Id = user.UserId, RoleName = Enum.GetName(typeof(UserRoles), user.RoleId), UserName = user.DisplayName }; AuthenticationManager.SignOut(DefaultAuthenticationTypes.ExternalCookie); AuthenticationManager.SignIn(new AuthenticationProperties() { IsPersistent = true }, await appUser.GenerateUserIdentityAsync(userManager)); return RedirectToAction("Index", "Home"); } else { ModelState.AddModelError("", "An unknown error occurred."); } } return View(model); } return View(model); }