ok, this should work
install
https://vborg.vbsupport.ru/showthread.php?t=83230
Add a new plugin in
global_start
PHP Code:
if (THIS_SCRIPT === 'index')
{
$vbulletin->templatecache['header'] .= '<script type=\"text/javascript\">
<!--
function fetch_latest()
{
if (latest.handler.readyState == 4 && latest.handler.status == 200 && latest.handler.responseText)
{
fetch_object(\'latest\').innerHTML = latest.handler.responseText;
}
}
function getlatest()
{
latest = new vB_AJAX_Handler(true);
latest.onreadystatechange(fetch_latest);
latest.send(\'ajax.php\', \'do=latest\');
}
//-->
</script>';
}
Add a new plugin in
ajax_start
PHP Code:
if ($_REQUEST['do'] == 'latest')
{
require_once(DIR . '/includes/functions_forumlist.php');
// #################### PROCESS LATEST THREADS #######################
// fetch the permissions for each forum
global $vbulletin;
$forumperms = array();
foreach($vbulletin->forumcache AS $forum) {
$forumperms[$forum["forumid"]] = fetch_permissions($forum['forumid']);
// ## HIDE FORUMS WITHOUT THE CANVIEW PERMISSION ##
if (!($forumperms[$forum["forumid"]] & $vbulletin->bf_ugp_forumpermissions['canview']) AND !$vbulletin->options['showprivateforums']) {
$limitfids .= ','.$forum['forumid'];
}
}
unset($forum);
if ($vbulletin->options['threadpreview'] > 0) {
$previewfield = ', post.pagetext AS preview';
$previewjoin = 'LEFT JOIN '.TABLE_PREFIX.'post AS post ON(post.postid = thread.firstpostid)';
}
$getthreads = $db->query_read("
## GET LATEST THREADS ##
SELECT thread.*,thread.iconid AS threadiconid $previewfield
FROM ".TABLE_PREFIX."thread AS thread
LEFT JOIN ".TABLE_PREFIX."deletionlog AS deletionlog ON(thread.threadid = deletionlog.primaryid AND type = 'thread')
$previewjoin
WHERE open <> 10
AND forumid NOT IN (0$limitfids)
AND thread.visible = '1'
AND deletionlog.primaryid IS NULL
ORDER BY lastpost
DESC LIMIT 5");
while($thread = $db->fetch_array($getthreads)) {
$threads = true;
$thread['title'] = fetch_censored_text(fetch_trimmed_title(unhtmlspecialchars($thread['title']), 22));
$thread['date'] = vbdate($vbulletin->options['dateformat'], $thread['lastpost'], 1);
$thread['time'] = vbdate($vbulletin->options['timeformat'], $thread['lastpost']);
$thread['preview'] = preg_replace('#\[quote(=("|"|\'|).*\\2)?\](.*)\[/quote\]#siU', '', $thread['preview']);
$thread['preview'] = htmlspecialchars_uni(fetch_trimmed_title(strip_bbcode(fetch_censored_text($thread['preview']), false, true), $vbulletin->options['threadpreview']));
$thread['replycount'] = vb_number_format($thread['replycount']);
$thread['views'] = vb_number_format($thread['views']);
// thread icon
$show['icon'] = false;
$icon = fetch_iconinfo($thread['iconid']);
if (is_array($icon)) {
$show['icon'] = true;
$thread['threadiconpath'] = $icon['iconpath'];
$thread['threadicontitle'] = $icon['title'];
}
// show goto new post
$show['firstnew'] = false;
$bbforumview = fetch_bbarray_cookie('forum_view', $thread['forumid']);
if ($bbforumview > $vbulletin->userinfo['lastvisit']) {
$lastread = $bbforumview;
} else {
$lastread = $vbulletin->userinfo['lastvisit'];
}
if ($thread['lastpost'] > $lastread) {
$threadview = fetch_bbarray_cookie('thread_lastview', $thread['threadid']);
if ($thread['lastpost'] > $threadview) {
$show['firstnew'] = true;
$show['icon'] = false;
}
}
exec_switch_bg();
eval("\$threadbits .= \"".fetch_template('forumhome_latestthreadbit')."\";");
}
if ($threads) {
$show['latestthreads'] = true;
}
echo $threadbits;
// memory saving
unset($thread, $threads);
$db->free_result($getthreads);
}
in the FORUMHOME template find
replace with
HTML Code:
<div id="latest">$threadbits</div>
Find
HTML Code:
$vbphrase[latest_threads]
replace with
HTML Code:
$vbphrase[latest_threads] [<a href="#collapseimg_forumhome_latestthreads" onclick="getlatest();">Reload Latest Threads</a>]