Generate series list page

This commit is contained in:
Nathan McCarty 2025-02-09 05:51:52 -05:00
parent baf8d6556b
commit 109165b80e
4 changed files with 49 additions and 8 deletions

View file

@ -103,3 +103,42 @@ sub series-page(Int:D $series-id, $db) is export {
show-html $html;
}
sub series-blurb(Int:D $id, Series:D $series, $db) {
my $link = "/series/$id.html";
div :class<series-list-blurb>, [
div :class<series-list-blurb-title>, [
a :href($link), span [
h2 $series.title;
];
p $series.desc;
];
series-info $series, $db;
]
}
sub series-list-page($db) is export {
my @series = $db.series.sort(*.value.latest-post: $db);
my @series-blurbs = ();
for @series -> $pair {
my $id = $pair.key;
my $series = $pair.value;
@series-blurbs.push:
series-blurb $id, $series, $db;
}
my $head = generate-head($db.meta);
my $body = body [
site-header $db.meta;
div :class<series-list>, [
h1 "All Series"
], @series-blurbs;
];
my $html = html :lang<en>, [
$head;
$body;
];
show-html $html;
}