Administration and Setup Manual for

Page design and layout

Basic concepts

In AnyBoard 9 the HTML pages are generated from layouts which contain predefined macros.

A macro in AnyBoard is just an identifier (usually in capital letters) which represent an HTML code block, during the page generation process all occurrences of a macro are replaced by the HTML code it represents.

For example, for the message index page, there is a macro named ADMLNK, which stands for the link to the administration panel. If we put this macro somewhere in the HTML header configuration of the forum, the link will then show up in the generated pages. The same applies to POSTLNK, which stands for the post message form link, the same also spplies to other macros. In AnyBoard, by default there are two navigation bars which host common command links, these navigation bars are no more than a table containing a set of macros. The navigation bar is just a convenient way to put all common commands at one place, and you can disable the navigation bar via the configuration and put the command links anywhere you want: you just place the macros, such as ADMLNK and POSTLNK in the forum's HTML code configurations.

Since AnyBoard 9.9.5, one can layout the message index lines in a more flexible way. In this new layout, every line of the message index is a row in the table, the columns of the row contain the message fields, which are represented by macros. For example, MSG_POSTER stands for the author of the message and MSG_LNK stands for the link to the message content. By configuring the layout of the message row, you can arrange the message fields in any way you want.

Similarly, there are various macros for the message pages.

In the next few sections, we will go over the macros and how to use them.

How to use the macros

Configure the index page

Let's do a simple exercise. On the AnyBoard's default navigation bar, there is a drop-down list for page index and there is an associated "Go" button, which looks like this.

Let's remove this piece of HTML code from the navigation bar and put it under the bar. This is how

  1. Go to Configure->Navigation bar + forum presentation (you do this by checking both boxes for the navigation bar and the presentation and then click the Configure button) and look for the layout of the navigation bar
  2. The macro for the "Go button" is GOPAGEBTN, let's delete it from the layout:
  3. Now, go to the forum presentation section, and find the entry for code below the navigation bar.
  4. Type in GOPAGEBTN
  5. Save the configuration
  6. Now the forum index page looks like this

Similarly, you can play with other macros and put them in other configuration entries.

Now, let's re-arrange the columns of the message index. Right now, the page looks like this

we want to get rid of the "Replies" column and move the Originator column to the left of the Subject column. We follow these steps

  1. Go to configure->style, and look for the message row configuration, we see this
  2. The macro MSG_REPLY_CNT stands for the message's reply count, we delete it. The MSG_LNK is the subject, and MSG_POSTER is the author name, let's swap their positions. We also adjust the row header accordingly.
  3. Click on preview, the message index now looks like this:
  4. It looks good, so we save the configuration.

Layout of the message page

Now, let's take a look at the layout of the message page.

The message page now looks like the following

If you go to Configure->Message page, you will see a large number of macros, stands for the various building blocks of the message page, and there is a layout configuration for the message page, from which the above format is generated. By changing the layout configuration, we change the look of the message page. Click on the "Preview" link beneath the layout entry, we see the layout corresponding to the above image. With IE5 and above, you can edit the layout in place and then click on the "Copy HTML" button to modify the layout.

One thing we should also notice is that some of the macros, such as ORIG_AUTHOR_STR and MSG_ATTACHMENTS are themselves made of other macros. Why is it this way? Let's look at the MSG_ATTACHMENTS, which stands for the HTML block contains the uploaded files, the macro is made of some descriptive text label plus the macro UPLOADED_FILES. Suppose we just put the UPLOADED_FILES plus the label into the layout, then the label will always be there, regardless of the presence of attachments. However, by using another level of macro (MSG_ATTACHMENTS), we can solve this problem. When there is no attachments, the MSG_ATTACHMENTS macro will be replaced with an empty string, and when there are files attached, it's replaced with the file links and some static text.

Designing a message template directly from the admin panel can be tedious. A much easier way to do it to design the message page using an HTML editor, then replace the HTML blocks with the macros, and you get a layout template. All you do next is to copy and paste the layout into the configurations.

Organization information macros

Suppose we want to add our company name and logo on every page of the forum, how do we do it? We can certainly add the HTML code into the configuration entries. But with AnyBoard 9.9, there is a better way: use the organization information macros , such as ORG_NAME and ORG_LOGO .

You can define the values of the ORG_ macros at the master admin panel, the values defined there are shared by all the forums. However, if you redefined the values at a particular forum, the forum specific definition takes precedence over the global definition.

When you load a template, the configuration values of the organization information won't be affected, just like the forum name & file configuration.

Dynamic macros

Some macros are only available when pages are made dynamic. In this case, AnyBoard processes the HTML file for each page view, so it's possible to provide user specific information. For example, the <LOGIN_USER> dynamic tag will be replaced with a logout link when the user is logged in, but otherwise empty. Similarly, <PRIVATE_MSG_ALERT> will produce an alert message when there is a new private message for the user.

With normal macros, one can enter them with or without the enclosing < >, so MSG_DATE and <MSG_DATE> are equivalent. Dynamic macros must be entered with <>.

Information about the available macros

There is a link in the admin panel for the description of the macros.

