Slowly moving this to an API instead of back+front end.

This commit is contained in:
Ada Werefox 2025-04-22 22:34:38 -07:00
parent d20eff4306
commit 253ffac472

View file

@ -131,7 +131,6 @@ func authCallback(context *gin.Context) {
var err error
oauthToken, err := oauthConfig.Exchange(context.Request.Context(), context.Query("code"))
if err != nil {
context.HTML(http.StatusInternalServerError, "internalservererror.html", gin.H{
"message": "internalservererror",
})
@ -140,10 +139,11 @@ func authCallback(context *gin.Context) {
context.SetCookie("discord-oauthtoken", string(oauthTokenJSON), 0, "", config.API.Domain, false, false)
user := getDiscordUser(context, oauthToken)
createOrUpdateUser(context, oauthToken, user)
context.Redirect(http.StatusTemporaryRedirect, "/dashboard")
context.Redirect(http.StatusTemporaryRedirect, "http://localhost:15995/dashboard")
}
func getDiscordUser(context *gin.Context, oauthToken *oauth2.Token) discordUser {
log.Println(*oauthToken)
response, err := oauthConfig.Client(context.Request.Context(), oauthToken).Get("https://discord.com/api/users/@me")
if err != nil || response.StatusCode != 200 {
responseMessage := ""
@ -163,6 +163,7 @@ func getDiscordUser(context *gin.Context, oauthToken *oauth2.Token) discordUser
"message": err.Error(),
})
}
log.Println(string(body))
var user discordUser
json.Unmarshal(body, &user)
return user
@ -203,6 +204,7 @@ func createOrUpdateUser(context *gin.Context, oauthToken *oauth2.Token, user dis
func dashboardDisplay(context *gin.Context) {
oauthTokenJSON, err := context.Cookie("discord-oauthtoken")
log.Println(oauthTokenJSON)
if err == nil {
var oauthToken *oauth2.Token
err := json.Unmarshal([]byte(oauthTokenJSON), &oauthToken)
@ -210,9 +212,10 @@ func dashboardDisplay(context *gin.Context) {
if oauthToken.Valid() {
user := getDiscordUser(context, oauthToken)
if dbcommands.DatabaseUserLoggedIn(db, user.Id) {
context.HTML(http.StatusOK, "dashboard.html", user)
context.JSON(http.StatusOK, user)
return
} else {
context.Redirect(http.StatusTemporaryRedirect, "/logout")
context.Redirect(http.StatusTemporaryRedirect, "http://localhost:31337/logout")
}
return
}