public async Task <IActionResult> Login([FromBody] SaveApplicationUserResource userInfo) { bool result = false; if (ModelState.IsValid) { var userExist = await repository.UserExist(userInfo.Email); if (userExist) { result = await repository.Login(userInfo.Email, userInfo.Password); } if (result) { return(Ok(repository.BuildToken(mapper.Map <SaveApplicationUserResource, ApplicationUser>(userInfo)))); } else { ModelState.AddModelError(string.Empty, "Invalid login attempt."); return(BadRequest(ModelState)); } } else { return(BadRequest(ModelState)); } }
public async Task <IActionResult> CreateUser([FromBody] SaveApplicationUserResource userInfo) { if (ModelState.IsValid) { var user = new ApplicationUser { UserName = userInfo.Email, Email = userInfo.Email, FirstName = userInfo.FirstName }; var userExist = await repository.UserExist(userInfo.Email); if (userExist) { return(BadRequest("This user alraedy exist")); } var result = await repository.Register(user, userInfo.Password); if (result) { return(Ok(repository.BuildToken(mapper.Map <SaveApplicationUserResource, ApplicationUser>(userInfo)))); } else { return(BadRequest("Password invalid, You must use alphanumeric caracters, numbers and upper case")); } } else { return(BadRequest(ModelState)); } }