From 33f306472fcd818e13d5387c828fa61072ace101 Mon Sep 17 00:00:00 2001 From: orangix Date: Thu, 17 Aug 2023 12:38:37 +0200 Subject: [PATCH] cleaner tag parameters --- api/tag.go | 5 +---- pages/post.go | 8 ++++++-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/api/tag.go b/api/tag.go index 73a0642..5ca19e8 100644 --- a/api/tag.go +++ b/api/tag.go @@ -69,10 +69,7 @@ func (client *Client) FetchTag(tag string, sort string, page string) (Tag, error func(key, value gjson.Result) bool { url, _ := url.Parse(strings.ReplaceAll(value.Get("url").String(), "https://imgur.com", "")) q := url.Query() - q.Add("tag", tag) - q.Add("sort", sort) - q.Add("page", page) - q.Add("i", key.String()) + q.Add("tag", tag+"."+sort+"."+page+"."+key.String()) url.RawQuery = q.Encode() posts = append(posts, Submission{ diff --git a/pages/post.go b/pages/post.go index 835f2a4..c283064 100644 --- a/pages/post.go +++ b/pages/post.go @@ -80,8 +80,12 @@ func HandlePost(c *fiber.Ctx) error { } c.Set("Content-Security-Policy", csp) - tag, sort, page, index := c.Query("tag"), c.Query("sort"), c.Query("page"), c.Query("i") - next := nextInTag(ApiClient, tag, sort, page, index) + var next string + tagParam := strings.Split(c.Query("tag"), ".") + if len(tagParam) == 4 { + tag, sort, page, index := tagParam[0], tagParam[1], tagParam[2], tagParam[3] + next = nextInTag(ApiClient, tag, sort, page, index) + } return c.Render("post", fiber.Map{ "post": post,