public IActionResult Login([FromBody] Auth_LoginUserModel loginUser) { Console.WriteLine("api/auth/login"); // Validate user inputed data Tuple <bool, string> validation = _inputValidations.Auth_LoginUserModelValidation(loginUser); if (!validation.Item1) { return(StatusCode(405, validation.Item2)); } loginUser.password = Hash.HashPassword(loginUser.password); int userID = _authAction.PasswordMatch(loginUser.emailOrUsername, loginUser.password); if (userID == -1) { return(StatusCode(405, "Incorrect password.")); } else { if (UpdateToken(_authAction.GetUsersData(userID).userID)) { return(Ok("Successfully logged in to your account!")); } else { return(StatusCode(500, "something went wrong")); } } }
public Tuple <bool, string> Auth_LoginUserModelValidation(Auth_LoginUserModel loginUser) { string[] stringsToValidate = { loginUser.emailOrUsername, loginUser.password }; // if the inputed data is not email if (!IsValidEmail(loginUser.emailOrUsername)) { Tuple <bool, string> doneUsernameValidation = UsernameInputChecker(loginUser.emailOrUsername); if (!doneUsernameValidation.Item1) { return(doneUsernameValidation); } } Tuple <bool, string> doneGeneralValidation = GeneralInputChecker(stringsToValidate); if (!doneGeneralValidation.Item1) { return(doneGeneralValidation); } return(Tuple.Create(true, String.Empty)); }