public ActionResult SetPassword(string token, [FromBody] string password) { try { using (var tokenDAO = new TokenDAO()) { var validToken = tokenDAO.GetByHash(token); if (validToken != null && !string.IsNullOrEmpty(password)) { using (var userDAO = new UserDAO()) if (userDAO.SetPassword(validToken.User.Id, password)) { tokenDAO.Remove(validToken.Code); } return(StatusCode(202, new { Message = "Senha definida" })); } return(StatusCode(406, new { Message = "Token inválido" })); } } catch (Exception ex) { return(StatusCode(500, new { Message = "Falha ao definir senha" })); } }
public ActionResult GetToken(string token) { try { Token validToken; using (var tokenDAO = new TokenDAO()) validToken = tokenDAO.GetByHash(token); return((validToken != null) ? StatusCode(200, validToken) : StatusCode(406, new { Message = "Token inválido" })); } catch (Exception ex) { return(StatusCode(500, new { Message = "Falha ao obter token" })); } }