This commit is contained in:
iacore
2024-03-20 14:40:22 +00:00
parent fd7b78862f
commit d1dd363c5a
3 changed files with 42 additions and 5 deletions
+1 -1
View File
@@ -212,7 +212,7 @@ func main() {
server.Get("/rankingCalendar", pages.RankingCalendarPage)
server.Post("/rankingCalendar", pages.RankingCalendarPicker)
server.Get("/users/:id.atom.xml", pages.UserAtomFeed)
server.Get("/users/:id/:category.atom.xml", pages.UserAtomFeed)
server.Get("/users/:id/:category?.atom.xml", pages.UserAtomFeed)
server.Get("/users/:id/:category?", pages.UserPage)
server.Get("/artworks/:id/", pages.ArtworkPage).Name("artworks")
server.Get("/artworks/:id/embed", pages.ArtworkEmbedPage)
+19 -4
View File
@@ -1,9 +1,9 @@
package pages
import (
"errors"
"math"
"strconv"
"time"
core "codeberg.org/vnpower/pixivfe/v2/core/webapi"
"github.com/gofiber/fiber/v2"
@@ -74,7 +74,22 @@ func UserAtomFeed(c *fiber.Ctx) error {
if err != nil {
return err
}
_ = data
return errors.New("unimplemented")
err = c.Render("pages/user.atom", fiber.Map{
"URL": string(c.Request().RequestURI()),
"Title": data.user.Name,
"User": data.user,
"Category": data.category,
"Updated": time.Now().Format(time.RFC3339),
"PageLimit": data.pageLimit,
"Page": data.pageCurrent,
// "MetaImage": data.user.BackgroundImage,
}, "")
if err != nil {
return err
}
c.Context().SetContentType("application/atom+xml")
return nil
}
+22
View File
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>{* <?xml-stylesheet href="/feed.xsl" type="text/xsl"?> *}
<feed xmlns="http://www.w3.org/2005/Atom">
<title>{{ Title }}</title>
<link rel="alternate" href="{{ BaseURL }}/users/{{ User.ID }}/{{ Category }}"/>
<link rel="self" href="{{ BaseURL }}{{ URL }}"/>
<updated>{{ Updated }}</updated>
<author>
<name>{{ User.Name }}</name>
</author>
<id>{{ BaseURL }}{{ URL }}</id>
<entry>
<id>TK: art URL</id>
<link rel="self" href="TK: art URL" />
<title>TK</title>
<updated>TK: ISO8601 time</updated>
<content type="xhtml" xml:base="TK: art URL">
<div xmlns="http://www.w3.org/1999/xhtml">
TK: xhtml content here
</div>
</content>
</entry>
</feed>