Hexamail - Templates - Tags

Hexamail Templates, Tags

Hexamail templates are comprised of HTML and data tags. The tags all start with <?HXM_ and end ?> such as

The tags are case sensitive and generally cannot contain any whitespace characters (spaces, tabs, newlines, etc), other than in 'option chooser' types, within the options.

The output of the web interface is highly dependant on these tags being correct. DO NOT make changes to the tags or pages unless you understand how they work and what changes are acceptable - output information can easily be lost if the tags are wrongly place or incorrect.

The vast majority of the tags only apply within specific contexts, although some can be used more generally, such as the product name tag above. It is usually not applicable to move tags between templates, for example tags from the settings templates will generally be ignored in other pages so will not be filled in when reached.

Note: you should not make changes to the templates in the webui directory directly. See here for more details on editing templates.


Types of tag

There are several types of tags used by Hexamail. Some are direct replacement tags, such as the product name one, where a piece of text is substituted for the tag when found.

More complex forms of tag also exist, however, such as

which is used to include the file named between the []'s inline within the page.

Another more complex form of tag is the 'option chooser' type such as:

Here, the output put in the resulting HTML page is dependant on the success or otherwise of a login attempt. On the page first loading, there is no login attempt and no text is output, however if a user attempts to login with the wrong password for example, the second option, 'Incorrect password for specified user', is printed in the page. Not that some tags are sensitive to having the correct number of options, it is not advisable to remove options from such types of tags.

NOTE: this format is also used in the formatting of some very specific control types, such as HXM_MENU_TAB.

It is not recommend that these tags be changed unless you understand what the specific parts do.

Yet another tag type is the start/end block tag. An example of this type is the pair of tags

With this type of tag, the block of HTML/text/tags between them will not be output to the rendered HTML if some condition is not satisfied, in this case if the license has expired. This type of tag is commonly used to show/hide user options where the adminstrator has disable or enabled a feature.

This start/end style of tag is also used in another way - HTML/text/tags blocks that are to be repeated. For example, within the Advanced Blog Server, HXM_EVENT_COMMENT_ENTRY_START and HXM_EVENT_COMMENT_ENTRY_END tags mark the start and end the HTML output that is to be repeated for each comment posted for a given entry. Within these tags, tags specific to the comment, eg. who left it, are substituted for each comment to build up the list presented in the page.