Macro Definition
These macros can be used any where, you put them in the HTML code sections, and they will be replaced by the information you entered, their value can be globally defined in the master admin panel, and overridden by per forum settings
For definition, see the organization information section

Macro Definition
These macros are used in the navigation bar and forum's header and footer sections
ADMLNK Link to the admin login page
ALL_FORUMS_LIST The list of all available forums
ARCHLNK Link to the archive page
CHATLNK Link to the chat room
DBLNK Link to the database and forms entry page
EVELNK Link to the events page
FINDLNK Link to the search message form
FORUMNAME Forum name
FPOSTLINK Link to the message post with forms attached
GOPAGEBTN The HTML code consists of the page index and the go button
LINKSLNK Link to the links submission and listing page
LOGINLNK Link to the user login form
MAINLNK Link to the main index page
MEMBERLNK Link to the member list and search page
MYFORUMLNK Link to private message area
NEWESTLNK Link to the newest message index page
OPTLNK Link to the page that displays configurations
OVERVIEWLNK Link to the overview index page
PAR_LINKS Links back to top level
POSTLNK Link to the post message form
PREVLNK Link to the previous message index page
QSRCHLNK Link to the fast full text search form
REGLNK Link to the user registration form
RELOADLNK The reload page command
STATSLNK Link to the posting statistics page
SURVEYLNK Link to the polls page
TAGSLNK Link to the tags mapping page
USERCPANELLINK Link to the user control panel where users can change profile, etc
WHOLNK Link to the online user list page

Macro Definition
These macros are used to format message rows on the index page
MSG_ABS Message abstract
MSG_FLAGS Message feature indicators, such as link indicator
MSG_LINK Link to message page
MSG_MOOD Message emoticon
MSG_RATE_LNK Link to the rate message page
MSG_READS Number of reads, available only if read counter is enabled
MSG_REPLY_CNT Number of replies
MSG_SIZE Message size
MSG_SPACER In threaded mode, this is the indentation before the message link
MSG_STAT_TAG Message status tag
MSG_TIME Posting time

Macro Definition
These macros can be used only in the message page layout. Some of the macros, such as MBAR_WIDTH are here only for backward compatibility
ALERT_ADM_LNK Link to the alert admin form
AUTHOR_PROFILE_LNK Link to author's profile
AUTHOR_SIGNATURE Author signature
CURRENT_PAGE_LNK Link to the current index page
EDIT_MSG_LNK Link to the edit message page
FORUMNAME Forum name
FORUM_LNK Link to the forum
MAIL_USER_LNK Link to the mail user form
MBAR_ATTRIB Other attributes of the navigation bar
MBAR_BG Navigation bar background color
MBAR_WIDTH Width of the navigation bar inside message
MODIFIED_STR String shows the modification date and modifier
MSGBODY_BBAR_SEP Separator between message body and bottom navigation bar
MSG_ATTACHED_OBJ HTML code for the attached form
MSG_ATTACHED_OBJ_MOD Link to the modify form of attached form
MSG_ATTACHMENTS The HTML code for the attachments area
MSG_AUTHOR_ORIG The author of the message being replied to
MSG_AUTHOR_STR HTML code showing the author of this message
MSG_BODY Message body
MSG_BOTTOM_BAR Bottom navigation bar inside message
MSG_DATE Posting time of the message
MSG_IMG The linked image inside the message
MSG_MOOD_ICON Message emoticon
MSG_PATH_LINKS Links of messages going up to the top level
MSG_REF_LNK The link to the message which the current message is replying to
MSG_RLNK Related link
MSG_TITLE Message title
MSG_TOP_BAR Top navigation bar inside message
NEXT_MSG_LNK Link to next message
ORIG_MSG_STR The HTML code shows the original message information, note this macro is composed by other macros
PARENT_LEVEL_MSG_LINKS Links of messages at the parent level
POST_BY_WORD The post by word as defined in labels
PREV_MSG_LNK Link to previous message
RATE_MSG_LNK Link to the rate message form
RECOMMEND_MSG_LNK Link to the recommend message form
REPLY_MSG_LNK Link to reply form
RE_WORD The RE word as defined in labels
SIBLING_MSG_LINKS Links of messages at the same level
TOPMBAR_BODY_SEP Separator between top navigation bar and message body
TOP_MSG_LNK Link to the first topic in the thread
UPLOADED_FILES The links to the uploaded files
UP_MSG_LNK Link to the parent message to which this message replies
VIEW_ALL_LNK Link to the page shows the whole content of current thread
WHERE_AMI_LNK Link to the where am I page

Macro Definition
These macros are only processed if the pages are made dynamic, they must be used as <macro_name>
ALL_FORUMS_LIST The list of all available forums
GLOABL_USER_LIST All online users
LOCAL_USER_LIST Current online users in the current board
LOGIN_USER HTML code shows the logout link for a logged in user
MSG_READERS Used in private message page only, shows the readers of this message
PRIVATE_MSG_ALERT HTML code alerts the presence of new private message






Copyright (C), Netbula LLC, 2002, All rights reserved
For more information in AnyBoard, please visit