From 3cd139f528f6c8d8186843e800672d16fd1c5558 Mon Sep 17 00:00:00 2001 From: PortableProgrammer Date: Wed, 8 Jan 2025 17:45:37 +0000 Subject: Feat: Card View - Use `media` view instead of preview div --- src/mixins/post.pug | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/mixins/post.pug b/src/mixins/post.pug index 2e77402..36ea1b8 100644 --- a/src/mixins/post.pug +++ b/src/mixins/post.pug @@ -36,16 +36,27 @@ mixin post(p, currentUrl) div.self-text(class='card') != convertInlineImageLinks(p.selftext_html) div.media-preview(class=`${query.view}`) + - var onclick = query.view != "card" ? `toggleDetails('${p.id}')` : `` if query.view == "card" && (p.spoiler || p.over_18) && (isPostGallery(p) || isPostImage(p) || isPostVideo(p)) div.spoiler(id=`spoiler_${p.id}`, onclick=`javascript:document.getElementById('spoiler_${p.id}').style.display = 'none';`) h2 != p.over_18 ? 'nsfw' : 'spoiler' if isPostGallery(p) - var item = postGalleryItems(p)[0] - img(src=item.url onclick=`toggleDetails('${p.id}')`) + if query.view == "card" + div.gallery(class=`${query.view}`) + each item in postGalleryItems(p) + div.gallery-item(class=`${query.view}`) + div.gallery-item-idx(class=`${query.view}`) + | #{`${item.idx}/${item.total}`} + a(href=`/media/${item.url}`) + img(src=item.url loading="lazy") + else + img(src=item.url onclick=onclick) else if isPostImage(p) - var url = query.view == "card" ? p.url : postThumbnail(p) - img(src=url onclick=`toggleDetails('${p.id}')`) + #{query.view == "card" ? "a href=/media/" + url : span} + img(src=url onclick=onclick) else if isPostVideo(p) - var decodedVideos = decodePostVideoUrls(p) if query.view == "card" -- cgit v1.2.3