tijl.dev-core/internal/handlers/routes.go
tijl 092ee796bd
Some checks failed
build / build (push) Failing after 0s
reorganize
2024-08-21 23:43:54 +02:00

64 lines
1.5 KiB
Go

package handlers
import (
"io/fs"
"net/http"
"git.tijl.dev/tijl/tijl.dev/internal/config"
"git.tijl.dev/tijl/tijl.dev/internal/i18n"
"git.tijl.dev/tijl/tijl.dev/internal/oidc"
"git.tijl.dev/tijl/tijl.dev/modules/web"
"git.tijl.dev/tijl/tijl.dev/web/assets"
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/filesystem"
)
func Setup() {
web.RegisterAppSetupFunc(routes)
}
func routes(app *fiber.App) {
app.Get("/", func(c *fiber.Ctx) error {
data := *web.Common(c)
data["Title"] = i18n.Translate(c, "home")
return c.Render("index", data, "layouts/base")
})
app.Get("/blog", func(c *fiber.Ctx) error {
data := *web.Common(c)
data["Title"] = i18n.Translate(c, "blog")
return c.Render("blog", data, "layouts/base")
})
app.Get("/projects", func(c *fiber.Ctx) error {
data := *web.Common(c)
data["Title"] = i18n.Translate(c, "projects")
return c.Render("projects", data, "layouts/base")
})
app.Get("/about", func(c *fiber.Ctx) error {
data := *web.Common(c)
data["Title"] = i18n.Translate(c, "about")
return c.Render("about", data, "layouts/base")
})
app.Get("/settings", settingsHandler)
app.Get("/login", loginHandler)
app.Get(config.Config.Oidc.CallbackUrl, oidc.HandleCallback)
/*
Static
*/
static, _ := fs.Sub(assets.StaticEmbed, "static")
app.Use("/static/", filesystem.New(filesystem.Config{
Root: http.FS(static),
}))
/*
404
*/
app.Use(func(c *fiber.Ctx) error {
data := *web.Common(c)
return c.Render("404", data, "layouts/base")
})
}