diff --git a/main.go b/main.go
index 6c7e87c..1b1adf3 100644
--- a/main.go
+++ b/main.go
@@ -75,6 +75,11 @@ func main() {
server.Use(cache.New(
cache.Config{
Next: func(c *fiber.Ctx) bool {
+ resp_code := c.Response().StatusCode()
+ if resp_code < 200 || resp_code >= 300 {
+ return true
+ }
+
// Disable cache for settings page
return strings.Contains(c.Path(), "/settings") || c.Path() == "/"
},
@@ -103,6 +108,12 @@ func main() {
return c.Next()
})
+ server.Use(func(c *fiber.Ctx) error {
+ var baseURL string
+ c.Bind(fiber.Map{"FullURL": baseURL + c.OriginalURL(), "BaseURL": baseURL})
+ return c.Next()
+ })
+
server.Static("/favicon.ico", "./views/assets/favicon.ico")
server.Static("css/", "./views/css")
server.Static("assets/", "./views/assets")
diff --git a/pages/artwork.go b/pages/artwork.go
index 27d105e..3b9a431 100644
--- a/pages/artwork.go
+++ b/pages/artwork.go
@@ -21,8 +21,10 @@ func ArtworkPage(c *fiber.Ctx) error {
// Optimize this
return c.Render("pages/artwork", fiber.Map{
- "Illust": illust,
- "Title": illust.Title,
- "PageType": "artwork",
+ "Illust": illust,
+ "Title": illust.Title,
+ "PageType": "artwork",
+ "MetaDescription": illust.Description,
+ "MetaImage": illust.Images[0].Original,
})
}
diff --git a/pages/search.go b/pages/search.go
new file mode 100644
index 0000000..db9e32d
--- /dev/null
+++ b/pages/search.go
@@ -0,0 +1,34 @@
+package pages
+
+// import (
+// session "codeberg.org/vnpower/pixivfe/v2/core/config"
+// core "codeberg.org/vnpower/pixivfe/v2/core/webapi"
+// "github.com/gofiber/fiber/v2"
+// )
+
+// func IndexPage(c *fiber.Ctx) error {
+
+// // If token is set, do the landing request...
+// if token := session.CheckToken(c); token != "" {
+// mode := c.Query("mode", "all")
+
+// works, err := core.GetLanding(c, mode)
+
+// if err != nil {
+// return err
+// }
+
+// return c.Render("pages/index", fiber.Map{
+// "Title": "Landing", "Data": works,
+// })
+// }
+
+// // ...otherwise, default to today's illustration ranking
+// works, err := core.GetRanking(c, "daily", "illust", "", "1")
+// if err != nil {
+// return err
+// }
+// return c.Render("pages/index", fiber.Map{
+// "Title": "Landing", "NoTokenData": works,
+// })
+// }
diff --git a/views/layout.jet.html b/views/layout.jet.html
index d15fe4e..40c96c9 100644
--- a/views/layout.jet.html
+++ b/views/layout.jet.html
@@ -10,6 +10,25 @@
+
+ {{ if BaseURL }}
+
+
+
+
+
+
+ {{ if isset(MetaDescription) }}
+
+ {{ end }}
+
+ {{ if isset(MetaImage) }}
+
+ {{ end }}
+ {{ end }}