hello,
most of us know this mod,, but i have some specifications in this mod, normally this mod convert forums in column, but it does not fixed the width of column, some of them are big and some of them are, but newbies like me dont know how to make them fixed width and how to customize this in own way,
most of us can see my thread which i requested for help in fixing the width of columns.. but now i searched too musch and get my solution too huh!

here is a complete tutorials for vb3.8.x to make forums in column without any error and bug.

download the rar and import the plugin
Code: 
http://www.MegaShare.com/1845751
ohk just import the plugin dont do the any modifications in templates.

ohk now open includes/functions_forumlist.php and replace all by
PHP Code: 
<?php
/*======================================================================*\
|| #################################################################### ||
|| # vBulletin 3.8.1
|| # ---------------------------------------------------------------- # ||
|| # Copyright ?2000-2009 Jelsoft Enterprises Ltd. All Rights Reserved. ||
|| # This file may not be redistributed in whole or significant part. # ||
|| # ---------------- VBULLETIN IS NOT FREE SOFTWARE ---------------- # ||
|| # http://www.vbulletin.com | http://www.vbulletin.com/license.html # ||
|| #################################################################### ||
\*======================================================================*/

// ###################### Start getimodcache #######################
function cache_moderators($userid null)
{
    global 
$vbulletin$imodcache$mod;

    
$imodcache = array();
    
$mod = array();

    
$forummoderators $vbulletin->db->query_read_slave("
        SELECT moderator.*, user.username,
        IF(user.displaygroupid = 0, user.usergroupid, user.displaygroupid) AS displaygroupid, infractiongroupid
        FROM " 
TABLE_PREFIX "moderator AS moderator
        INNER JOIN " 
TABLE_PREFIX "user AS user USING(userid)
        " 
. ($userid != null "WHERE moderator.userid = " intval($userid) : "") . "
    "
);
    while (
$moderator $vbulletin->db->fetch_array($forummoderators))
    {
        
fetch_musername($moderator);
        
$imodcache["$moderator[forumid]"]["$moderator[userid]"] = $moderator;
        
$mod["$moderator[userid]"] = 1;
    }
    
$vbulletin->db->free_result($forummoderators);
}

// ###################### Start getlastpostinfo #######################
// this function creates a lastpostinfo array that tells makeforumbit which forum
// each forum should grab its last post info from.
// it also tots up the thread/post totals for each forum. - PERMISSIONS are taken into account.
function fetch_last_post_array($root_forumid = -1)
{
    global 
$vbulletin$lastpostarray$counters;

    
$cannotView = array();
    
$children = array();

    
// loop through the vbulletin->iforumcache
    
foreach ($vbulletin->iforumcache AS $moo)
    {
        foreach (
$moo AS $forumid)
        {
            
$forum $vbulletin->forumcache["$forumid"];
            if (!
$forum['displayorder'] OR !($forum['options'] & $vbulletin->bf_misc_forumoptions['active']))
            {
                if (
$root_forumid == -OR !in_array($root_forumidexplode(','$forum['childlist'])))
                {
                    
// only going to show below this part of the tree if we're already there
                    
$cannotView["$forumid"] = 1;
                }
                continue;
            }

            
// if we have no permission to view the forum's parent
            // set cannotView permissions cache for this forum and continue
            
if (!empty($cannotView["$forum[parentid]"]))
            {
                
$cannotView["$forumid"] = 1;
            }
            else
            {

                
$forumperms $vbulletin->userinfo['forumpermissions']["$forumid"];

                
// can view and validated password OR show counters for private forums -> show post count
                
if (
                    (
$forumperms $vbulletin->bf_ugp_forumpermissions['canview'] AND (!$forum['password'] OR verify_forum_password($forum['forumid'], $forum['password'], false)))
                    OR (
$vbulletin->forumcache["$forumid"]['showprivate'] AND $vbulletin->forumcache["$forumid"]['showprivate'] == 3)
                    OR (!
$vbulletin->forumcache["$forumid"]['showprivate'] AND $vbulletin->options['showprivateforums'] == 2)
                )
                {
                    if (!isset(
$lastpostarray["$forumid"]))
                    {
                        
$lastpostarray["$forumid"] = $forumid;
                    }
                    
$parents explode(','$forum['parentlist']);
                    foreach (
$parents AS $parentid)
                    {
                        
// for each parent, set an array entry containing this forum's number of posts & threads
                        
$children["$parentid"]["$forumid"] = array('threads' => $forum['threadcount'], 'posts' => $forum['replycount']);

                        if (
$parentid == -OR !isset($vbulletin->forumcache["$parentid"]))
                        {
                            continue;
                        }

                        if (!(
$forumperms $vbulletin->bf_ugp_forumpermissions['canviewothers']) AND $vbulletin->forumcache["$forumid"]['lastposter'] != $vbulletin->userinfo['username'])
                        {
                            
// can't view others threads in this forum and the last post isn't by us
                            // so don't try to traverse up the tree
                            
continue;
                        }

                        
// compare the date for the last post info with the last post date
                        // for the parent forum, and if it's greater, set the last post info
                        // array for this forum to point to that forum... (erm..)
                        
if ($forum['lastpost'] > $vbulletin->forumcache["$parentid"]['lastpost'])
                        {
                            
$lastpostarray["$parentid"] = $forumid;
                            
$vbulletin->forumcache["$parentid"]['lastpost'] = $forum['lastpost'];
                        }
                    }
                }
                else
                {
                    
$cannotView["$forumid"] = 1;
                }

            } 
// end can view parent
        
}
    }

    
$counters = array();
    if (
is_array($vbulletin->forumcache))
    {
        foreach(
$vbulletin->forumcache AS $forum)
        {
            
$this_forum =& $counters["$forum[forumid]"];
            
$this_forum['threadcount'] = 0;
            
$this_forum['replycount'] = 0;
            if (
is_array($children["$forum[forumid]"]))
            {
                foreach(
$children["$forum[forumid]"] AS $id => $info)
                {
                    
$this_forum['threadcount'] += $info['threads'];
                    
$this_forum['replycount'] += $info['posts'];
                }
            }
        }
    }
}

// ###################### Start makeforumbit #######################
// this function returns the properly-ordered and formatted forum lists for forumhome,
// forumdisplay and usercp. Of course, you could use it elsewhere too..
function construct_forum_bit($parentid$depth 0$subsonly 0)
{
    global 
$vbulletin$stylevar$vbphrase$show;
    global 
$imodcache$lastpostarray$counters$inforum;

    
// this function takes the constant MAXFORUMDEPTH as its guide for how
    // deep to recurse down forum lists. if MAXFORUMDEPTH is not defined,
    // it will assume a depth of 2.

    // call fetch_last_post_array() first to get last post info for forums
    
if (!is_array($lastpostarray))
    {
        
fetch_last_post_array($parentid);
    }

    if (empty(
$vbulletin->iforumcache["$parentid"]))
    {
        return;
    }

    if (!
defined('MAXFORUMDEPTH'))
    {
        
define('MAXFORUMDEPTH'2);
    }

    
$forumbits '';
    
$depth++;

    foreach (
$vbulletin->iforumcache["$parentid"] AS $forumid)
    {
        
// grab the appropriate forum from the $vbulletin->forumcache
        
$forum $vbulletin->forumcache["$forumid"];
        
//$lastpostforum = $vbulletin->forumcache["$lastpostarray[$forumid]"];
        
$lastpostforum = (empty($lastpostarray[$forumid]) ? array() : $vbulletin->forumcache["$lastpostarray[$forumid]"]);

        if (!
$forum['displayorder'] OR !($forum['options'] & $vbulletin->bf_misc_forumoptions['active']))
        {
            continue;
        }

        
$forumperms $vbulletin->userinfo['forumpermissions']["$forumid"];
        
$lastpostforumperms = (empty($lastpostarray[$forumid]) ? $vbulletin->userinfo['forumpermissions']["$lastpostarray[$forumid]"]);
        if (!(
$forumperms $vbulletin->bf_ugp_forumpermissions['canview']) AND ($vbulletin->forumcache["$forumid"]['showprivate'] == OR (!$vbulletin->forumcache["$forumid"]['showprivate'] AND !$vbulletin->options['showprivateforums'])))
        { 
// no permission to view current forum
            
continue;
        }

        if (
THIS_SCRIPT == 'index' AND $forum['subforumcolumns'] != AND ($subsonly OR $depth MAXFORUMDEPTH))
        {
            
$childforumbits construct_forum_columns($forum['forumid'], $forum['subforumcolumns']);
        }
        else if (
$subsonly)
        {
            
$childforumbits construct_forum_bit($forum['forumid'], 1$subsonly);
        }
        else if (
$depth MAXFORUMDEPTH)
        {
            
$childforumbits construct_forum_bit($forum['forumid'], $depth$subsonly);
        }
        else
        {
            
$childforumbits '';
        }

        
// do stuff if we are not doing subscriptions only, or if we ARE doing subscriptions,
        // and the forum has a subscribedforumid
        
if (!$subsonly OR ($subsonly AND !empty($forum['subscribeforumid'])))
        {

            
$GLOBALS['forumshown'] = true// say that we have shown at least one forum

            
if (($forum['options'] & $vbulletin->bf_misc_forumoptions['cancontainthreads']))
            { 
// get appropriate suffix for template name
                
$tempext '_post';
            }
            else

            {
                
$tempext '_nopost';
            }

            if (!
$vbulletin->options['showforumdescription'])
            { 
// blank forum description if set to not show
                
$forum['description'] = '';
            }

            
// dates & thread title
            
$lastpostinfo = (empty($lastpostarray[$forumid]) ? array() : $vbulletin->forumcache["$lastpostarray[$forumid]"]);

            
// compare last post time for this forum with the last post time specified by
            // the $lastpostarray, and if it's less, use the last post info from the forum
            // specified by $lastpostarray
            
if (!empty($lastpostinfo) AND $vbulletin->forumcache["$lastpostarray[$forumid]"]['lastpost'] > 0)
            {
                if (!(
$lastpostforumperms $vbulletin->bf_ugp_forumpermissions['canview']) OR (!($lastpostforumperms $vbulletin->bf_ugp_forumpermissions['canviewothers']) AND $lastpostinfo['lastposter'] != $vbulletin->userinfo['username']))
                {
                    
$forum['lastpostinfo'] = $vbphrase['private'];
                }
                else
                {
                    
$lastpostinfo['lastpostdate'] = vbdate($vbulletin->options['dateformat'], $lastpostinfo['lastpost'], 1);
                    
$lastpostinfo['lastposttime'] = vbdate($vbulletin->options['timeformat'], $lastpostinfo['lastpost']);
                    
$lastpostinfo['trimthread'] = fetch_trimmed_title(fetch_censored_text($lastpostinfo['lastthread']));

                    if (
$lastpostinfo['lastprefixid'] AND $vbulletin->options['showprefixlastpost'])
                    {
                        
$lastpostinfo['prefix'] = ($vbulletin->options['showprefixlastpost'] == ?
                            
$vbphrase["prefix_$lastpostinfo[lastprefixid]_title_rich"] :
                            
htmlspecialchars_uni($vbphrase["prefix_$lastpostinfo[lastprefixid]_title_plain"])
                        );
                    }
                    else
                    {
                        
$lastpostinfo['prefix'] = '';
                    }

                    if (
$vbulletin->forumcache["$lastpostforum[forumid]"]['options'] & $vbulletin->bf_misc_forumoptions['allowicons'] AND $icon fetch_iconinfo($lastpostinfo['lasticonid']))
                    {
                        
$show['icon'] = true;
                    }
                    else
                    {
                        
$show['icon'] = false;
                    }

                    
$show['lastpostinfo'] = (!$lastpostforum['password'] OR verify_forum_password($lastpostforum['forumid'], $lastpostforum['password'], false));

                    eval(
'$forum[\'lastpostinfo\'] = "' fetch_template('forumhome_lastpostby') . '";');
                }
            }
            else if (!(
$forumperms $vbulletin->bf_ugp_forumpermissions['canview']))
            {
                
$forum['lastpostinfo'] = $vbphrase['private'];
            }
            else
            {
                
$forum['lastpostinfo'] = $vbphrase['never'];
            }

            
// do light bulb
            
$forum['statusicon'] = fetch_forum_lightbulb($forumid$lastpostinfo$forum);

            
// add lock to lightbulb if necessary
            // from 3.6.9 & 3.7.0 we now show locks only if a user can not post AT ALL
            // previously it was just if they could not create new threads
            
if (
                
$vbulletin->options['showlocks'// show locks to users who can't post
                
AND !$forum['link'// forum is not a link
                
AND
                (
                    !(
$forum['options'] & $vbulletin->bf_misc_forumoptions['allowposting']) // forum does not allow posting
                    
OR
                    (
                            !(
$forumperms $vbulletin->bf_ugp_forumpermissions['canpostnew']) // can't post new threads
                        
AND !($forumperms $vbulletin->bf_ugp_forumpermissions['canreplyown']) // can't reply to own threads
                        
AND !($forumperms $vbulletin->bf_ugp_forumpermissions['canreplyothers']) // can't reply to others' threads
                    
)
                )
            )
            {
                
$forum['statusicon'] .= '_lock';
            }

            
// get counters from the counters cache ( prepared by fetch_last_post_array() )
            
$forum['threadcount'] = $counters["$forum[forumid]"]['threadcount'];
            
$forum['replycount'] = $counters["$forum[forumid]"]['replycount'];

            
// get moderators ( this is why we needed cache_moderators() )
            
if ($vbulletin->options['showmoderatorcolumn'])
            {
                
$showmods = array();
                
$listexploded explode(','$forum['parentlist']);
                foreach (
$listexploded AS $parentforumid)
                {
                    if (!isset(
$imodcache["$parentforumid"]) OR $parentforumid == -1)
                    {
                        continue;
                    }
                    foreach(
$imodcache["$parentforumid"] AS $moderator)
                    {
                        if (isset(
$showmods["$moderator[userid]"]))
                        {
                            continue;
                        }

                        (
$hook vBulletinHook::fetch_hook('forumbit_moderator')) ? eval($hook) : false;

                        
$showmods["$moderator[userid]"] = true;

                        
$show['comma_leader'] = isset($forum['moderators']);
                        if (!isset(
$forum['moderators']))
                        {
                            
$forum['moderators'] = '';
                        }

                        eval(
'$forum[\'moderators\'] .= "' fetch_template('forumhome_moderator') . '";');
                    }
                }
                if (!isset(
$forum['moderators']))
                {
                    
$forum['moderators'] = '';
                }
            }

            if (
$forum['link'])
            {
                
$forum['replycount'] = '-';
                
$forum['threadcount'] = '-';
                
$forum['lastpostinfo'] = '-';
            }
            else
            {
                
$forum['replycount'] = vb_number_format($forum['replycount']);
                
$forum['threadcount'] = vb_number_format($forum['threadcount']);
            }

            if ((
$subsonly OR $depth == MAXFORUMDEPTH) AND $vbulletin->options['subforumdepth'] > 0)
            {
                
$forum['subforums'] = construct_subforum_bit($forumid, ($forum['options'] & $vbulletin->bf_misc_forumoptions['cancontainthreads'] ) );
            }
            else
            {
                
$forum['subforums'] = '';
            }

            
$forum['browsers'] = 0;
            
$children explode(','$forum['childlist']);
            foreach(
$children AS $childid)
            {
                
$forum['browsers'] += (isset($inforum["$childid"]) ? $inforum["$childid"] : 0);
            }

            if (
$depth == AND $tempext == '_nopost')
            {
                global 
$vbcollapse;
                
$collapseobj_forumid =& $vbcollapse["collapseobj_forumbit_$forumid"];
                
$collapseimg_forumid =& $vbcollapse["collapseimg_forumbit_$forumid"];
                
$show['collapsebutton'] = true;
            }
            else
            {
                
$show['collapsebutton'] = false;
            }

            
$show['forumsubscription'] = ($subsonly true false);
            
$show['forumdescription'] = ($forum['description'] != '' true false);
            
$show['subforums'] = ($forum['subforums'] != '' true false);
            
$show['browsers'] = ($vbulletin->options['displayloggedin'] AND !$forum['link'] AND $forum['browsers'] ? true false);

            
// build the template for the current forum

            
($hook vBulletinHook::fetch_hook('forumbit_display')) ? eval($hook) : false;

            eval(
'$forumbits .= "' fetch_template("forumhome_forumbit_level$depth$tempext") . '";');

        } 
// end if (!$subsonly OR ($subsonly AND !empty($forum['subscribeforumid'])))
        
else
        {
            
$forumbits .= $childforumbits;
        }
    }

    return 
$forumbits;
}

// ###################### Start getforumlightbulb #######################
// returns 'on' or 'off' depending on last post info for a forum
function fetch_forum_lightbulb(&$forumid, &$lastpostinfo, &$foruminfo)
{

    global 
$bb_view_cache$vbulletin;

    if (
is_array($foruminfo) AND !empty($foruminfo['link']))
    { 
// see if it is a redirect
        
return 'link';
    }
    else
    {
        if (
$vbulletin->userinfo['lastvisitdate'] == -1)
        {
            return 
'new';
        }
        else
        {
            if (
$vbulletin->options['threadmarking'] AND $vbulletin->userinfo['userid'])
            {
                
$userlastvisit = (!empty($foruminfo['forumread']) ? $foruminfo['forumread'] : (TIMENOW - ($vbulletin->options['markinglimit'] * 86400)));
            }
            else
            {
                
$forumview intval(fetch_bbarray_cookie('forum_view'$foruminfo['forumid']));

                
//use which one produces the highest value, most likely cookie
                
$userlastvisit = ($forumview $vbulletin->userinfo['lastvisit'] ? $forumview $vbulletin->userinfo['lastvisit']);
            }

            if (
$lastpostinfo['lastpost'] AND $userlastvisit $lastpostinfo['lastpost'])
            {
                return 
'new';
            }
            else
            {
                return 
'old';
            }
        }
    }
}

// ###################### Start makesubforumbit #######################
// gets a list of a forum's children and returns it
// based on the forumhome_subforumbit template
function construct_subforum_bit($parentid$cancontainthreads$output ''$depthmark '--'$depth 0)
{
    global 
$vbulletin$stylevar$vbphrase;
    global 
$lastpostinfo$lastpostarray;
    static 
$splitter;

    if (
$cancontainthreads)
    {
        
$canpost 'post';
    }
    else
    {
        
$canpost 'nopost';
    }

    
// get the splitter template
    
if (!isset($splitter["$canpost"]))
    {
        eval(
'$splitter[$canpost] = "' fetch_template("forumhome_subforumseparator_$canpost") . '";');
    }

    if (!isset(
$vbulletin->iforumcache["$parentid"]))
    {
        return 
$output;
    }

    foreach(
$vbulletin->iforumcache["$parentid"] AS $forumid)
    {
        
$forum $vbulletin->forumcache["$forumid"];
        
$forumperms $vbulletin->userinfo['forumpermissions']["$forumid"];
        if (!(
$forumperms $vbulletin->bf_ugp_forumpermissions['canview']) AND ($vbulletin->forumcache["$forumid"]['showprivate'] == OR (!$vbulletin->forumcache["$forumid"]['showprivate'] AND !$vbulletin->options['showprivateforums'])))
        { 
// no permission to view current forum
            
continue;
        }

        if (!
$forum['displayorder'] OR !($forum['options'] & $vbulletin->bf_misc_forumoptions['active']))
        {
            
// forum not active
            
continue;
        }
        else
        { 
// get on/off status
            
$lastpostinfo $vbulletin->forumcache["$lastpostarray[$forumid]"];
            
$forum['statusicon'] = fetch_forum_lightbulb($forumid$lastpostinfo$forum);
            
$show['newposticon'] = ($forum['statusicon'] ? true false);

            (
$hook vBulletinHook::fetch_hook('forumbit_subforumbit')) ? eval($hook) : false;

            eval(
'$subforum = "' fetch_template("forumhome_subforumbit_$canpost") . '";');
            if (!empty(
$output))
            {
                
$subforum $splitter["$canpost"] . $subforum;
            }
            if (
$depth $vbulletin->options['subforumdepth'])
            {
                
$output .= construct_subforum_bit($forumid$cancontainthreads$subforum$depthmark '--'$depth 1);
            }

            (
$hook vBulletinHook::fetch_hook('forumbit_subforumbit2')) ? eval($hook) : false;
        }
    }

    return 
$output;

}

// ###################### Start geticoninfo #######################
function fetch_iconinfo($iconid 0)
{
    global 
$vbulletin$stylevar$vbphrase$vbulletin;

    
$iconid intval($iconid);

    switch(
$iconid)
    {
        case -
1:
            
DEVDEBUG('returning poll icon');
            return array(
'iconpath' => "$stylevar[imgdir_misc]/poll_posticon.gif"'title' => $vbphrase['poll']);
        case 
0:
            if (!empty(
$vbulletin->options['showdeficon']))
            {
                
DEVDEBUG("returning default icon");
                return array(
'iconpath' => $vbulletin->options['showdeficon'], 'title' => '');
            }
            else
            {
                return 
false;
            }
        default:
            if (
$vbulletin->iconcache !== null)
            { 
// we can get the icon info from the template cache

                
DEVDEBUG("returning iconid:$iconid from the template cache");
                return 
$vbulletin->iconcache["$iconid"];
            }
            else
            { 
// we have to get the icon from a query
                
DEVDEBUG("QUERYING iconid:$iconid)");
                return 
$vbulletin->db->query_first_slave("
                    SELECT title, iconpath
                    FROM " 
TABLE_PREFIX "icon
                    WHERE iconid = 
$iconid
                "
);
            }
    }
}

// ###################### Start construct_forum_columns #######################
function construct_forum_columns($parentid$columncount)
{
    global 
$vbulletin$stylevar$vbphrase$show;
    global 
$imodcache$lastpostarray$counters$inforum;

    
// this function takes the constant MAXFORUMDEPTH as its guide for how
    // deep to recurse down forum lists. if MAXFORUMDEPTH is not defined,
    // it will assume a depth of 2.

    
if ($columncount == 0)
    {
        
// 0 Columns means don't show subforums at all
        
return '';
    }

    
// call fetch_last_post_array() first to get last post info for forums
    
if (!is_array($lastpostarray))
    {
        
fetch_last_post_array();
    }

    if (empty(
$vbulletin->iforumcache["$parentid"]))
    {
        return;
    }

    if (!
defined(MAXFORUMDEPTH))
    {
        
define('MAXFORUMDEPTH'1);
    }

    
$forumbits '';

    
$counter 0;
    foreach (
$vbulletin->iforumcache["$parentid"] AS $forumid)
    {
        
// grab the appropriate forum from the $vbulletin->forumcache
        
$forum $vbulletin->forumcache["$forumid"];
        
$lastpostforum $vbulletin->forumcache["$lastpostarray[$forumid]"];
        if (!
$forum['displayorder'] OR !($forum['options'] & $vbulletin->bf_misc_forumoptions['active']))
        {
            continue;
        }

        
$forumperms $vbulletin->userinfo['forumpermissions']["$forumid"];
        
$lastpostforumperms $vbulletin->userinfo['forumpermissions']["$lastpostarray[$forumid]"];
        if (!(
$forumperms $vbulletin->bf_ugp_forumpermissions['canview']) AND !$vbulletin->options['showprivateforums'])
        { 
// no permission to view current forum
            
continue;
        }

        if (
$subsonly)
        {
            
$childforumbits construct_forum_bit($forum['forumid'], 1$subsonly);
        }
        else if (
$depth MAXFORUMDEPTH)
        {
            
$childforumbits construct_forum_bit($forum['forumid'], $depth$subsonly);
        }
        else
        {
            
$childforumbits '';
        }

        
// do stuff if we are not doing subscriptions only, or if we ARE doing subscriptions,
        // and the forum has a subscribedforumid
        
if (!$subsonly OR ($subsonly AND !empty($forum['subscribeforumid'])))
        {

            
$GLOBALS['forumshown'] = true// say that we have shown at least one forum

            
if (($forum['options'] & $vbulletin->bf_misc_forumoptions['cancontainthreads']))
            { 
// get appropriate suffix for template name
                
$tempext '_post';
            }
            else

            {
                
$tempext '_nopost';
            }

            if (!
$vbulletin->options['showforumdescription'])
            { 
// blank forum description if set to not show
                
$forum['description'] = '';
            }

            
// dates & thread title
            
$lastpostinfo $vbulletin->forumcache["$lastpostarray[$forumid]"];

            
// compare last post time for this forum with the last post time specified by
            // the $lastpostarray, and if it's less, use the last post info from the forum
            // specified by $lastpostarray
            
if ($vbulletin->forumcache["$lastpostarray[$forumid]"]['lastpost'] > 0)
            {
                if (!(
$lastpostforumperms $vbulletin->bf_ugp_forumpermissions['canview']) OR (!($lastpostforumperms $vbulletin->bf_ugp_forumpermissions['canviewothers']) AND $lastpostinfo['lastposter'] != $vbulletin->userinfo['username']))
                {
                    
$forum['lastpostinfo'] = $vbphrase['private'];
                }
                else
                {
                    
$lastpostinfo['lastpostdate'] = vbdate($vbulletin->options['dateformat'], $lastpostinfo['lastpost'], 1);
                    
$lastpostinfo['lastposttime'] = vbdate($vbulletin->options['timeformat'], $lastpostinfo['lastpost']);
                    
$lastpostinfo['trimthread'] = fetch_trimmed_title($lastpostinfo['lastthread']);

                    if (
$icon fetch_iconinfo($lastpostinfo['lasticonid']))
                    {
                        
$show['icon'] = true;
                    }
                    else
                    {
                        
$show['icon'] = false;
                    }

                    
$show['lastpostinfo'] = (!$lastpostforum['password'] OR verify_forum_password($lastpostforum['forumid'], $lastpostforum['password'], false));

                    eval(
'$forum[\'lastpostinfo\'] = "' fetch_template('forumhome_lastpostby') . '";');
                }
            }
            else if (!(
$forumperms $vbulletin->bf_ugp_forumpermissions['canview']))
            {
                
$forum['lastpostinfo'] = $vbphrase['private'];
            }
            else
            {
                
$forum['lastpostinfo'] = $vbphrase['never'];
            }

            
// do light bulb
            
$forum['statusicon'] = fetch_forum_lightbulb($forumid$lastpostinfo$forum);

            
// add lock to lightbulb if necessary
            
if ((!($forumperms $vbulletin->bf_ugp_forumpermissions['canpostnew']) OR !($forum['options'] & $vbulletin->bf_misc_forumoptions['allowposting'])) AND $vbulletin->options['showlocks'] AND !$forum['link'])
            {
                
$forum['statusicon'] .= '_lock';
            }

            
// get counters from the counters cache ( prepared by fetch_last_post_array() )
            
$forum['threadcount'] = $counters["$forum[forumid]"]['threadcount'];
            
$forum['replycount'] = $counters["$forum[forumid]"]['replycount'];

            
// get moderators ( this is why we needed cache_moderators() )
            
if ($vbulletin->options['showmoderatorcolumn'])
            {
                
$showmods = array();
                
$listexploded explode(','$forum['parentlist']);
                foreach (
$listexploded AS $parentforumid)
                {
                    if (!isset(
$imodcache["$parentforumid"]))
                    {
                        continue;
                    }
                    foreach(
$imodcache["$parentforumid"] AS $moderator)
                    {
                        if (isset(
$showmods["$moderator[userid]"]))
                        {
                            continue;
                        }

                        (
$hook vBulletinHook::fetch_hook('forumbit_moderator')) ? eval($hook) : false;

                        
$showmods["$moderator[userid]"] = true;
                        if (!isset(
$forum['moderators']))
                        {
                            eval(
'$forum[\'moderators\'] = "' fetch_template('forumhome_moderator') . '";');
                        }
                        else
                        {
                            eval(
'$forum[\'moderators\'] .= ", ' fetch_template('forumhome_moderator') . '";');
                        }
                    }
                }
                if (!isset(
$forum['moderators']))
                {
                    
$forum['moderators'] = '';
                }
            }

            if (
$forum['link'])
            {
                
$forum['replycount'] = '-';
                
$forum['threadcount'] = '-';
                
$forum['lastpostinfo'] = '-';
            }
            else
            {
                
$forum['replycount'] = vb_number_format($forum['replycount']);
                
$forum['threadcount'] = vb_number_format($forum['threadcount']);
            }

            if ((
$subsonly OR $depth == MAXFORUMDEPTH) AND $vbulletin->options['subforumdepth'] > 0)
            {
                
$forum['subforums'] = construct_subforum_bit($forumid, ($forum['options'] & $vbulletin->bf_misc_forumoptions['cancontainthreads'] ) );
            }
            else
            {
                
$forum['subforums'] = '';
            }

            
$children explode(','$forum['childlist']);
            foreach(
$children AS $childid)
            {
                
$forum['browsers'] += ($inforum["$childid"] ? $inforum["$childid"] : 0);
            }

            if (
$depth == AND $tempext == '_nopost')
            {
                global 
$vbcollapse;
                
$collapseobj_forumid =& $vbcollapse["collapseobj_forumbit_$forumid"];
                
$collapseimg_forumid =& $vbcollapse["collapseimg_forumbit_$forumid"];
                
$show['collapsebutton'] = true;
            }
            else
            {
                
$show['collapsebutton'] = false;
            }

            
$show['forumsubscription'] = ($subsonly true false);
            
$show['forumdescription'] = ($forum['description'] != '' true false);
            
$show['subforums'] = ($forum['subforums'] != '' true false);
            
$show['browsers'] = ($vbulletin->options['displayloggedin'] AND !$forum['link'] AND $forum['browsers'] ? true false);

            
// build the template for the current forum
            
$column_width intval(100 $columncount) . '%';
            eval(
'$column = "' fetch_template("forumhome_forumbit_columncell") . '";');
            
            
// do the columnstuff
            
if ($counter $columncount == 0)
            {
                
// Begin a new row
                
$forumbits .= "\t<tr>\n";
            }
            
$forumbits .= $column;
            if (
$counter $columncount == $columncount 1)
            {
                
// End row
                
$forumbits .= "\t</tr>\n";
            }
            
$counter++;
        }
    }

    
// prevent unclosed <tr> tags
    
if ($counter $columncount != 0)
    {
        
$forumbits .= "\t</tr>\n";
    }
    
    return 
$forumbits;
}

/*======================================================================*\
|| ####################################################################
|| # NulleD - FintMax
|| # CVS: $RCSfile$ - $Revision: 28323 $
|| ####################################################################
\*======================================================================*/
?>
then open forumhome_forumbit_columncell and replace all by this
PHP Code: 
<td class=>
    <
div>
<
table>
 <
tr>
  <
td>
        <
img src="$stylevar[imgdir_statusicon]/$forumid.png" alt="" border="0" />
          <
td><a href="forumdisplay.php?$session[sessionurl]f=$forum[forumid]"><strong>$forum[title]</strong></a>
    </
div>
    <if 
condition="$show['forumdescription']"><div class="smallfont">$forum[description]</div></if>
</
td>
 </
tr>
</
table>
<
div class="smallfont" style="border: 1px solid #DFDFDF; background-color: #DFDFDF; margin-top: 3px" align="$stylevar[left]">
<
div style="clear:both">
<if 
condition="$show['lastpostinfo']">
<
div class="smallfont" align="$stylevar[left]">
<
div style="clear:both">
Last Post: <a href="showthread.php?$session[sessionurl]goto=newpost&amp;t=$lastpostinfo[lastthreadid]title="<phrase 1="$lastpostinfo[lastthread]">$vbphrase[go_first_unread_in_thread_x]</phrase>"><strong>$lastpostinfo[trimthread]</strong></a>
</
div>
<
div><if condition="is_browser('ie', 6)"style="float:$stylevar[left]"</if>
Posted <phrase 1="member.php?$session[sessionurl]find=lastposter&amp;f=$lastpostinfo[forumid]2="$lastpostinfo[lastposter]">$vbphrase[by_x]</phrase>

-
$lastpostinfo[lastpostdate] <if condition="!$show['detailedtime']">-<span class="time">$lastpostinfo[lastposttime]</span></if><BR><BR>
<
b>Forum Info</b>: Threads: <b><i>$forum[threadcount]</b></i>
Posts: <b><i>$forum[replycount]</b></i></div>
</if>
</
div>
</
div>

</
td
then open forumhome_forumbit_level1_nopost and replace all by

PHP Code: 
<if condition="!$show['collapsable_forums']">
<
tbody>
</if>
<
table class="tborder" cellpadding="$stylevar[cellpadding]cellspacing="$stylevar[cellspacing]border="0" width="100%" align="center">
    <
tr>
        <
td class="tcat" colspan="<if condition="$vboptions[showmoderatorcolumn]">6<else />5</if>">
            <if 
condition="$childforumbits">
            <
a style="float:$stylevar[right]href="#top" onclick="return toggle_collapse('forumbit_$forumid')"><img id="collapseimg_forumbit_$forumidsrc="$stylevar[imgdir_button]/collapse_tcat{$collapseimg_forumid}.gif" alt="" border="0" /></a>
            </if>
            <
a href="forumdisplay.php?$session[sessionurl]f=$forum[forumid]">$forum[title]</a>
            <if 
condition="$show['forumdescription']"><br /><span class="smallfont">$forum[description]</span></if>
            <if 
condition="$show['subforums']"><div class="smallfont"><strong>$vbphrase[subforums]</strong>: $forum[subforums]</div></if>
        </
td>
    </
tr>
<if 
condition="!$show['collapsable_forums']">
</
tbody>
</if>
<if 
condition="$childforumbits">
<if 
condition="$forum['subforumcolumns'] > 1">
</
table>
<
table width="500%" border="1" cellpadding="2" cellspacing="2" style="style="table-layout:fixed" >
<col width=50%>
<if condition="
!$show['collapsable_forums']">
<tbody id="
collapseobj_forumbit_$forumid" style="{$collapseobj_forumid}">
</if>
<tr>
$childforumbits
</tr>
<if condition="
!$show['collapsable_forums']">
</tbody>
</if>

<else />
<if condition="
!$show['collapsable_forums']">
<tbody id="
collapseobj_forumbit_$forumid" style="{$collapseobj_forumid}">
</if>
$childforumbits
<if condition="
!$show['collapsable_forums']">
</tbody>
</if>
</if>
</if>
</table>
<br /> 
do Forumhome template changes as show in instructions file..

and u r done

example: http://www.kk4tech.com/kk/
bluedevil Reviewed by bluedevil on . Forum Arranges In Column In Forum Home hello, most of us know this mod,, but i have some specifications in this mod, normally this mod convert forums in column, but it does not fixed the width of column, some of them are big and some of them are, but newbies like me dont know how to make them fixed width and how to customize this in own way, most of us can see my thread which i requested for help in fixing the width of columns.. but now i searched too musch and get my solution too huh! here is a complete tutorials for vb3.8.x Rating: 5