PDA

View Full Version : Help with <if> conditionals...


DiSpy
04-11-2007, 01:44 PM
I know there were more, but here's a few that were bugging me all week...

How do I use an <if></if> conditional to only show something when there are no posts in a particular forum? (I'd like to put a box at the top with something like "Wow, looks like no one has posted here yet... why not start a topic?")

How do I use <if></if> to have the threads/replies/lastpost columns not show up if it's an external link?

How do I use <if></if> to show or hide stuff from search engines? Or is it easier to just show or hide stuff from all guests? (I'd like to hide sigs, some postbit info, etc)

How do I use <if></if> conditionals to show stuff on a users' postbit ONLY if the field is filled out in their profile? (and/or custom profile fields)
-- I'd like to show standard things like last login date, and secondary usergroup.
-- I'd like to show some custom fields I made, but only if they are filled in.

On a totally separate note, i'd like the archive to show a quick reply box on the relevant pages. Some of my users (including me) will be using the archive (is there anyway to change the name from "archive"?) to view the site using their cellphones/pda's. I have quick reply turned off in the admin panel, but I can turn it on, and then just disable it in the default style with <if></if>, no? Also, anyway to add a <new> icon next to new posts in the archive? ...and are there templates somewhere for the archive, or is all hard coded php files?

THANK YOU!

WetWired
04-11-2007, 05:45 PM
The archive is hard-coded, last I checked.
To only show information if it is available, just use the variable in the condition. For example:
<if condition="$post['field5']"><div>Label: $post[field5]</div></if>
If the field is a number and 0 is valid, you may want to wrap the variable in is_numeric().

You can hide stuff from guests using
<if condition="$bbuserinfo['userid']!=0"></if>

For the external links, just set the forum to act as a category.

For the empty forum, use
<if condition="$totalthreads==0"></if>
Note that this condition will also be true if there are threads, but they are all too old to be included in the current view.

Dismounted
04-12-2007, 05:18 AM
Hiding things from guests should be:
<if condition="!$show['guest']"></if>

DiSpy
04-12-2007, 01:26 PM
Perfect, thanks guys!:up:

(Now i've just got to figure out this archive stuff.)

DiSpy
04-13-2007, 01:58 PM
For the external links, just set the forum to act as a category.


Hmm... that doesn't work, when I change the forum to act as a category it shows up totally different on sub-forum pages (looks like the archive board looks here: http://www.vbulletin.com/forum/ ) that's not what i'm looking for. Also, it changes the icon to a sub-forum icon instead of an external link icon.

Any other ideas?

WetWired
04-13-2007, 03:47 PM
Hmm, well, it's style dependant. If it looks like that, technically, it did do what you were asking :p.

This is based off of 3.5.4, but should still be right..
in forumhome_forumbit_level2_post:
find
<td class="alt1Active" align="$stylevar[left]" id="f$forum[forumid]">
to the end of the tag, add (before the closing >):
<if condition="$forum['statusicon']=='link'"> colspan="<if condition="$vboptions['showmoderatorcolumn']">5<else />4</if>"</if>
find
<td class="alt2" nowrap="nowrap">$forum[lastpostinfo]</td>
above it, add
<if condition="$forum['statusicon']!='link'">
find
</tr>
$childforumbits
above it,add
</if>