![]() |
Odd behavior with template conditionnals
Hello !
Today I came across a problem with template conditionnals which seems weird. In short : same condition does not work in a template but works fine in another one :eek: (without any changes, of course). Example : create a new template and fill it with Code:
<if condition="is_member_of($vbulletin->userinfo,6)">Group 6<else />Other group</if> Now use this template in a small program PHP Code:
Display will show if you're a member of group 6 or not. Fine. Now, copy the small template code in the postbit template, at the very beginning (location is not important, in fact, but it's easier to see the modified code at the beginning ;) ) Same result as before should now display just under the thread tool bar. But it doesn't :( However, you can see the correct display result if you replace $vbulletin->userinfo with $bbuserinfo within the template... https://vborg.vbsupport.ru/external/2007/03/6.gif Now take the same template code again (the one with $vbulletin->userinfo) and paste it in the navbar template like if you wanted to create an new option in it. Now it works again, with either $vbulletin->userinfo or $bbuserinfo :) Does anyone have any info on such behavior ? I haven't yet tested with other predfined templates, so I may have found the only one that's working this way ;) |
After some tests, it seems that only postbit and postbit_legacy are concerned... I say "seems", as I haven't tested all templates, of course, but nearly 20 of the most common ones. All 20 are giving correct results with $vbulletin->userinfo variable.
Btw, I find it rather "good" that only those templates are concerned, as it may have to do with some special treatment for them :) If I get no response or no clue from here, I will try to investigate deeper. |
You need to use different variables depending on what template. :) By the way, I believe "$vbulletin->userinfo" is just the long way of saying $bbuserinfo, but I dunno, maybe you still have to write it out longhand in some templates.
In the postbit, this: Code:
<if condition="is_member_of($vbulletin->userinfo,6)">Group 6<else />Other group</if> Code:
<if condition="is_member_of($post, 6)">Group 6<else />Other group</if> |
$vbulletin->userinfo will in most cases contain the information of the user browsing the page (ie. the logged in user).
The $post in the example contains the userinfo of the member that made this one post. |
Quote:
Quote:
In this tutorial, we can see that Quote:
Quote:
PHP Code:
So I think there are some troubles out there ;) |
All times are GMT. The time now is 12:11 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 | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|