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.

General Questions /

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

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

Working with variables in the template


Reply


3 Posts   554 Views

Avatar
cumquat

Community Member, 198 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, 5513 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, 198 Posts

19 March 2011 at 10:11pm

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

Mick