From 5eefab62fdd119037d1493a18eb618e3ee780269 Mon Sep 17 00:00:00 2001 From: Omar Roth Date: Sat, 13 Oct 2018 19:40:42 -0500 Subject: [PATCH] Add "show replies" and "hide replies" --- src/invidious/comments.cr | 1 - src/invidious/views/watch.ecr | 24 +++++++++++++++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/invidious/comments.cr b/src/invidious/comments.cr index 2c80a1900..98062f4e2 100644 --- a/src/invidious/comments.cr +++ b/src/invidious/comments.cr @@ -109,7 +109,6 @@ def template_youtube_comments(comments)

- [ - ] #{child["author"]} diff --git a/src/invidious/views/watch.ecr b/src/invidious/views/watch.ecr index 92469e473..5a86c2196 100644 --- a/src/invidious/views/watch.ecr +++ b/src/invidious/views/watch.ecr @@ -382,7 +382,13 @@ function get_youtube_replies(target) { xhr.onreadystatechange = function() { if (xhr.readyState == 4) { if (xhr.status == 200) { - body.innerHTML = xhr.response.contentHtml; + body.innerHTML = ' \ +

Hide replies \ +

\ +
{contentHtml}
'.supplant({ + contentHtml: xhr.response.contentHtml, + }); } else { body.innerHTML = fallback; } @@ -396,6 +402,22 @@ function get_youtube_replies(target) { }; } +function show_youtube_replies(target) { + body = target.parentNode.parentNode.children[1]; + body.style.display = ""; + + target.innerHTML = "Hide replies"; + target.setAttribute('onclick', 'hide_youtube_replies(this)'); +} + +function hide_youtube_replies(target) { + body = target.parentNode.parentNode.children[1]; + body.style.display = "none"; + + target.innerHTML = "Show replies"; + target.setAttribute('onclick', 'show_youtube_replies(this)'); +} + <% if preferences %> <% if preferences.comments[0] == "youtube" %> get_youtube_comments();