// Authenticate - autenticate a user and return true or return false and send an unauthorized status func Authenticate(currentUser *models.User, w http.ResponseWriter, r *http.Request) bool { token := core.ExtractToken(r.Header.Get("Authorization")) user, err := models.GetUserByToken(token) if err != nil { Unauthorized(w, r) return false } currentUser.ID = user.ID currentUser.Email = user.Email currentUser.Password = user.Password if currentUser.ID == 0 { Unauthorized(w, r) return false } return true }