diff options
Diffstat (limited to 'src/mixins/post.pug')
-rw-r--r-- | src/mixins/post.pug | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/src/mixins/post.pug b/src/mixins/post.pug index 3e7e51a..9dd0748 100644 --- a/src/mixins/post.pug +++ b/src/mixins/post.pug | |||
@@ -14,6 +14,8 @@ mixin post(p) | |||
14 | | · | 14 | | · |
15 | by u/#{p.author} | 15 | by u/#{p.author} |
16 | | · | 16 | | · |
17 | | #{timeDifference(Date.now(), p.created * 1000)} | ||
18 | | · | ||
17 | a(href=`/r/${p.subreddit}`) r/#{p.subreddit} | 19 | a(href=`/r/${p.subreddit}`) r/#{p.subreddit} |
18 | | · | 20 | | · |
19 | a(href=`/comments/${p.id}`) #{fmtnum (p.num_comments)} ↩ | 21 | a(href=`/comments/${p.id}`) #{fmtnum (p.num_comments)} ↩ |
@@ -28,7 +30,7 @@ mixin post(p) | |||
28 | if p.thumbnail && p.thumbnail != "self" || p.thumbnail != "default" | 30 | if p.thumbnail && p.thumbnail != "self" || p.thumbnail != "default" |
29 | img(src=p.thumbnail onclick=`toggleDetails('${p.id}')`) | 31 | img(src=p.thumbnail onclick=`toggleDetails('${p.id}')`) |
30 | else if p.post_hint == "hosted:video" | 32 | else if p.post_hint == "hosted:video" |
31 | - var url = p.secure_media.reddit_video.dash_url | 33 | - var url = p.secure_media.reddit_video.scrubber_media_url |
32 | video(src=url data-dashjs-player width='100px' height='100px' onclick=`toggleDetails('${p.id}')`) | 34 | video(src=url data-dashjs-player width='100px' height='100px' onclick=`toggleDetails('${p.id}')`) |
33 | 35 | ||
34 | if p.is_gallery && p.is_gallery == true | 36 | if p.is_gallery && p.is_gallery == true |
@@ -37,23 +39,31 @@ mixin post(p) | |||
37 | details(id=`${p.id}`) | 39 | details(id=`${p.id}`) |
38 | summary expand gallery | 40 | summary expand gallery |
39 | div.gallery | 41 | div.gallery |
42 | - var total = p.gallery_data.items.length | ||
43 | - var idx = 0 | ||
44 | - var metadata = p.media_metadata | ||
45 | - var img_ext = (id) => stripPrefix(metadata[id].m, "image/") | ||
40 | each item in p.gallery_data.items | 46 | each item in p.gallery_data.items |
41 | - var url = `https://i.redd.it/${item.media_id}.jpg` | 47 | - var id = item.media_id |
48 | - var ext = img_ext(item.media_id) | ||
49 | - var url = `https://i.redd.it/${id}.${ext}` | ||
42 | div.gallery-item | 50 | div.gallery-item |
43 | a(href=`/media/${url}`) | 51 | a(href=`/media/${url}`) |
44 | img(src=url) | 52 | img(src=url loading="lazy") |
53 | div.gallery-item-idx | ||
54 | | #{`${++idx}/${total}`} | ||
45 | button(onclick=`toggleDetails('${p.id}')`) close | 55 | button(onclick=`toggleDetails('${p.id}')`) close |
46 | if p.post_hint == "image" && p.thumbnail && p.thumbnail != "self" && p.thumbnail != "default" | 56 | if p.post_hint == "image" && p.thumbnail && p.thumbnail != "self" && p.thumbnail != "default" |
47 | details(id=`${p.id}`) | 57 | details(id=`${p.id}`) |
48 | summary expand image | 58 | summary expand image |
49 | a(href=`/media/${p.url}`) | 59 | a(href=`/media/${p.url}`) |
50 | img(src=p.url).post-media | 60 | img(src=p.url loading="lazy").post-media |
51 | button(onclick=`toggleDetails('${p.id}')`) close | 61 | button(onclick=`toggleDetails('${p.id}')`) close |
52 | else if p.post_hint == "hosted:video" | 62 | else if p.post_hint == "hosted:video" |
53 | details(id=`${p.id}`) | 63 | details(id=`${p.id}`) |
54 | summary expand video | 64 | summary expand video |
55 | - var url = p.secure_media.reddit_video.dash_url | 65 | - var url = p.secure_media.reddit_video.dash_url |
56 | video(src=url controls data-dashjs-player).post-media | 66 | video(src=url controls data-dashjs-player loading="lazy").post-media |
57 | button(onclick=`toggleDetails('${p.id}')`) close | 67 | button(onclick=`toggleDetails('${p.id}')`) close |
58 | else if p.post_hint == "link" && p.thumbnail && p.thumbnail != "self" && p.thumbnail != "default" | 68 | else if p.post_hint == "link" && p.thumbnail && p.thumbnail != "self" && p.thumbnail != "default" |
59 | details(id=`${p.id}`) | 69 | details(id=`${p.id}`) |