From f3b5c8136217fd57f7ae948a153f3510558a139d Mon Sep 17 00:00:00 2001 From: SayaAndy Date: Mon, 18 Aug 2025 18:49:21 +0700 Subject: refactor: have routes in separate files --- internal/router/root.go | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 internal/router/root.go (limited to 'internal/router/root.go') diff --git a/internal/router/root.go b/internal/router/root.go new file mode 100644 index 0000000..f5be6cb --- /dev/null +++ b/internal/router/root.go @@ -0,0 +1,24 @@ +package router + +import ( + "log/slog" + + "github.com/SayaAndy/saya-today-web/config" + "github.com/SayaAndy/saya-today-web/internal/templatemanager" + "github.com/gofiber/fiber/v2" +) + +func Root(tm *templatemanager.TemplateManager, localeCfg []config.AvailableLanguageConfig) func(c *fiber.Ctx) error { + return func(c *fiber.Ctx) error { + content, err := tm.Render("index", fiber.Map{ + "AvailableLanguages": localeCfg, + }) + if err != nil { + slog.Warn("failed to generate page", slog.String("page", "/"), slog.String("error", err.Error())) + c.Set(fiber.HeaderContentType, fiber.MIMETextPlainCharsetUTF8) + return c.Status(fiber.ErrInternalServerError.Code).SendString("failed to generate page") + } + + return c.Type("html").Send(content) + } +} -- cgit v1.3.1+13