summaryrefslogtreecommitdiffci
path: root/internal/router/handlers/lang-user.go
diff refs
from: back
to: back
| flip
diff options
context:
space:
mode:
Diffstat (limited to 'internal/router/handlers/lang-user.go')
-rw-r--r--internal/router/handlers/lang-user.go89
1 files changed, 0 insertions, 89 deletions
diff --git a/internal/router/handlers/lang-user.go b/internal/router/handlers/lang-user.go
deleted file mode 100644
index 085a9aa..0000000
--- a/internal/router/handlers/lang-user.go
+++ /dev/null
@@ -1,89 +0,0 @@
-package handlers
-
-import (
- "fmt"
- "log/slog"
-
- "github.com/SayaAndy/saya-today-web/internal/mailer"
- "github.com/SayaAndy/saya-today-web/internal/router"
- "github.com/SayaAndy/saya-today-web/l10n"
- "github.com/gofiber/fiber/v2"
-)
-
-func init() {
- router.Routes = append(router.Routes, &UserHandler{})
-}
-
-type UserHandler struct {
- router.BasicHandler
-}
-
-func (r *UserHandler) Filter() (method string, path string) {
- return "GET", "/:lang/user"
-}
-
-func (r *UserHandler) IsTemplated() bool {
- return true
-}
-
-func (r *UserHandler) TemplatesToInject() []string {
- return []string{"views/pages/user-page.html"}
-}
-
-func (r *UserHandler) ToCache() router.CacheSetting {
- return router.Disabled
-}
-
-func (r *UserHandler) ToValidateLang() router.LangSetting {
- return router.InPath
-}
-
-func (r *UserHandler) AddMeta(c *fiber.Ctx, supplements *router.Supplements, lang string, templateMap fiber.Map) (meta []router.MetaField, err error) {
- return []router.MetaField{
- {Name: "robots", Content: "noindex,nofollow"},
- {Property: "og:title", Content: l10n.T.GetPath(lang, "UserProfile", "Header").(string)},
- {Property: "og:description", Content: l10n.T.GetPath(lang, "UserProfile", "Description").(string)},
- {Property: "og:url", Content: fmt.Sprintf("%s/%s/user", templateMap["CanonicalEndpoint"], lang)},
- {Property: "og:type", Content: "website"},
- }, nil
-}
-
-func (r *UserHandler) RenderBody(c *fiber.Ctx, supplements *router.Supplements, lang string, templateMap fiber.Map) (statusCode int, err error) {
- templateMap["Title"] = l10n.T.GetPath(lang, "UserProfile", "Header").(string)
-
- email, _, err := supplements.Mailer.GetInfo(supplements.Mailer.GetHash(c.IP()))
- if err != nil {
- slog.Error("get info from mailer about a client", slog.String("error", err.Error()))
- }
-
- tagsArray, err := getTags(supplements.BlogClient, lang)
- if err != nil {
- return fiber.ErrInternalServerError.Code, fmt.Errorf("failed to get the available tags")
- }
-
- subscriptionType, tags, err := supplements.Mailer.GetSubscriptions(c.IP())
- if err != nil {
- return fiber.ErrInternalServerError.Code, fmt.Errorf("failed to get the user subscriptions")
- }
-
- switch subscriptionType {
- case mailer.None:
- templateMap["TagsPicked"] = "none"
- case mailer.All:
- templateMap["TagsPicked"] = "all"
- case mailer.Specific:
- templateMap["TagsPicked"] = "specific"
- }
-
- templateMap["TagsPickedList"] = tags
-
- templateMap["Email"] = email
- templateMap["EmailCode"] = c.Query("email_code")
- templateMap["ExistingTags"] = tagsArray
- return fiber.StatusOK, nil
-}
-
-func (r *UserHandler) RenderHeader(c *fiber.Ctx, supplements *router.Supplements, lang string, templateMap fiber.Map) (statusCode int, err error) {
- templateMap["Title"] = l10n.T.GetPath(lang, "UserProfile", "Header").(string)
- return fiber.StatusOK, nil
-}