The page tags are the one starting with [% and ending with %]. There are used for manipulating what is loaded into the page. To most used is [%body%] that must be present in templates for them to work.

body The tag telling a template where to insert the page code. Can be placed anywhere in a template but there must not be more than one. Ex [%body%]
element Load and execute this element. Ex [%element /elements/sidemenu.html%]
elementcache Load and calculate this element only the first time it is loaded. After this it will only returned the calculated value as a text element.
Ex [%elementcache /elements/sidemenudql.html%]
elementcase Load one of these elements based on the livetext paramter. If none match the list one can be used as default by using defaul: as key.
Ex. [%elementcase user.level high:/elements/highheading.html medium3:/elementsmedium3userheading.html :/elements/notloggedinheading.html default:/elements/therestheading.html%]
elementif Load one or the other based on bool calculation. The format is [%elementif boolcalulation trueresult falseresult%] but you can skip the result for false and only load on true. Then your format is [%elementif checktrue toloadiftrue%]
Checks supported:
- direct true/false | Ex. user.isloggedin if the value returned from live text is any case of "true", "yes" or "1" then we have a success
- livetext[operator]livetext
- livetext[operator]blank for a dataease blank check
- livetext[operator]number for a numeric test. To get a number you have to start with -0123456789
- livetext[operator]"string" for a direct string test
[operator] can be >, >=, <, <=, =, == and !=. We have = and == for equal as datease user use = for equal and the developers are used to ==. The tests are case insensitive to High=high is true.
Ex. [%elementif user.isloggedin /elements/headingloggedin.html /elements/headingnotloggedin.html%] can be used to load a login dialog if not logged in and show your name and a logout link if you are.
Ex. [%elementif user.username="ulrik" /elements/ulriksmenu.html /elements/normalmenu.html%] let you test on a hard coded string to get a named persons special menu.