hopefully fixed a funny

This commit is contained in:
murm 2022-06-22 21:41:55 -04:00
parent a9ea786279
commit 1b0d368d63
2 changed files with 50 additions and 38 deletions

80
db.go
View File

@ -84,45 +84,57 @@ func getAuthToken(username string, password string) (string, error) {
return authToken, nil
}
func checkClientToken(clientToken string, userName string) (string, error) {
// assumes user is already logged in
sqlStatement := `
SELECT id FROM users WHERE client_token = ? AND username = ?;
`
var x string
err := DB.QueryRow(sqlStatement, clientToken, userName).Scan(&x)
// func checkClientToken(clientToken string, userName string) (string, error) {
// // assumes user is already logged in
// sqlStatement := `
// SELECT id FROM users WHERE client_token = ? AND username = ?;
// `
// var x string
// err := DB.QueryRow(sqlStatement, clientToken, userName).Scan(&x)
// check if row exists
if err != nil && err != sql.ErrNoRows {
// // check if row exists
// if err != nil && err != sql.ErrNoRows {
// return "", err
// }
// if err == nil {
// return clientToken, nil
// } else {
// clientToken = uuid.New().String()
// sqlStatement := `
// UPDATE users SET client_token = ? WHERE username = ?;
// `
// _, err := DB.Exec(sqlStatement, clientToken, userName)
// if err != nil {
// return "", err
// }
// clearAuthToken(userName)
// return clientToken, nil
// }
// }
func checkClientToken(clientToken string, userName string) (string, error) {
// actually just stores the token instead of checking if it's valid
sqlStatement := `
UPDATE users SET client_token = ? WHERE username = ?;
`
_, err := DB.Exec(sqlStatement, clientToken, userName)
if err != nil {
return "", err
}
if err == nil {
return clientToken, nil
} else {
clientToken = uuid.New().String()
sqlStatement := `
UPDATE users SET client_token = ? WHERE username = ?;
`
_, err := DB.Exec(sqlStatement, clientToken, userName)
if err != nil {
return "", err
}
clearAuthToken(userName)
return clientToken, nil
}
return clientToken, nil
}
func clearAuthToken(username string) error {
// runs when user logs out
sqlStatement := `
UPDATE users SET auth_token = ? WHERE username = ?;
`
_, err := DB.Exec(sqlStatement, "", username)
if err != nil {
return err
}
return nil
}
// func clearAuthToken(username string) error {
// // runs when user logs out
// sqlStatement := `
// UPDATE users SET auth_token = ? WHERE username = ?;
// `
// _, err := DB.Exec(sqlStatement, "", username)
// if err != nil {
// return err
// }
// return nil
// }
// func insertAuthToken(authToken string, userName string) error {
// sqlStatement := `

View File

@ -7,10 +7,10 @@ import (
"github.com/gorilla/mux"
)
func notFoundStub(w http.ResponseWriter, r *http.Request) {
err := YggError{Code: 404, Error: "Not Found", ErrorMessage: "The server has not found anything matching the request URI"}
sendError(w, err)
}
// func notFoundStub(w http.ResponseWriter, r *http.Request) {
// err := YggError{Code: 404, Error: "Not Found", ErrorMessage: "The server has not found anything matching the request URI"}
// sendError(w, err)
// }
func handleRequests() {
r := mux.NewRouter().StrictSlash(true)