diff options
author | Adam Mathes <adam@trenchant.org> | 2017-12-17 10:52:09 -0800 |
---|---|---|
committer | Adam Mathes <adam@trenchant.org> | 2017-12-17 10:52:09 -0800 |
commit | 24fdaa7a398c1ec20c8b02e51ef362248c3adf4e (patch) | |
tree | b1a9e5d19b123a36301d026961c828a59d4e2374 | |
parent | 6e33ee7e84d98eed6201a578d965565fb67a9776 (diff) | |
download | snkt-24fdaa7a398c1ec20c8b02e51ef362248c3adf4e.tar.gz snkt-24fdaa7a398c1ec20c8b02e51ef362248c3adf4e.tar.bz2 snkt-24fdaa7a398c1ec20c8b02e51ef362248c3adf4e.zip |
tag sort stuff
-rw-r--r-- | archive/tag.go | 14 | ||||
-rw-r--r-- | site/site.go | 4 |
2 files changed, 16 insertions, 2 deletions
diff --git a/archive/tag.go b/archive/tag.go index 3554d9c..ff10fba 100644 --- a/archive/tag.go +++ b/archive/tag.go @@ -6,6 +6,7 @@ import ( "adammathes.com/snkt/render" "fmt" "path" + "sort" ) var tagTmplName = "tag" @@ -30,6 +31,18 @@ func (ta TagArchive) Target() string { type TagArchives []*TagArchive +func (tags TagArchives) Len() int { + return len(tags) +} + +func (tags TagArchives) Less(i, j int) bool { + return tags[i].Tag < tags[j].Tag +} + +func (tags TagArchives) Swap(i, j int) { + tags[i], tags[j] = tags[j], tags[i] +} + func ParseTags(posts post.Posts) *TagArchives { if !render.TmplExists(tagTmplName) { @@ -61,6 +74,7 @@ func ParseTags(posts post.Posts) *TagArchives { tas = append(tas, &ta) } + sort.Sort(tas) return &tas } diff --git a/site/site.go b/site/site.go index 8020c87..136c100 100644 --- a/site/site.go +++ b/site/site.go @@ -36,12 +36,12 @@ func (s *Site) Read() { if render.TmplExists("archive") { s.Archive = archive.NewListArchive(s.Posts) - s.Archive.Site = *s + s.Archive.Site = s sort.Sort(sort.Reverse(s.Archive.Posts)) } if render.TmplExists("rss") { s.Rss = archive.NewRssArchive(s.Posts) - s.Rss.Site = *s + s.Rss.Site = s } if render.TmplExists("paged") { s.Paged = archive.CreatePaged(15, s.Posts) |