add index page
This commit is contained in:
parent
375c6e833a
commit
3f025721c8
6 changed files with 63 additions and 8 deletions
39
make-pages/IndexPage.hs
Normal file
39
make-pages/IndexPage.hs
Normal file
|
@ -0,0 +1,39 @@
|
|||
module IndexPage (make) where
|
||||
|
||||
import qualified Data.Text.Lazy as Lazy
|
||||
import Data.Text.Lazy.Builder (Builder, toLazyText)
|
||||
|
||||
import BuilderQQ
|
||||
import Info
|
||||
|
||||
make :: [GalleryInfo] -> Lazy.Text
|
||||
make ginfos = toLazyText $ make' ginfos
|
||||
|
||||
make' :: [GalleryInfo] -> Builder
|
||||
make' ginfos = [b|@0
|
||||
<!DOCTYPE html>
|
||||
<html lang=en>
|
||||
<meta charset=utf-8>
|
||||
|
||||
<title>gallery list</title>
|
||||
|
||||
<header>
|
||||
<h1>gallery list</h1>
|
||||
</header>
|
||||
|
||||
<main>
|
||||
<ul class=gallery-list>
|
||||
$4.items
|
||||
</ul>
|
||||
</main>
|
||||
|]
|
||||
where
|
||||
items = map makeItem ginfos
|
||||
|
||||
makeItem :: GalleryInfo -> Builder
|
||||
makeItem (GalleryInfo {title, prefix}) = [b|@4
|
||||
<li>
|
||||
<a href="$@prefix">
|
||||
$*title
|
||||
</a>
|
||||
|]
|
Loading…
Add table
Add a link
Reference in a new issue