diff options
Diffstat (limited to 'templates/list.templ')
-rw-r--r-- | templates/list.templ | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/templates/list.templ b/templates/list.templ new file mode 100644 index 0000000..fc59677 --- /dev/null +++ b/templates/list.templ @@ -0,0 +1,51 @@ +package templates + +import ( + "go.alanpearce.eu/website/internal/config" + "go.alanpearce.eu/website/internal/content" +) + +templ TagPage(config *config.Config, tag string, posts []content.Post, path string) { + @Page(config, PageSettings{ + Title: tag, + Path: path, + TitleAttrs: templ.Attributes{ + "class": "p-author h-card", + "rel": "author", + }, + }) { + <div class="filter"> + <h3 class="filter">#{ tag }</h3> + <small> + <a href="../">Remove filter</a> + </small> + </div> + @list(posts) + } +} + +templ ListPage(config *config.Config, posts []content.Post, path string) { + @Page(config, PageSettings{ + Title: config.Title, + TitleAttrs: templ.Attributes{ + "class": "p-author h-card", + "rel": "author", + }, + Path: path, + }) { + @list(posts) + } +} + +templ list(posts []content.Post) { + <ul class="h-feed"> + for _, post := range posts { + <li class="h-entry"> + <span> + @postDate(post.Date) + </span> + <a class="p-name u-url" href={ templ.SafeURL(post.URL) }>{ post.Title }</a> + </li> + } + </ul> +} |