From d0ea208d042617d0e3cb37b953dcef1f3e95af63 Mon Sep 17 00:00:00 2001 From: rabuzarus Date: Sat, 16 Jun 2018 13:38:32 +0200 Subject: [PATCH] main.js - move some code of liveUpdate() into updateConvItems() for readability --- view/js/main.js | 84 ++++++++++++++++++++++++++----------------------- 1 file changed, 44 insertions(+), 40 deletions(-) diff --git a/view/js/main.js b/view/js/main.js index 4c55546aaa..88cfe89ee6 100644 --- a/view/js/main.js +++ b/view/js/main.js @@ -395,6 +395,47 @@ function NavUpdate() { timer = setTimeout(NavUpdate, updateInterval); } +function updateConvItems(data) { + // add a new thread + $('.toplevel_item',data).each(function() { + var ident = $(this).attr('id'); + + // Add new top-level item. + if ($('#' + ident).length == 0 && profile_page == 1) { + $('#' + prev).after($(this)); + + // Replace already existing thread. + } else { + // Find out if the hidden comments are open, so we can keep it that way + // if a new comment has been posted + var id = $('.hide-comments-total', this).attr('id'); + if (typeof id != 'undefined') { + id = id.split('-')[3]; + var commentsOpen = $("#collapsed-comments-" + id).is(":visible"); + } + + $('#' + ident).replaceWith($(this)); + + if (typeof id != 'undefined') { + if (commentsOpen) { + showHideComments(id); + } + } + } + prev = ident; + }); + + $('.like-rotator').hide(); + if (commentBusy) { + commentBusy = false; + $('body').css('cursor', 'auto'); + } + /* autocomplete @nicknames */ + $(".comment-edit-form textarea").editor_autocomplete(baseurl+"/acl"); + /* autocomplete bbcode */ + $(".comment-edit-form textarea").bbco_autocomplete('bbcode'); +} + function liveUpdate(src) { if ((src == null) || stopped || !profile_uid) { $('.like-rotator').hide(); return; @@ -430,51 +471,14 @@ function liveUpdate(src) { update_item = 0; $('.wall-item-body', data).imagesLoaded(function() { - // add a new thread - $('.toplevel_item',data).each(function() { - var ident = $(this).attr('id'); + updateConvItems(data); - // Add new top-level item. - if ($('#' + ident).length == 0 && profile_page == 1) { - $('#' + prev).after($(this)); - - // Replace already existing thread. - } else { - // Find out if the hidden comments are open, so we can keep it that way - // if a new comment has been posted - var id = $('.hide-comments-total', this).attr('id'); - if (typeof id != 'undefined') { - id = id.split('-')[3]; - var commentsOpen = $("#collapsed-comments-" + id).is(":visible"); - } - - $('#' + ident).replaceWith($(this)); - - if (typeof id != 'undefined') { - if (commentsOpen) { - showHideComments(id); - } - } - } - prev = ident; - }); + // Update the scroll position. + $(window).scrollTop($(window).scrollTop() + $("section").height() - orgHeight); }); callAddonHooks("postprocess_liveupdate"); - // Update the scroll position. - $(window).scrollTop($(window).scrollTop() + $("section").height() - orgHeight); - - $('.like-rotator').hide(); - if (commentBusy) { - commentBusy = false; - $('body').css('cursor', 'auto'); - } - /* autocomplete @nicknames */ - $(".comment-edit-form textarea").editor_autocomplete(baseurl+"/acl"); - /* autocomplete bbcode */ - $(".comment-edit-form textarea").bbco_autocomplete('bbcode'); - }); }