From 56b0df9e6c84bbcdaffbde50632e7fdd992791e5 Mon Sep 17 00:00:00 2001 From: Alan Pearce Date: Mon, 15 Apr 2024 08:55:53 +0200 Subject: wip: render feeds --- cmd/build/atom.go | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 cmd/build/atom.go (limited to 'cmd/build/atom.go') diff --git a/cmd/build/atom.go b/cmd/build/atom.go new file mode 100644 index 0000000..9116278 --- /dev/null +++ b/cmd/build/atom.go @@ -0,0 +1,43 @@ +package main + +import ( + "encoding/xml" + "time" + + . "alanpearce.eu/website/internal/config" +) + +func makeTagURI(config Config, specific string) string { + return "tag:" + config.OriginalDomain + "," + config.DomainStartDate + ":" + specific +} + +type Link struct { + XMLName xml.Name `xml:"link"` + Rel string `xml:"rel,attr"` + Type string `xml:"type,attr"` + Href string `xml:"href,attr"` +} + +func makeLink(url string) Link { + return Link{ + Rel: "alternate", + Type: "text/html", + Href: url, + } +} + +type FeedContent struct { + Content string `xml:",innerxml"` + Type string `xml:"type,attr"` +} + +type FeedEntry struct { + XMLName xml.Name `xml:"entry"` + Title string `xml:"title"` + Link Link `xml:"link"` + Id string `xml:"id"` + Updated time.Time `xml:"updated"` + Summary string `xml:"summary,omitempty"` + Author string `xml:"author>name"` + Content FeedContent `xml:"content"` +} -- cgit 1.4.1