public async Task <IActionResult> Register([FromBody] CustomRegisterModel model) { if (!ModelState.IsValid) { var errors = CustomValidator.GetErrorsByModel(ModelState); return(BadRequest(errors)); } var user = new DbUser { UserName = model.Email, Email = model.Email }; var result = await _userManager .CreateAsync(user, model.Password); if (!result.Succeeded) { var errors = CustomValidator.GetErrorsByIdentityResult(result); return(BadRequest(errors)); } var roleName = "User"; var roleresult = _roleManager.CreateAsync(new DbRole { Name = roleName }).Result; result = _userManager.AddToRoleAsync(user, roleName).Result; _userService.AddUserProfile(user.Id, model); await _signInManager.SignInAsync(user, isPersistent : false); return(Ok(CreateToken(user))); }
public async Task <IActionResult> Register([FromBody] CustomRegisterModel model) { if (!ModelState.IsValid) { var errors = CustomValidator.GetErrorsByModel(ModelState); return(BadRequest(errors)); } var user = new DbUser { UserName = model.Email, Email = model.Email }; var result = await _userManager .CreateAsync(user, model.Password); if (!result.Succeeded) { return(BadRequest("Bad create user!")); } await _signInManager.SignInAsync(user, isPersistent : false); return(Ok(CreateToken(user))); }
public async Task <IActionResult> Register([FromBody] CustomRegisterModel model) { if (!ModelState.IsValid) { var errors = CustomValidator.GetErrorsByModel(ModelState); return(BadRequest(errors)); } if (!CaptchaHelper.VerifyAndExpireSolution(this.HttpContext, model.CaptchaKey, model.CaptchaText)) { var invalid = new Dictionary <string, string>(); invalid.Add("captchaText", "Error captcha text. Renew captcha and repeat again."); return(BadRequest(invalid)); } string path = _fileService.UploadImage(model.ImageBase64); var user = new DbUser { UserName = model.Email, Email = model.Email, DateOfBirth = model.DateOfBirth, FirstName = model.FirstName, MiddleName = model.MiddleName, LastName = model.LastName, SignUpTime = DateTime.Now, AvatarUrl = path }; var result = await _userManager .CreateAsync(user, model.Password); if (!result.Succeeded) { var errors = CustomValidator.GetErrorsByIdentityResult(result); return(BadRequest(errors)); } var roleName = "User"; var roleresult = _roleManager.CreateAsync(new DbRole { Name = roleName }).Result; result = _userManager.AddToRoleAsync(user, roleName).Result; await _signInManager.SignInAsync(user, isPersistent : false); return(Ok()); }
public async Task <IActionResult> Register([FromBody] CustomRegisterModel model) { if (!ModelState.IsValid) { var errors = CustomValidator.GetErrorsByModel(ModelState); return(BadRequest(errors)); } string path = _fileService.UploadImage(model.ImageBase64); var user = new DbUser { UserName = model.Email, Email = model.Email, DateOfBirth = model.DateOfBirth, FirstName = model.FirstName, MiddleName = model.MiddleName, LastName = model.LastName, SignUpTime = DateTime.Now, AvatarUrl = path }; var result = await _userManager .CreateAsync(user, model.Password); if (!result.Succeeded) { var errors = CustomValidator.GetErrorsByIdentityResult(result); return(BadRequest(errors)); } var roleName = "User"; var roleresult = _roleManager.CreateAsync(new DbRole { Name = roleName }).Result; result = _userManager.AddToRoleAsync(user, roleName).Result; await _signInManager.SignInAsync(user, isPersistent : false); return(Ok(_jWTTokenService.CreateToken(_configuration, user, _userManager))); }
public void AddUserProfile(string id, CustomRegisterModel model) { string path = _fileService.UploadImage(model.ImageBase64); var userImage = new UserImage { Id = id, Path = path }; _context.UserImages.Add(userImage); _context.SaveChanges(); var userProfile = new UserProfile { Id = id, FirstName = model.FirstName, MiddleName = model.MiddleName, LastName = model.LastName, DateOfBirth = model.DateOfBirth }; _context.UserProfiles.Add(userProfile); _context.SaveChanges(); }