diff options
| author | 2025-08-12 12:46:31 +0700 | |
|---|---|---|
| committer | 2025-08-12 12:46:31 +0700 | |
| commit | 09cb8a09061d1a8d748ca456780a54a99e1decf3 (patch) | |
| tree | 522354dd2f5ce90aa1b338f464613197a26c689d /main.go | |
| parent | 9c59f786ab7b4dd545f4e45e7866df2fcb7a9c48 (diff) | |
| download | web-09cb8a09061d1a8d748ca456780a54a99e1decf3.tar.gz web-09cb8a09061d1a8d748ca456780a54a99e1decf3.zip | |
fix: rm small gap (upper-right corner)v0.5.3
fix: correct overflow in blog catalogue
fix: better handling of narrow height in blog catalogue
feat: include tag count in blog catalogue
feat: select all checkboxes on load when none are selected
Diffstat (limited to 'main.go')
| -rw-r--r-- | main.go | 19 |
1 files changed, 13 insertions, 6 deletions
@@ -146,19 +146,26 @@ func main() { pages = []*b2.BlogPage{} } - tagsSet := make(map[string]struct{}) + tagsMap := make(map[string]int) for _, page := range pages { slog.Debug("enlist page for catalogue", slog.Any("page", page), slog.String("endpoint", "/")) for _, tag := range page.Metadata.Tags { - tagsSet[tag] = struct{}{} + tagsMap[tag]++ } } - tagsArray := make([]string, 0, len(tagsSet)) - for tag := range tagsSet { - tagsArray = append(tagsArray, tag) + type Tag struct { + Name string `json:"Name" yaml:"name"` + Count int `json:"Count" yaml:"count"` } - slices.Sort(tagsArray) + + tagsArray := make([]Tag, 0, len(tagsMap)) + for tag, count := range tagsMap { + tagsArray = append(tagsArray, Tag{tag, count}) + } + slices.SortFunc(tagsArray, func(a Tag, b Tag) int { + return strings.Compare(a.Name, b.Name) + }) content, err := tm.Render("blog-catalogue", fiber.Map{ "QuerySort": querySort, |