public async Task <ResponceResult> Login(LoginModel model) //Set to AuthenticationManager { ResponceResult responce = new ResponceResult(); responce.Succeeded = true; var user = await UserManager.FindByEmailAsync(model.Email); if (user == null) { responce.Succeeded = false; responce.Errors.Add("LOGIN_NOT_FOUND"); return(responce); } bool passIsCorrect = await UserManager.CheckPasswordAsync(user, model.Password); if (!passIsCorrect) { responce.Succeeded = false; responce.Errors.Add("INCORRECT_PWD"); return(responce); } user.SecurityStamp = CreateToken(user); UserInfo user_dt = new UserInfo() { Email = user.Email, DisplayName = user.UserName, Token = user.SecurityStamp }; responce.data.Add(user_dt); return(responce); }
public async Task <ResponceResult> Register(RegisterModel model) //Set to AuthenticationManager { ResponceResult responce = new ResponceResult(); responce.Succeeded = true; if (model.Email == null || model.Email.Length <= 3) { responce.Succeeded = false; responce.Errors.Add("ERROR_EMAIL_REQUIRED"); } if (model.Password.Length <= 6 || model.Password == null) { responce.Succeeded = false; responce.Errors.Add("ERROR_PASSWORD_LENGTH"); } if (model.Password != model.ConfirmPassword) { responce.Succeeded = false; responce.Errors.Add("PWD_CPWD_NOT_MATCH"); } ApplicationUser findByEmail = await UserManager.FindByEmailAsync(model.Email); if (findByEmail != null) { responce.Succeeded = false; responce.Errors.Add("EMAIL_IS_EXISTS"); } if (responce.Succeeded == false) { return(responce); } string uName = ""; if (model.UserName.Length == 0) { foreach (char symbol in model.Email) { if (symbol == '@') { break; } uName += symbol; } } else { uName = model.UserName; } ApplicationUser user = new ApplicationUser() { UserName = uName, Email = model.Email }; IdentityResult result = await UserManager.CreateAsync(user, model.Password); if (!result.Succeeded) { responce.Succeeded = false; foreach (var error in result.Errors) { string error_str = error.Code; //+ ": " + error.Description; responce.Errors.Add(error_str); } return(responce); } return(responce); }