I'm looking for a way to create a "Sticky" topic in each forum I create that will display a complete list of the Thread Titles in that particular forum/sub-forum, Sorted A-Z as hyperlinks. It's basically a live index of the sub-forum. Very Useful to me.
I have created this for a phpbb board but I can seem to figure out how to do it in Vbulletin.
What I do in phpbb is create a thread and for the topic body I type %FORUMSYNCLIST% and is runs the forum query and display the forum threads as if I typed them in the post itself - and it is always current since it's a query that runs everytime the thread is open.
This is used to help me stop duplicate threads from being created.
Here is a code snippet from the phpbb version. Does anyone know how to modify and insert this into the showthread.php file so it displays what I want?
The below code uses the existing sql query that displays the threads in phpbb viewtopic.php.
Any help would be appreciated.
PHP Code:
$sql = $db->sql_build_query('SELECT', $sql_array);
$result = $db->sql_query_limit($sql, 10000, 0);
$synclist = array();
while ($row = $db->sql_fetchrow($result)) {
$sync_id = $row['topic_id'];
$sync_title = ucfirst($row['topic_title']);
$synclist[$sync_id] = $sync_title;
}
$db->sql_freeresult($result);
asort($synclist);
}
========== further down================
if ( strstr($message,"%FORUMSYNCLIST%") && $xpluginsynclist ) {
$synclistpage = "<b>Synchronization (Sync) System - Forum List Displayer Version 0.3</b><br>";
$synclistpage = $synclistpage."<br><b>Total Results:</b> ".count($synclist)."<br>";
$excludedpage = "";
$currentset = "";
foreach ( $synclist as $sync_id => $sync_title ) {
$testchar = $sync_title[0]; $sync_item = "";
if ( is_numeric($testchar) || $testchar == "." ) {
if ( $currentset == "" ) {
$currentset = "#";
$sync_item = "<br><b><span style='color:#FF0000;'>#</span></b><br>";
}
$sync_item = $sync_item."<a href='viewtopic.php?f=".$forum_id."&t=".$sync_id."'>".$sync_title."</a><br>";
} else if ( strstr("ABCDEFGHIJKLMNOPQRSTUVWXYZ",$testchar) ) {
if ( $currentset != $testchar ) {
$currentset = $testchar;
$sync_item = "<br><b><span style='color:#FF0000;'>".$testchar."</span></b><br>";
}
$sync_item = $sync_item."<a href='viewtopic.php?f=".$forum_id."&t=".$sync_id."'>".$sync_title."</a><br>";
} else {
$excludedpage = $excludedpage."<a href='viewtopic.php?f=".$forum_id."&t=".$sync_id."'>".$sync_title."</a><br>";
}
$synclistpage = $synclistpage.$sync_item;
}
if ( $excludedpage != "" ) {
$excludedpage = "<br><b>Excluded (Please Fix Your Topic Tittle!)</b><br>".$excludedpage;
}
$message = str_replace("%FORUMSYNCLIST%",$synclistpage.$excludedpage,$message);
$xpluginsynclist = false;
}