Solved.
Searched around the forum, found this thread.
Composer plugin was disabled for some reason.
Activated & rebuilt NodeBB.
All working.
😰 😅
I have recently installed NodeBB 1.12.0 with default theme. When a user replies to a specific post, the reply is by default hidden below this post (one has to click to view it), while it appears as an ordinary reply to the topic below.
Is it possible to configure NodeBB (e.g. by modifying the theme template etc.) to get the following behaviour:
I would be grateful for a hint..
No. NodeBB chose a flat topic structure long ago and this is unlikely to change. The replies expanding list below a post is nothing more than a convenience.
Thanks. It is a pity.
But just in case I would try to attempt some hack. I now saw that the html element which loads the replies when clicked has an attribute component="post/replies/open"
. I guess that clicking runs some javascript function which loads the replies. Could you indicate where is this javascript function located?
Maybe I could then add some custom javascript to activate this function automatically on page load?
I just managed to make a quick hack which achieves the effect that I wanted. I added the following to the Custom Javascript tab in ACP:
function showreplies() {
$('li[component="post"]').has('a[component="post/parent"]').addClass('hidden');
$('[component="post/replies/open"]').click();
}
function noreply(event, data){
if(data.posts.length==1 && data.posts[0].toPid) { // this is a reply to some post
var el = $('li[data-pid="'+data.posts[0].pid+'"]'); // newly added post
if(el.parent('div[component="post/replies"]').length===0){ // added as a standalone post
el.addClass('hidden');
}
}
$('div[component="post/replies"]').find('a[component="post/reply"], a[component="post/quote"]').addClass('hidden');
}
$(window).on('action:ajaxify.end', showreplies);
$(window).on('action:posts.loaded', noreply);
The first line in function showreplies
hides those posts which are replies to previous posts, and the second line opens up the replies below the relevant posts. (@baris This was my attempt before I read your answer. Thanks for the pointer to the code! I will try that out).
I added the handler for action:posts.loaded
in order to
Reply
and Quote
buttons for the replies in order not to generate higher levels of nesting (this is ok for me)