diff --git a/src/invidious/comments.cr b/src/invidious/comments.cr index 6a42701c..09eb4fed 100644 --- a/src/invidious/comments.cr +++ b/src/invidious/comments.cr @@ -129,7 +129,7 @@ def template_youtube_comments(comments)

Load more + onclick="get_youtube_replies(this, true)">Load more

diff --git a/src/invidious/views/watch.ecr b/src/invidious/views/watch.ecr index 6af7e10a..83120fb2 100644 --- a/src/invidious/views/watch.ecr +++ b/src/invidious/views/watch.ecr @@ -379,7 +379,7 @@ function get_youtube_comments() { }; } -function get_youtube_replies(target) { +function get_youtube_replies(target, load_more) { var continuation = target.getAttribute('data-continuation'); var body = target.parentNode.parentNode; @@ -398,13 +398,19 @@ function get_youtube_replies(target) { xhr.onreadystatechange = function() { if (xhr.readyState == 4) { if (xhr.status == 200) { - body.innerHTML = ' \ -

Hide replies \ -

\ -
{contentHtml}
'.supplant({ - contentHtml: xhr.response.contentHtml, - }); + if (load_more) { + body = body.parentNode.parentNode; + body.removeChild(body.lastElementChild); + body.innerHTML += xhr.response.contentHtml; + } else { + body.innerHTML = ' \ +

Hide replies \ +

\ +
{contentHtml}
'.supplant({ + contentHtml: xhr.response.contentHtml, + }); + } } else { body.innerHTML = fallback; }