style & layout updates
This commit is contained in:
parent
ebd08fb2e5
commit
485b90fb46
9 changed files with 65 additions and 159 deletions
|
@ -12,7 +12,7 @@ import Data.Function (on, (&))
|
|||
import qualified Data.HashMap.Strict as HashMap
|
||||
import Data.HashSet (HashSet)
|
||||
import qualified Data.HashSet as HashSet
|
||||
import Data.List (intersperse, groupBy, sortBy, sortOn)
|
||||
import Data.List (intersperse, groupBy, sortBy, sort)
|
||||
import Data.Maybe
|
||||
import qualified Data.Text.Lazy as Lazy
|
||||
import System.FilePath (takeDirectory, joinPath, splitPath)
|
||||
|
@ -52,9 +52,8 @@ make' root (GalleryInfo {title, desc, prefix, filters, hidden}) infos = [b|@0
|
|||
<div class=page>
|
||||
<header>
|
||||
<h1>$title</h1>
|
||||
<h2 class="right corner">
|
||||
<a href=rss.xml>rss</a>
|
||||
</h2>
|
||||
<a class="right corner" href=rss.xml>rss</a>
|
||||
<a class="left corner" href=$undir>back</a>
|
||||
</header>
|
||||
|
||||
<nav id=filters>
|
||||
|
@ -86,10 +85,6 @@ make' root (GalleryInfo {title, desc, prefix, filters, hidden}) infos = [b|@0
|
|||
$6.items
|
||||
</ul>
|
||||
</main>
|
||||
|
||||
<footer>
|
||||
<a href=$undir>all galleries</a>
|
||||
</footer>
|
||||
</div>
|
||||
|]
|
||||
where
|
||||
|
@ -110,7 +105,7 @@ make' root (GalleryInfo {title, desc, prefix, filters, hidden}) infos = [b|@0
|
|||
allTags = infos
|
||||
& concatMap (map (,1) . tagsFor nsfw . #second)
|
||||
& HashMap.fromListWith (+) & HashMap.toList
|
||||
& sortOn (\(tag, count) -> (Down count, tag))
|
||||
& sort
|
||||
|
||||
requireFilters = map (uncurry $ makeFilter "require" mempty) allTags
|
||||
excludeFilters = map (uncurry $ makeFilter "exclude" hidden) allTags
|
||||
|
@ -153,18 +148,12 @@ makeYearItems nsfw year infos = [b|@0
|
|||
|
||||
makeItem :: Bool -> FilePath -> Info -> Builder
|
||||
makeItem nsfw file info@(Info {bg}) = [b|@0
|
||||
<li class="item post$nsfw'" data-date="$date'" data-year=$year'
|
||||
data-updated="$updated'"
|
||||
<li class="item post$nsfw'" data-year=$year' data-updated="$updated'"
|
||||
data-tags="$tags'">
|
||||
<figure>
|
||||
<a href="$dir">
|
||||
<img src="$thumb" loading=lazy$bgStyle>
|
||||
</a>
|
||||
<figcaption>
|
||||
<span class=date>$date'</span>
|
||||
<span class=title>$title</span>
|
||||
</figcaption>
|
||||
</figure>
|
||||
<a href="$dir">
|
||||
<img src="$thumb" loading=lazy$bgStyle
|
||||
title="$tooltip">
|
||||
</a>
|
||||
|]
|
||||
where
|
||||
title = fromMaybe (#title info) $ #galleryTitle info
|
||||
|
@ -173,7 +162,10 @@ makeItem nsfw file info@(Info {bg}) = [b|@0
|
|||
nsfw' = if nsfw && #anyNsfw info then [b| nsfw|] else ""
|
||||
tags' = fold $ intersperse ";" $ map fromText $ tagsFor nsfw info
|
||||
date = #latestDate info nsfw
|
||||
date' = formatShort date
|
||||
date' = formatTooltip date
|
||||
year' = #year date
|
||||
updated' = if #updated info nsfw then [b|true|] else [b|false|]
|
||||
bgStyle = case bg of Other col -> [b| style="background: $col"|]; _ -> ""
|
||||
tooltip =
|
||||
let upd = if #updated info nsfw then "updated " else "" :: Builder in
|
||||
[b|$title ($upd$date')|]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue