Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

Please use forum.silverstripe.org for any new questions (announcement).
The forum archive will stick around, but will be read only.

You can also use our Slack channel or StackOverflow to ask for help.
Check out our community overview for more options to contribute.

General Questions /

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

Working with variables in the template


Go to End


3 Posts   798 Views

Avatar
cumquat

Community Member, 201 Posts

18 March 2011 at 6:43am

Ok thought this was gonna be an easy one and it maybe although i have spent 5 hours and with my limited knowledge i don't seem to have found the solution.
I have a table on a template page that lists the data from a control, all works ok see below,
<% if Location %>
<table id="Standard">
<thead>
<tr>
<th>Name</th>
<th>Grid Ref</th>
<th>Postcode</th>
<th>Height Restriction</th>
<th>Training Loc.</th>
</tr>
</thead>
<% control Location %>
<tbody>
<tr >
<td>$Name</a></td>
<td>$GridRef</td>
<td>$Postcode</td>
<td>$HeightRst </td>
<td>$Training</td>
</tr>
</tbody>
<% end_control %>

</table>
<% end_if %>

what i want to do is just show a word if the variable $HeightRst (which is a decimal) is less than 3 the idea being that if the height restriction is less that 3 show a warning word. I have tried putting code in the template page and also in the php page but i don't seem to be able to find the right way of doing it. In my mind it seems easy if $HeightRst < 3 then 'warning' but i just can't seem to get the right code. Any help or pointers much appreciated.

Mick

Avatar
Willr

Forum Moderator, 5523 Posts

19 March 2011 at 6:36pm

In 2.* the template engine doesn't support inequalities. You should put this logic in your location model.

function HeightWarning() {
return ($this->HeightRst < 3);
}

Then you can use <% if HeightWarning %>....

Avatar
cumquat

Community Member, 201 Posts

19 March 2011 at 10:11pm

As usual, you come through with the answer, many thanks.

Mick