[%tags]
assign
capture
config_load
counter
cycle
debug
else
elseif
eval
fetch
foreach
foreachelse
html_checkboxes
html_image
html_options
html_radios
html_select_date
html_select_time
html_table
if
include
include_php
insert
ldelim
literal
mailto
math
popup
popup_init
rdelim
section
sectionelse
strip
textformat

[%modifiers]
capitalize=This determines whether or not words with digits will be uppercased
cat=This value to catenate to the given variable
count_characters=This determines whether or not to include whitespace characters in the count.
count_paragraphs=This is used to count the number of paragraphs in a variable. 
count_sentences=This is used to count the number of sentences in a variable. 
count_words=This is used to count the number of words in a variable. 
date_format=This formats a date and time into the given strftime() format.
default=This is used to set a default value for a variable.
escape=escape is used to encode or escape a variable to for example html, url, single quotes, hex, hexentity, javascript and mail. 
indent=This indents a string on each line, default is 4.
lower=This is used to lowercase a variable. This is equivalent to the PHP  strtolower() function. 
nl2br=All "\n" line breaks will be converted to html <br /> tags in the given variable. This is equivalent to the PHP's  nl2br() function. 
regex_replace=A regular expression search and replace on a variable. Use the  preg_replace() syntax from the PHP manual. 
replace=A simple search and replace on a variable. This is equivalent to the PHP's  str_replace() function. 
spacify=spacify is a way to insert a space between every character of a variable. You can optionally pass a different character or string to insert. 
string_format=This is a way to format strings, such as decimal numbers and such. Use the syntax for sprintf()  for the formatting. 
strip=This replaces all repeated spaces, newlines and tabs with a single space, or with the supplied string. 
strip_tags=This strips out markup tags, basically anything between < and >. 
truncate=This truncates a variable to a character length, the default is 80.
upper=This is used to uppercase a variable. This is equivalent to the PHP  strtoupper() function. 
wordwrap=Wraps a string to a column width, the default is 80. 

[assign]
%help=http://www.smarty.net/manual/en/language.custom.functions.php#language.function.assign
%endtag=0
var=<string>,1;The name of the variable being assigned
value=<string>,1;The value being assigned

[capture]
%help=http://www.smarty.net/manual/en/language.builtin.functions.php#language.function.capture
%endtag=0
name=<string>,0;The name of the captured block
assign=<string>,0;The variable name where to assign the captured output to

[config_load]
%help=http://www.smarty.net/manual/en/language.function.config.load.php
%endtag=0
file=<string>,1;The name of the config file to include
section=<string>,0;The name of the section to load
scope=<string>,0;How the scope of the loaded variables are treated, which must be one of local, parent or global. local means variables are loaded into the local template context. parent means variables are loaded into both the local context and the parent template that called it. global means variables are available to all templates. 
global=<boolean>,0;Whether or not variables are visible to the parent template, same as scope=parent. NOTE: This attribute is deprecated by the scope attribute, but still supported. If scope is supplied, this value is ignored. 

[counter]
%help=http://www.smarty.net/manual/en/language.function.counter.php
%endtag=0
name=<string>,0;The name of the counter
start=<number>,0;The initial number to start counting from
skip=<number>,0;The interval to count by
direction=<string>,0;The direction to count (up/down)
print=<boolean>,0;Whether or not to print the value
assign=<string>,0;the template variable the output will be assigned to

[cycle]
%help=http://www.smarty.net/manual/en/language.function.counter.php
%endtag=0
name=<string>,0;The name of the cycle
values=<mixed>,1;The values to cycle through, either a comma delimited list (see delimiter attribute), or an array of values
print=<boolean>,0;Whether to print the value or not
advance=<boolean>,0;Whether or not to advance to the next value
delimiter=<string>,0;The delimiter to use in the values attribute
assign=<string>,0;The template variable the output will be assigned to
reset=<boolean>,0;The cycle will be set to the first value and not advanced

