vBulletin Mods

The Official vBulletin Modifications Site
https://www.vbulletin.org/forum/showthread.php?t=250813

BBCode - Comprehensive set of TABLE tags (BB Code)
by BirdOPrey5
19 Sep 2010 17:37

2 Attachment(s)
WARNING- USING THIS CAN BE A SECURITY RISK!!!
Using this BB Code will allow people who know what they are doing to run arbitrary JavaScript in the code. For this reason I strongly recommend you limit the use of this BB Code to admins and trusted users (mods?) only! You can use the Advanced BB Code Permissions mod to limit this by usergroup. I have it installed on 3.8.6 and it's working well. Thanks to Kyo-Dono for pointing this out.


[tbl],[tr],[td],[th]

Demo URL: http://www.juot.net/forums/showthrea...497#post872497

This is a comprehensive set of codes for making HTML tables. If you're not familiar with HTML tables this code is probably not for you, if you are this should come in very handy.

One of the main limitations of bulletin board software is the inability to put tables into posts. The existing [table] BB Code Mod helps but it is not easy to use and the interface isn't similar to traditional HTML tables. This set of table elements mimic traditional <html> tags and allow for advanced elements like background color, alignment, height and width attributes for any element.
(The existing mod is here: http://www.vbulletin.org/forum/showthread.php?t=107985 you may prefer that to this.)

All HTML tables are made up of at least 3 sets of HTML tags such as:
<table><tr><td>Some Info Here</td></tr></table>

Using this BB Code solution the syntax for the same would simply be:
[tbl][tr][td]Some Info Here[/td][/tr][/tbl]

Note "tbl" is being used instead of "table" to keep compatibility with the existing [table] BB Code.

The code above gives a pretty boring table...

Where this code really shines is that in any of those elements you can use the "option" part of the tag to add attributes to that element, so if you wanted to make the whole table light-blue you could use:
[tbl="bgcolor=lightblue"][tr][td]Some Info Here[/td][/tr][/tbl]

And if you wanted to make the cell 50 pixels high:
[tbl="bgcolor=lightblue"][tr][td="height=50"]Some Info Here[/td][/tr][/tbl]

There are many attributes you may be familiar with for HTML tables, all and any can be used in these tags. A more complicated table would be:
[tbl="border=0 bgcolor=grey align=center"]
[tr][th="bgcolor=lightblue colspan=3"][B]Table Header[/B][/th][/tr]
[tr][td]:pirate:[/td][td="bgcolor=yellow"]:jump:[/td][td]:panic:[/td][/tr]
[tr="bgcolor=pink height=50"][td]:sad:[/td][td]:owned:[/td][td]:thup2:[/td][/tr]
[/tbl]

As you can see you may use other BB Code's within these codes as well as smilies and images.

There are many resources on the web for learning about HTML tables. This is one of many:
http://www.quackit.com/html/codes/html_table_code.cfm

To make this code work its magic we need to install 8 seperate BB Codes (6 if you don't care about table headers).

For each code we want to install it both with and without an "option" attribute- this will make using the code easier when you have no options needed but let you use them anywhere they are needed.

For the sake of simplicity I'm going to skip of few of the most basic steps, BB Codes are generally easy but please make sure you've installed a few before this one.

You can call the tags anything you want, in my examples I used:
tbl = <table> tag... (for compatibility if you have another [table] BB Code installed.
tr = <tr> tag (Table Row)
th = <th> tag (Table Header)
td = <td> tag {Table Data or Cell)

For the tags without options use the following replacements:

[tbl]

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

[th]

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

[tr]

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

[td]

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

For each of the above I recommend the following example:
[tbl][tr][th]Header[/th][/tr][tr][td]test[/td][/tr][/tbl]
Remember the example won't show correctly until every code in the set is installed.

Add the following code replacements WITH Option-
"Use Option = Enabled"

[tbl]

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

[th]

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

[tr]

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

[td]

Block Disabled:      (Update License Status)  
Suspended or Unlicensed Members Cannot View Code.

For all the above codes you want to use the following settings:
Disable Word Wrapping inside BB Code = Yes
All Other Disable Options = No

You will now be able to make complete HTML tables using the tags with or without options as needed.
See the Demo above for this code in action.

Please Mark as Installed if you use this. :)

Download a copy of the .txt file as a backup.

kenny19 13 Dec 2010 00:47

When I use [tbl border=1] or [tbl border="1"] it doesn't put a border around my table. It just displays that code. I have done everything exactly like you said when I set up my HTML replacement code.

I have double and triple checked what I entered with what you say to enter. I also haven't tested any of the other tags with the {option} parameter. Is it possible this error is being caused because I have the normal [tbl] tag without the options and the [tbl] tag with options? Should they have different BBCode ([tbl1] for example)?

We're using vBulletin 3.8.6 on our site.


Edit: Sorry, I think I was just doing it wrong. I put the HTML in correctly but I was typing my BB Code wrong. I should have been using [tbl=border="1"] I think.

BirdOPrey5 13 Dec 2010 01:15

Quote:

Originally Posted by kenny19 (Post 2133043)

Edit: Sorry, I think I was just doing it wrong. I put the HTML in correctly but I was typing my BB Code wrong. I should have been using [tbl=border="1"] I think.

that is correct... or ideally [tbl="border='1'"]


All times are GMT. The time now is 15:32.

Powered by vBulletin® Version 3.8.14
Copyright © 2020, MH Sub I, LLC dba vBulletin. All Rights Reserved. vBulletin® is a registered trademark of MH Sub I, LLC
Copyright ©2001 - , vbulletin.org. All rights reserved.