Diffstat (limited to 'internal/router/handlers/lang-blog.go')
| -rw-r--r-- | internal/router/handlers/lang-blog.go | 37 |
1 files changed, 10 insertions, 27 deletions
diff --git a/internal/router/handlers/lang-blog.go b/internal/router/handlers/lang-blog.go index c31c2eb..e4c20c6 100644 --- a/internal/router/handlers/lang-blog.go +++ b/internal/router/handlers/lang-blog.go @@ -9,9 +9,8 @@ import ( "strings" "time" - "github.com/SayaAndy/saya-today-web/internal/blog" + "github.com/SayaAndy/saya-today-web/internal/b2" "github.com/SayaAndy/saya-today-web/internal/router" - "github.com/SayaAndy/saya-today-web/l10n" "github.com/gofiber/fiber/v2" ) @@ -48,26 +47,11 @@ func (r *CatalogueHandler) ToValidateLang() router.LangSetting { return router.InPath } -func (r *CatalogueHandler) SitemapInfo(supplements *router.Supplements) []router.SitemapInfo { - sitemapInfo := []router.SitemapInfo{} - for _, lang := range supplements.AvailableLanguages { - sitemapInfo = append(sitemapInfo, router.SitemapInfo{Loc: "/" + lang.Name + "/blog", Priority: 0.3}) - } - return sitemapInfo -} - -func (r *CatalogueHandler) AddMeta(c *fiber.Ctx, supplements *router.Supplements, lang string, templateMap fiber.Map) (meta []router.MetaField, err error) { - return []router.MetaField{ - {Property: "og:title", Content: l10n.T.GetPath(lang, "BlogSearch", "Header").(string)}, - {Property: "og:description", Content: l10n.T.GetPath(lang, "BlogSearch", "Description").(string)}, - {Property: "og:url", Content: fmt.Sprintf("%s/%s/blog", templateMap["CanonicalEndpoint"], lang)}, - {Property: "og:type", Content: "website"}, - }, nil -} - func (r *CatalogueHandler) RenderBody(c *fiber.Ctx, supplements *router.Supplements, lang string, templateMap fiber.Map) (statusCode int, err error) { - querySort := c.Query("sort", "publicationDateDesc") - previousBlogPage := c.Query("codename") + querySort := c.Query("sort") + if querySort == "" { + querySort = "publicationDateDesc" + } encodedQuery := c.Request().URI().QueryString() decodedQuery, _ := url.QueryUnescape(string(encodedQuery)) @@ -78,7 +62,7 @@ func (r *CatalogueHandler) RenderBody(c *fiber.Ctx, supplements *router.Suppleme queryTags = append(queryTags, string(match[1])) } - tagsArray, err := getTags(supplements.BlogClient, lang) + tagsArray, err := getTags(supplements.B2Client, lang) if err != nil { return fiber.StatusInternalServerError, fmt.Errorf("failed to get the available tags") } @@ -86,14 +70,13 @@ func (r *CatalogueHandler) RenderBody(c *fiber.Ctx, supplements *router.Suppleme templateMap["Tags"] = tagsArray templateMap["QuerySort"] = querySort templateMap["QueryTags"] = strings.Join(queryTags, ",") - templateMap["Title"] = l10n.T.GetPath(lang, "BlogSearch", "Header").(string) - templateMap["PreviousBlogPage"] = previousBlogPage + templateMap["Title"] = supplements.Localization[lang].BlogSearch.Header return fiber.StatusOK, nil } func (r *CatalogueHandler) RenderHeader(c *fiber.Ctx, supplements *router.Supplements, lang string, templateMap fiber.Map) (statusCode int, err error) { - templateMap["Title"] = l10n.T.GetPath(lang, "BlogSearch", "Header").(string) + templateMap["Title"] = supplements.Localization[lang].BlogSearch.Header return fiber.StatusOK, nil } @@ -102,8 +85,8 @@ type Tag struct { Count int `json:"Count" yaml:"count"` } -func getTags(blogClient blog.Client, lang string) (tags []Tag, err error) { - pages, err := blogClient.Scan(lang + "/") +func getTags(b2Client *b2.B2Client, lang string) (tags []Tag, err error) { + pages, err := b2Client.Scan(lang + "/") if err != nil { slog.Warn("failed to scan pages via b2", slog.String("error", err.Error())) return nil, fmt.Errorf("failed to scan pages via b2: %w", err) |