aboutsummaryrefslogtreecommitdiff
path: root/src/views
diff options
context:
space:
mode:
Diffstat (limited to 'src/views')
-rw-r--r--src/views/comments.pug35
-rw-r--r--src/views/media.pug9
2 files changed, 25 insertions, 19 deletions
diff --git a/src/views/comments.pug b/src/views/comments.pug
index 1caf65a..1265609 100644
--- a/src/views/comments.pug
+++ b/src/views/comments.pug
@@ -47,23 +47,24 @@ html
47 h2.post-title 47 h2.post-title
48 != post.title 48 != post.title
49 49
50 if isPostGallery(post) 50 div.image-viewer.main-content
51 div.gallery 51 if isPostGallery(post)
52 each item in postGalleryItems(post) 52 div.gallery
53 div.gallery-item 53 each item in postGalleryItems(post)
54 div.gallery-item-idx 54 div.gallery-item
55 | #{`${item.idx}/${item.total}`} 55 a(href=`/media/${item.url}`)
56 a(href=`/media/${item.url}`) 56 img(src=item.url loading="lazy")
57 img(src=item.url loading="lazy") 57 div.gallery-item-idx
58 else if isPostImage(post) 58 | #{`${item.idx}/${item.total}`}
59 a(href=`/media/${post.url}`) 59 else if isPostImage(post)
60 img(src=post.url).post-media 60 a(href=`/media/${post.url}`)
61 else if isPostVideo(post) 61 img(src=post.url).post-media
62 - var url = post.secure_media.reddit_video.dash_url 62 else if isPostVideo(post)
63 video(controls data-dashjs-player src=`${url}`).post-media 63 - var url = post.secure_media.reddit_video.dash_url
64 else if isPostLink(post) 64 video(controls data-dashjs-player src=`${url}`).post-media
65 a(href=post.url) 65 else if isPostLink(post)
66 | #{post.url} 66 a(href=post.url)
67 | #{post.domain} ↗
67 68
68 if post.selftext_html 69 if post.selftext_html
69 div.self-text 70 div.self-text
diff --git a/src/views/media.pug b/src/views/media.pug
index e945704..3a59542 100644
--- a/src/views/media.pug
+++ b/src/views/media.pug
@@ -3,13 +3,18 @@ doctype html
3html 3html
4 +head("home") 4 +head("home")
5 script(type='text/javascript'). 5 script(type='text/javascript').
6 function toggleZoom() { 6 function toggleZoom(event) {
7 const percentX = event.offsetX / event.target.width;
8 const percentY = event.offsetY / event.target.height;
7 Array.from(document.getElementsByClassName('media-maximized')).forEach(element => element.classList.toggle('zoom')); 9 Array.from(document.getElementsByClassName('media-maximized')).forEach(element => element.classList.toggle('zoom'));
10 const moveClientX = (event.target.width * percentX) + event.target.offsetLeft - (event.view.visualViewport.width / 2)
11 const moveClientY = (event.target.height * percentY) + event.target.offsetTop - (event.view.visualViewport.height / 2);
12 event.target.parentElement.scrollTo(moveClientX, moveClientY);
8 } 13 }
9 14
10 body.media-maximized 15 body.media-maximized
11 div.media-maximized.container 16 div.media-maximized.container
12 if kind == 'img' 17 if kind == 'img'
13 img(src=url onclick=`toggleZoom()`).media-maximized 18 img(src=url onclick=`toggleZoom(event)`).media-maximized
14 else 19 else
15 video(src=url controls).media-maximized 20 video(src=url controls).media-maximized