[debug]
%help=http://www.smarty.net/manual/en/language.function.debug.php
%enttag=0
output=<string>,0;output type, html or javascript

[else]
%help=http://www.smarty.net/manual/en/language.function.if.php
%enttag=0

[elseif]
%help=http://www.smarty.net/manual/en/language.function.if.php
%enttag=0

[eval]
%help=http://www.smarty.net/manual/en/language.function.eval.php
%enttag=0
var=<mixed>,1;Variable (or string) to evaluate
assign=<string>,0;The template variable the output will be assigned to

[fetch]
%help=http://www.smarty.net/manual/en/language.function.fetch.php
%enttag=0
file=<string>,1;The file, http or ftp site to fetch
assign=<string>,0;The template variable the output will be assigned to

[foreach]
%help=http://www.smarty.net/manual/en/language.function.foreach.php
%endtag=1
from=<array>,1;The array you are looping through
item=<string>,1;The name of the variable that is the current element
key=<string>,0;The name of the variable that is the current key
name=<string>,0;The name of the foreach loop for accessing foreach properties

[foreachelse]
%help=http://www.smarty.net/manual/en/language.function.foreach.php
%endtag=0

[html_checkboxes]
%help=http://www.smarty.net/manual/en/language.function.html.checkboxes.php
%enttag=0
name=<string>,0;Name of checkbox list
values=<array>,1;An array of values for checkbox buttons (required unless using options attribute)
output=<array>,1;An array of output for checkbox buttons (required unless using options attribute)
selected=<string>,0;The selected checkbox element(s)
options=<associative>,1;An associative array of values and output (required unless using values and output)
separator=<string>,0;String of text to separate each checkbox item
assign=<string>,0;Assign checkbox tags to an array instead of output
labels=<boolean>,0;Add <label>-tags to the output
assign=<string>,0;Assign the output to an array with each checkbox's output as one element.

[html_image]
%help=http://www.smarty.net/manual/en/language.function.html.image.php
%enttag=0
file=<string>,1;name/path to image
height=<string>,0;Height to display image
width=<string>,0;Width to display image
basedir=<string>,0;Directory to base relative paths from
alt=<string>,0;Alternative description of the image
href=<string>,0;href value to link the image to
path_prefix=<string>,0;Prefix for output path

[html_options]
%help=http://www.smarty.net/manual/en/language.function.html.options.php
%enttag=0
values=<array>,0;An array of values for dropdown
output=<array>,0;An array of output for dropdown
selected=<string>,0;The selected option element(s)
options=<associative>,0;An associative array of values and output
name=<string>,0;Name of select group

