Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.0 > vBulletin 3.0 Full Releases
FAQ Community Calendar Today's Posts Search

 
 
Thread Tools
Arrange Sub-Forums in columns Details »»
Arrange Sub-Forums in columns
Version: 1.00, by tamarian tamarian is offline
Developer Last Online: Nov 2023 Show Printable Version Email this Page

Version: 3.0.7 Rating:
Released: 04-04-2004 Last Update: Never Installs: 138
 
No support by the author.

There's also a vB 3.5 version here: https://vborg.vbsupport.ru/showthrea...threadid=82845

What it does
This hack arranges sub-forums on the forum home into 2 (or more) columns, makeing large lists of sub-forums more presentable. You can see it in action on my forums here:

Demo
http://forum.lowcarber.org

Note:
1. You need to enable sub-forum display on the forum home from your vB admin panel
2. This hack is for the forum home page, not forum display.


To enable sub-forums on the forum home page
1. Go to your forum Admin panel
2. Click vBulletin Options
3. Select "Forum Listings Display Options" from the drop down list
4. In "Depth of Sub-Forums" replace 0 with 1

Installation
To install, edit the file functions_forumlist.php (in the includes directory)

1. Find

PHP Code:
      foreach($vbulletin->iforumcache["$parentid"] AS $forumid
Place this code above it:

PHP Code:
$output .= "<table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" align=\"center\" ><tr valign=\"top\"> ";
      
$cols 0
2. Find
PHP Code:
            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);
            }
        }
    }

    return 
$output;


