/*
* Copyright (C) 2024 Jonni Liljamo <jonni@liljamo.com>
*
* This file is licensed under AGPL-3.0-or-later, see NOTICE and LICENSE for
* more information.
*/
package handlers
import (
"net/http"
"git.src.quest/~liljamo/felu/internal/components"
"git.src.quest/~liljamo/felu/internal/db"
"github.com/gin-gonic/gin"
)
// Manage returns a gin handler
func Manage() gin.HandlerFunc {
return func(c *gin.Context) {
c.HTML(http.StatusOK, "", components.Manage())
}
}
// ManageUser returns a gin handler
func ManageUser() gin.HandlerFunc {
return func(c *gin.Context) {
userID, exists := c.Get("user_id")
if !exists {
c.String(http.StatusInternalServerError, "This should not be possible, but don't quote me on that, S01E01")
c.Abort()
return
}
user, err := db.FetchUserWithID(userID.(string))
if err != nil {
c.String(http.StatusInternalServerError, "This should not be possible, but don't quote me on that, S01E02")
c.Abort()
return
}
c.HTML(http.StatusOK, "", components.ManageUser(user.Email))
}
}