[html_radios]
%help=http://www.smarty.net/manual/en/language.function.html.radios.php
%enttag=0
name=<string>,0;Name of radio list
values=<array>,1;An array of values for radio buttons(unless using options attribute
output=<array>,1;An array of output for radio buttons(unless using options attribute
selected=<string>,0;The selected radio element
options=<associative>,1;An associative array of values and output(unless using values and output)
separator=<string>,0;String of text to separate each radio item
assign=<string>,0;Assign radio tags to an array instead of output

[html_select_date]
%help=http://www.smarty.net/manual/en/language.function.html.select.date.php
%enttag=0
prefix=<string>,0;What to prefix the var name with
time=<timestam>,0;current time in unix timestamp or YYYY-MM-DD format	What date/time to use
start_year=<string>,0;The first year in the dropdown, either year number, or relative to current year (+/- N)
end_year=<string>,0;The last year in the dropdown, either year number, or relative to current year (+/- N)
display_days=<boolean>,0;Whether to display days or not
display_months=<boolean>,0;Whether to display months or not
display_years=<boolean>,0;Whether to display years or not
month_format=<string>,0;What format the month should be in (strftime)
day_format=<string>,0;What format the day output should be in (sprintf)
day_value_format=<string>,0;What format the day value should be in (sprintf)
year_as_text=<boolean>,0;Whether or not to display the year as text
reverse_years=<boolean>,0;Display years in reverse order
field_array=<string>,0;If a name is given, the select boxes will be drawn such that the results will be returned to PHP in the form of name[Day], name[Year], name[Month].
day_size=<string>,0;Adds size attribute to select tag if given
month_size=<string>,0;Adds size attribute to select tag if given
year_size=<string>,0;Adds size attribute to select tag if given
all_extra=<string>,0;Adds extra attributes to all select/input tags if given
day_extra=<string>,0;Adds extra attributes to select/input tags if given
month_extra=<string>,0;Adds extra attributes to select/input tags if given
year_extra=<string>,0;Adds extra attributes to select/input tags if given
field_order=<string>,0;The order in which to display the fields
field_separator=<string>,0;String printed between different fields
month_value_format=<string>,0;strftime() format of the month values, default is %m for month numbers.
year_empty=<string>,0;If supplied then the first element of the year's select-box has this value as it's label and "" as it's value. This is useful to make the select-box read "Please select a year" for example. Note that you can use values like "-MM-DD" as time-attribute to indicate an unselected year.
month_empty=<string>,0;If supplied then the first element of the month's select-box has this value as it's label and "" as it's value. . Note that you can use values like "YYYY--DD" as time-attribute to indicate an unselected month.
day_empty=<string>,0;If supplied then the first element of the day's select-box has this value as it's label and "" as it's value. Note that you can use values like "YYYY-MM-" as time-attribute to indicate an unselected day.

[html_select_time]
%help=http://www.smarty.net/manual/en/language.function.html.select.time.php
%enttag=0
prefix=<string>,0;What to prefix the var name with
time=<timestamp>,0;What date/time to use
display_hours=<boolean>,0;Whether or not to display hours
display_minutes=<boolean>,0;Whether or not to display minutes
display_seconds=<boolean>,0;Whether or not to display seconds
display_meridian=<boolean>,0;Whether or not to display meridian (am/pm)
use_24_hours=<boolean>,0;Whether or not to use 24 hour clock
minute_interval=<integer>,0;Number interval in minute dropdown
second_interval=<integer>,0;Number interval in second dropdown
field_array=<string>,0;Outputs values to array of this name
all_extra=<string>,0;Adds extra attributes to select/input tags if given
hour_extra=<string>,0;Adds extra attributes to select/input tags if given
minute_extra=<string>,0;Adds extra attributes to select/input tags if given
second_extra=<string>,0;Adds extra attributes to select/input tags if given
meridian_extra=<string>,0;Adds extra attributes to select/input tags if given

[html_table]
%help=http://www.smarty.net/manual/en/language.function.html.table.php
%enttag=0
loop=<array>,1;Array of data to loop through
cols=<mixed>,0;Number of columns in the table or a comma-separated list of column heading names or an array of column heading names.if the cols-attribute is empty, but rows are given, then the number of cols is computed by the number of rows and the number of elements to display to be just enough cols to display all elements. If both, rows and cols, are omitted cols defaults to 3. if given as a list or array, the number of columns is computed from the number of elements in the list or array.
rows=<integer>,0;Number of rows in the table. if the rows-attribute is empty, but cols are given, then the number of rows is computed by the number of cols and the number of elements to display to be just enough rows to display all elements.
inner=<string>,0;Direction of consecutive elements in the loop-array to be rendered. cols means elements are displayed col-by-col. rows means elements are displayed row-by-row.
caption=<string>,0;Text to be used for the <caption> element of the table
table_attr=<string>,0;Attributes for <table> tag
th_attr=<string>,0;Attributes for <th> tag (arrays are cycled)
tr_attr=<string>,0;attributes for <tr> tag (arrays are cycled)
td_attr=<string>,0;Attributes for <td> tag (arrays are cycled)
trailpad=<string>,0;Value to pad the trailing cells on last row with (if any)
hdir=<string>,0;Direction of each row to be rendered. possible values: right (left-to-right), and left (right-to-left)
vdir=<string>,0;Direction of each column to be rendered. possible values: down (top-to-bottom), up (bottom-to-top) 

[if]
%help=http://www.smarty.net/manual/en/language.function.if.php
%enttag=1

[include]
%help=http://www.smarty.net/manual/en/language.function.include.php
%endtag=0
file=<string>,1;The name of the template file to include
assign=<string>,0;The name of the variable that the output of include will be assigned to
varName=<mixed>,0;variable to pass local to template

[include_php]
%help=http://www.smarty.net/manual/en/language.function.include.php.php
%endtag=0
file=<string>,1;The name of the php file to include
once=<boolean>,0;whether or not to include the php file more than once if included multiple times
assign=<string>,0;The name of the variable that the output of include_php will be assigned to

[insert]
%help=http://www.smarty.net/manual/en/language.function.insert.php
%endtag=0
name=<string>,1;The name of the insert function (insert_name)
assign=<string>,0;The name of the template variable the output will be assigned to
script=<string>,0;The name of the php script that is included before the insert function is called
varName=<mixed>,0;variable to pass to insert function

[ldelim]
%help=http://www.smarty.net/manual/en/language.function.ldelim.php
%endtag=0

[literal]
%help=http://www.smarty.net/manual/en/language.function.literal.php
%endtag=0

[mailto]
%help=http://www.smarty.net/manual/en/language.function.mailto.php
%endtag=0
address=<string>,1;The e-mail address
text=<string>,0;The text to display, default is the e-mail address
encode=<string>,0;How to encode the e-mail. Can be one of none, hex, javascript or javascript_charcode.
cc=<string>,0;Email addresses to carbon copy, separate entries by a comma.
bcc=<string>,0;Email addresses to blind carbon copy, separate entries by a comma
subject=<string>,0;Email subject
newsgroups=<string>,0;Newsgroups to post to, separate entries by a comma.
followupto=<string>,0;Addresses to follow up to, separate entries by a comma.
extra=<string>,0;Any extra information you want passed to the link, such as style sheet classes

[math]
%help=http://www.smarty.net/manual/en/language.function.math.php
%endtag=0
equation=<string>,1;The equation to execute
format=<string>,0;The format of the result (sprintf)
var=<numeric>,1;Equation variable value
assign=<string>,0;Template variable the output will be assigned to
varname=<numeric>,1;Equation variable value

[popup]
%help=http://www.smarty.net/manual/en/language.function.popup.php
%endtag=0
text=<string>,0;the text/html to display in the popup window
trigger=<string>,0;what is used to trigger the popup window. Can be one of onMouseOver or onClick
sticky=<boolean>,0;makes the popup stick around until closed
caption=<string>,0;sets the caption to title
fgcolor=<string>,0;color of the inside of the popup box
bgcolor=<string>,0;color of the border of the popup box
textcolor=<string>,0;sets the color of the text inside the box
capcolor=<string>,0;sets color of the box's caption
closecolor=<string>,0;sets the color of the close text
textfont=<string>,0;sets the font to be used by the main text
captionfont=<string>,0;sets the font of the caption
closefont=<string>,0;sets the font for the "Close" text
textsize=<string>,0;sets the size of the main text's font
captionsize=<string>,0;sets the size of the caption's font
closesize=<string>,0;sets the size of the "Close" text's font
width=<integer>,0;sets the width of the box
height=<integer>,0;sets the height of the box
left=<boolean>,0;makes the popups go to the left of the mouse
right=<boolean>,0;makes the popups go to the right of the mouse
center=<boolean>,0;makes the popups go to the center of the mouse
above=<boolean>,0;makes the popups go above the mouse. NOTE: only possible when height has been set
below=<boolean>,0;makes the popups go below the mouse
border=<integer>,0;makes the border of the popups thicker or thinner
offsetx=<integer>,0;how far away from the pointer the popup will show up, horizontally
offsety=<integer>,0;how far away from the pointer the popup will show up, vertically
fgbackground=<url>,0;defines a picture to use instead of color for the inside of the popup.
bgbackground=<url>,0;defines a picture to use instead of color for the border of the popup. NOTE: You will want to set bgcolor to "" or the color will show as well. NOTE: When having a Close link, Netscape will re-render the table cells, making things look incorrect
closetext=<string>,0;sets the "Close" text to something else
noclose=<boolean>,0;does not display the "Close" text on stickies with a caption
status=<string>,0;sets the text in the browsers status bar
autostatus=<boolean>,0;sets the status bar's text to the popup's text. NOTE: overrides status setting
autostatuscap=<string>,0;sets the status bar's text to the caption's text. NOTE: overrides status and autostatus settings
inarray=<integer>,0;tells overLib to read text from this index in the ol_text array, located in overlib.js. This parameter can be used instead of text
caparray=<integer>,0;tells overLib to read the caption from this index in the ol_caps array
capicon=<url>,0;displays the image given before the popup caption
snapx=<integer>,0;snaps the popup to an even position in a horizontal grid
snapy=<integer>,0;snaps the popup to an even position in a vertical grid
fixx=<integer>,0;locks the popups horizontal position Note: overrides all other horizontal placement
fixy=<integer>,0;locks the popups vertical position Note: overrides all other vertical placement
background=<url>,0;sets image to be used instead of table box background
padx=<intege>,0;pads the background image with horizontal whitespace for text placement. Note: this is a two parameter command
pady=<intege>,0;pads the background image with vertical whitespace for text placement. Note: this is a two parameter command
fullhtml=<boolean>,0;allows you to control the html over a background picture completely. The html code is expected in the "text" attribute
frame=<string>,0;controls popups in a different frame. See the overlib page for more info on this function
function=<string>,0;calls the specified javascript function and takes the return value as the text that should be displayed in the popup window
delay=<integer>,0;makes that popup behave like a tooltip. It will popup only after this delay in milliseconds
hauto=<boolean>,0;automatically determine if the popup should be to the left or right of the mouse.
vauto=<boolean>,0;automatically determine if the popup should be above or below the mouse.

[popup_init]
%help=http://www.smarty.net/manual/en/language.function.popup.init.php
%endtag=0

[php]
%help=http://www.smarty.net/manual/en/language.function.php.php
%endtag=1

[rdelim]
%help=http://www.smarty.net/manual/en/language.function.ldelim.php
%endtag=0

[section]
%help=http://www.smarty.net/manual/en/language.function.section.php
%endtag=1
name=<string1>,1;The name of the section
loop=<mixed>,1;Value to determine the number of loop iterations
start=<integer>,0;The index position that the section will begin looping. If the value is negative, the start position is calculated from the end of the array. For example, if there are seven values in the loop array and start is -2, the start index is 5. Invalid values (values outside of the length of the loop array) are automatically truncated to the closest valid value.
step=<integer>,0;The step value that will be used to traverse the loop array. For example, step=2 will loop on index 0,2,4, etc. If step is negative, it will step through the array backwards.
max=<integer>,0;Sets the maximum number of times the section will loop.
show=<boolean>,0;Determines whether or not to show this section

[sectionelse]
%help=http://www.smarty.net/manual/en/language.function.section.php
%endtag=0

[strip]
%help=http://www.smarty.net/manual/en/language.function.strip.php
%endtag=0

[textformat]
%help=http://www.smarty.net/manual/en/language.function.textformat.php
%endtag=0
style=<string>,0;Preset style
indent=<number>,0;The number of chars to indent every line
indent_first=<number>,0;The number of chars to indent the first line
indent_char=<string>,0;The character (or string of chars) to indent with
wrap=<number>,0;How many characters to wrap each line to
wrap_char=<string>,0;The character (or string of chars) to break each line with
wrap_cut=<boolean>,0;If TRUE, wrap will break the line at the exact character instead of at a word boundary
assign=<string>,0;The template variable the output will be assigned to