Replace with
PHP Code:
            eval('$subforum = "' fetch_template("forumhome_subforumbit_$canpost") . '";');
                    if (
$depth $vbulletin->options['subforumdepth'])
                        {
                                
$cols++;
                                if (
$cols==3)
                                        {
                                        
$cols 1;
                                        
$output .=  "</tr><tr>";
                                        }

                        
$output .= '<td width="50%">' construct_subforum_bit($forumid$cancontainthreads$subforum$depthmark '--'$depth 1) . "</td>";
                        }
        }
    }

        if (
$cols ==1$output.="<td>&nbsp;</td></tr></table>";
    else 
$output.="</tr></table>";

        return 
$output;


To put them in 3 columns, instead of t2, just edit this line "if ($cols==3)" to "if ($cols==4)" and change this line:

PHP Code:
                  $output .= "<td width=\"50%\">" construct_subforum_bit($forumid$cancontainthreads$subforum$depthmark '--'$depth 1) . ""
To this:
PHP Code:
                  $output .= "<td width=\"33%\">" construct_subforum_bit($forumid$cancontainthreads$subforum$depthmark '--'$depth 1) . ""
Template modification (optional)
As this hack will list the sub-forums in a table, the font used is not effected by the <div> tag for subforums, which will cause the default font to be used instead of smallfont.

To use smallfont for sub-forum names, edit the "forumhome_subforumbit_post"

Change (this is the whole template)
Code:
<img class="inlineimg" src="$stylevar[imgdir_statusicon]/subforum_$forum[statusicon].gif" alt="" /> <a href="forumdisplay.php?$session[sessionurl]f=$forum[forumid]">$forum[title]</a>
To:
Code:
<img class="inlineimg" src="$stylevar[imgdir_statusicon]/subforum_$forum[statusicon].gif" alt="" /> <a href="forumdisplay.php?$session[sessionurl]f=$forum[forumid]"><span class="smallfont">$forum[title]</span></a>

And for those who want to edit or remove the "Sub-forum" word, just remove (or edit, if you just want to change it) "<strong>$vbphrase[subforums]</strong>:" from the "forumhome_forumbit_level2_post" template

Screen shots, before/after

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #102  
Old 01-24-2005, 08:34 PM
tamarian tamarian is offline
 
Join Date: Oct 2001
Location: Canada
Posts: 1,205
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Razz
tamarian, you added the fix before I changed it again, my previous post was edited for the correct syntax as although the other method I posted worked, the one showing now is the correct way to do it

Sorry to mess you about
No problem, re-applied.
Reply With Quote
  #103  
Old 01-24-2005, 08:36 PM
tamarian tamarian is offline
 
Join Date: Oct 2001
Location: Canada
Posts: 1,205
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by lanc3lot
Can someone tell what u gain with this last addon?
It's just more XHTML standard compliant. No need to worry about if you don't want to change it, you'll be fine.
Reply With Quote
  #104  
Old 01-24-2005, 09:27 PM
Razz Razz is offline
 
Join Date: Dec 2001
Location: UK
Posts: 72
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

tamarian I'm still getting a couple of errors on the XHTML compliance test, I've managed to track it back to this column hack.

Code:
<tr valign="top"></tr>
"end tag for "tr" which is not finished"

Any ideas?

It seems to be something to do with having uneven numbered subforums as I get two occurences of this and have 2 lots of uneven numbered subforums.
Reply With Quote
  #105  
Old 01-24-2005, 09:50 PM
tamarian tamarian is offline
 
Join Date: Oct 2001
Location: Canada
Posts: 1,205
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Razz
tamarian I'm still getting a couple of errors on the XHTML compliance test, I've managed to track it back to this column hack.

Code:
<tr valign="top"></tr>
"end tag for "tr" which is not finished"

Any ideas?

It seems to be something to do with having uneven numbered subforums as I get two occurences of this and have 2 lots of uneven numbered subforums.

Try this:

PHP Code:
        if ($cols ==1$output.="<td>&nbsp;</td></tr></table>";
    else 
$output.="</tr></table>"
Instead of this:

PHP Code:
$output.="</tr></table>"
This should add an empty cell to odd numbered sub-forums.

Let me know if it passes, and I'll add it to the original.
Reply With Quote
  #106  
Old 01-24-2005, 10:01 PM
Razz Razz is offline
 
Join Date: Dec 2001
Location: UK
Posts: 72
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Exactly same error, no change at all
Reply With Quote
  #107  
Old 01-24-2005, 10:04 PM
Razz Razz is offline
 
Join Date: Dec 2001
Location: UK
Posts: 72
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Wouldn't it need to be inside the foreach loop?
Reply With Quote
  #108  
Old 01-24-2005, 10:09 PM
tamarian tamarian is offline
 
Join Date: Oct 2001
Location: Canada
Posts: 1,205
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Razz
Wouldn't it need to be inside the foreach loop?
No, it's only for the last subforum for each parent forum. If the last sub-forum is odd, it adds an empty cell to complete the TR.

Why not post the errors, and someone might spot it for us.

I can't validate my own main page, since I'm sure it will stop the validation too early due to too many XHTML errors
Reply With Quote
  #109  
Old 01-24-2005, 10:13 PM
Razz Razz is offline
 
Join Date: Dec 2001
Location: UK
Posts: 72
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Line 279, column 493: end tag for "tr" which is not finished

Code:
...lign="center" ><tr valign="top"> </tr></table></td><td width="50%"><img class
Most likely, You nested tags and closed them in the wrong order. For example <p><em>...</p> is not acceptable, as <em> must be closed before <p>. Acceptable nesting is: <p><em>...</em></p>

Another possibility is that you used an element (e.g. 'ul') which requires a child element (e.g. 'li') that you did not include. Hence the parent element is "not finished", not complete
Reply With Quote
  #110  
Old 01-24-2005, 10:14 PM
Razz Razz is offline
 
Join Date: Dec 2001
Location: UK
Posts: 72
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thats the complete error, notice that the <tr> is still immediately terminated, there is no blank cell in there.
Reply With Quote
  #111  
Old 01-25-2005, 06:07 AM
Razz Razz is offline
 
Join Date: Dec 2001
Location: UK
Posts: 72
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I'm pretty sure it's not the odd number of columns causing this now, it seems as if it's related to some subforums having subforums of their own.
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 07:54 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.07402 seconds
  • Memory Usage 2,342KB
  • Queries Executed 25 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (5)bbcode_code
  • (8)bbcode_php
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete