all repos — homestead @ 6cf5ef68ad0d4322caf0f1716ed3a4367fdc6582

Code for my website

templates/tags.go (view raw)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package templates

import (
	g "go.alanpearce.eu/gomponents"
	. "go.alanpearce.eu/gomponents/html"
)

type TagsPageVars struct {
	Title string
	Tags  []string
}

func TagsPage(site SiteSettings, vars TagsPageVars) g.Node {
	return Layout(site, PageSettings{
		Title: vars.Title,
	}, Div(
		H3(Class("filter"), g.Text("Tags")),
		Ul(Class("tags"),
			g.Map(vars.Tags, func(tag string) g.Node {
				return Li(Class("h-feed"),
					tagLink(tag, Class("")),
				)
			}),
		),
	))
}

func tagLink(tag string, attrs g.Node) g.Node {
	return A(attrs, Href("/tags/"+tag), g.Text("#"+tag))
}