sv1cec
12-12-2013, 05:02 PM
I am working on old hack I've build for vB 3.0.xx, which I would like to upgrade so that we can use it in our new vB 4.2.2 site and I have trouble making the conditionals inside the templates work.
For example, I have this template:
<html>
<head>
{vb:raw headinclude}
<title>$vboptions[bbtitle] - $pagetitle</title>
{vb:raw headinclude_bottom}
</head>
<body>
{vb:raw header}
<BR>
<vb:if condition="$bbuserinfo[userid]=='0'">
<table class="tborder" cellpadding="5" cellspacing="5" border="0" width="100%" align="center">
<tr>
<td colspan="3">Guest - No Permissions</td>
</tr>
<tr>
<td colspan="3">Unable To View</td>
</tr>
<tr>
<td colspan="3">Guests Are Unable To View This Page</td>
</tr>
</table>
<br/>
<vb:else />
$warn_page
<br />
</vb:if>
{vb:raw footer}
</body>
</html>
Nothing shows up. If I edit it and remove the conditional, then it works fine (OK, there are some formating issues but that's another thing).
So my question is: Is there something special that needs to be done, in the php side of things, in order for conditionals to work? I've noticed by studying the original code, that there is a ... templater section, for example:
$templater = vB_Template::create('register');
$templater->register_page_templates();
$templater->register('navbar', $navbar);
$templater->register('birthdayfields', $birthdayfields);
$templater->register('checkedoff', $checkedoff);
$templater->register('customfields_option', $customfields_option);
$templater->register('customfields_other', $customfields_other);
$templater->register('customfields_profile', $customfields_profile);
$templater->register('day', $day);
$templater->register('email', $email);
$templater->register('emailconfirm', $emailconfirm);
$templater->register('errorlist', $errorlist);
$templater->register('human_verify', $human_verify);
$templater->register('month', $month);
$templater->register('parentemail', $parentemail);
$templater->register('password', $password);
$templater->register('passwordconfirm', $passwordconfirm);
$templater->register('referrername', $referrername);
$templater->register('timezoneoptions', $timezoneoptions);
$templater->register('url', $url);
$templater->register('username', $username);
$templater->register('year', $year);
$templater->register('fbname', $fbname);
$templater->register('fbprofileurl', $fbprofileurl);
$templater->register('fbprofilepicurl', $fbprofilepicurl);
$templater->register('fbimportform', $fbimportform);
print_output($templater->render());
Can someone please explain what this section does? From its looks, it appears to me that it is passing parameters to the template, is that correct? Is this mandatory?
Many thanks for all help you can provide.
For example, I have this template:
<html>
<head>
{vb:raw headinclude}
<title>$vboptions[bbtitle] - $pagetitle</title>
{vb:raw headinclude_bottom}
</head>
<body>
{vb:raw header}
<BR>
<vb:if condition="$bbuserinfo[userid]=='0'">
<table class="tborder" cellpadding="5" cellspacing="5" border="0" width="100%" align="center">
<tr>
<td colspan="3">Guest - No Permissions</td>
</tr>
<tr>
<td colspan="3">Unable To View</td>
</tr>
<tr>
<td colspan="3">Guests Are Unable To View This Page</td>
</tr>
</table>
<br/>
<vb:else />
$warn_page
<br />
</vb:if>
{vb:raw footer}
</body>
</html>
Nothing shows up. If I edit it and remove the conditional, then it works fine (OK, there are some formating issues but that's another thing).
So my question is: Is there something special that needs to be done, in the php side of things, in order for conditionals to work? I've noticed by studying the original code, that there is a ... templater section, for example:
$templater = vB_Template::create('register');
$templater->register_page_templates();
$templater->register('navbar', $navbar);
$templater->register('birthdayfields', $birthdayfields);
$templater->register('checkedoff', $checkedoff);
$templater->register('customfields_option', $customfields_option);
$templater->register('customfields_other', $customfields_other);
$templater->register('customfields_profile', $customfields_profile);
$templater->register('day', $day);
$templater->register('email', $email);
$templater->register('emailconfirm', $emailconfirm);
$templater->register('errorlist', $errorlist);
$templater->register('human_verify', $human_verify);
$templater->register('month', $month);
$templater->register('parentemail', $parentemail);
$templater->register('password', $password);
$templater->register('passwordconfirm', $passwordconfirm);
$templater->register('referrername', $referrername);
$templater->register('timezoneoptions', $timezoneoptions);
$templater->register('url', $url);
$templater->register('username', $username);
$templater->register('year', $year);
$templater->register('fbname', $fbname);
$templater->register('fbprofileurl', $fbprofileurl);
$templater->register('fbprofilepicurl', $fbprofilepicurl);
$templater->register('fbimportform', $fbimportform);
print_output($templater->render());
Can someone please explain what this section does? From its looks, it appears to me that it is passing parameters to the template, is that correct? Is this mandatory?
Many thanks for all help you can provide.