diff options
author | Alan Pearce | 2024-04-17 20:31:14 +0200 |
---|---|---|
committer | Alan Pearce | 2024-04-17 20:53:45 +0200 |
commit | 4dfd72e68c385a6f02370e38831f33e644276055 (patch) | |
tree | 6536fa38d96e27207baf062bc992af6654e44ccd /internal/atom/atom.go | |
parent | 347d0cd1a73921a8cbc43798a7fbe2095791bbe9 (diff) | |
download | website-4dfd72e68c385a6f02370e38831f33e644276055.tar.lz website-4dfd72e68c385a6f02370e38831f33e644276055.tar.zst website-4dfd72e68c385a6f02370e38831f33e644276055.zip |
use internal imports correctly
Diffstat (limited to 'internal/atom/atom.go')
-rw-r--r-- | internal/atom/atom.go | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/internal/atom/atom.go b/internal/atom/atom.go new file mode 100644 index 0000000..f2ca4a9 --- /dev/null +++ b/internal/atom/atom.go @@ -0,0 +1,43 @@ +package atom + +import ( + "encoding/xml" + "time" + + . "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"` + Content FeedContent `xml:"content"` + Author string `xml:"author>name"` +} |