vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   Graphics Articles (https://vborg.vbsupport.ru/forumdisplay.php?f=221)
-   -   Alternating rows without relying on PHP (https://vborg.vbsupport.ru/showthread.php?t=160246)

Michael Morris 10-13-2007 09:00 PM

Alternating rows without relying on PHP
 
Here's a way to alter row colors using vbulletin's template engine without using any outside functions.

At the beginning of your rowbit template place the following code.

Code:

<if condition="$bg++"><!-- Row: $bg --></if>
Now for each row that you need to have alternate colors place the following code where the class name would go.

Code:

<if condition="$bg%2 == 0">alt2<else />alt1</if>
Below is a complete example using one of the forumbit templates.

Code:

<if condition="$bg++"><!-- Row: $bg --></if>
<tr align="center">
        <td class="<if condition="$bg%2 == 0">alt2<else />alt1</if>"><img src="$stylevar[imgdir_statusicon]/forum_$forum[statusicon].png" alt="" border="0" id="forum_statusicon_$forum[forumid]" /></td>
        <td class="<if condition="$bg%2 == 0">alt2<else />alt1</if>" align="$stylevar[left]" id="f$forum[forumid]">
                <div>
                        <a href="forumdisplay.php?$session[sessionurl]f=$forum[forumid]"><strong>$forum[title]</strong></a>
                        <if condition="$show['browsers']"><span class="smallfont">(<phrase 1="$forum[browsers]">$vbphrase[x_viewing]</phrase>)</span></if>
                </div>
                <if condition="$show['forumdescription']"><div class="smallfont">$forum[description]</div></if>
                <if condition="$show['forumsubscription']"><div class="smallfont"><strong><a href="subscription.php?$session[sessionurl]do=removesubscription&amp;f=$forum[forumid]" rel="nofollow">$vbphrase[unsubscribe_from_this_forum]</a></strong></div></if>
                <if condition="$show['subforums']"><div class="smallfont" style="margin-top:$stylevar[cellpadding]px"><strong>$vbphrase[subforums]</strong>: $forum[subforums]</div></if>
        </td>
        <td class="<if condition="$bg%2 == 0">alt2<else />alt1</if>" nowrap="nowrap">$forum[lastpostinfo]</td>
        <td class="<if condition="$bg%2 == 0">alt2<else />alt1</if>">$forum[threadcount]</td>
        <td class="<if condition="$bg%2 == 0">alt2<else />alt1</if>">$forum[replycount]</td>
        <if condition="$vboptions['showmoderatorcolumn']">
        <td class="<if condition="$bg%2 == 0">alt2<else />alt1</if>"><div class="smallfont">$forum[moderators]&nbsp;</div></td>
        </if>
</tr>
$childforumbits


Audentio 10-26-2007 10:48 PM

Now THAT is nice. Great work, I can definitely use this in some of my designs.

TheMilkCarton 11-01-2007 07:32 PM

Wow. Thanks.. So much easier than what I had planned... :)

Works very well with modules from vBadvanced, too. I modified the news.php file to be a comments system, and now it looks really nice!

Thanks!

Michael Morris 11-05-2007 06:15 AM

Thanks.

Mazinger 05-13-2008 05:45 PM

Great! Thanks!

akanevsky 05-13-2008 05:57 PM

Why would you not want to rely on the built-in switcher?

stanleys 06-07-2008 01:15 AM

You can also do it via Javascript if you have a framework like jQuery or Prototype installed:

$("tr: odd").addCLass('altRow');

(remove the space between the : and the o)


All times are GMT. The time now is 04:52 PM.

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.02168 seconds
  • Memory Usage 1,723KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (3)bbcode_code_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (7)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete