| Software Development Documentation | Development Overview | WCTL Template Language | WCTL Commands | WCJS Server-side JavaScript | WCMS Development | Chat Development | Standard Templates & URL Codes | Operator Documentation |
Visit the
The standard.tpl file includes an extensive set of templates which match the built-in page layouts as a starting point for your customization. You can copy templates from standard.tpl to your webx.tpl file and then edit them as appropriate. webx.tpl will be located in the templates subdirectory. By default this directory is named webxTemplates but the location may be changed with the "Directory for template files" setting. If it doesn't already exist, create a new empty webx.tpl.
<!------------------- login ----------------------------> %% macro login %%
This initial piece defines the login template. The comment line makes it easier to find the template.
<HTML><HEAD> <title>%% siteTitle %% - Please Log In</title></HEAD>
This piece opens the HTML document and specifies the page title.
<body %% background %%>%% banner %%
This piece starts the page body. It uses the background and banner settings from the sysop control panel.
%% if loginis normal%% %% loginNews %% %% else %% <b>That username and password didn't work. Please try again, or perhaps register as a new user.</b> %% endif %%
This piece checks for the type of login. For a normal login, the sysop loginNews is displayed. Otherwise, the user is shown an error message.
<p> <form method="POST" action="%% urlBase %% 23@%% certificate %%@%%actionPath%%">
This piece starts the form to collect username and password. Note that the URL for the post is constructed by using template variables:
Your name (First then Last): <input name="username" type=text size=30 max=50> <p> Your password: <input name=password type=password size=30 max=50>
This piece adds the input fields for the username and password.
<p> %% if imgButton %% <input type=image NAME=" Login " BORDER=0 align=middle src="%% siteImages %% /login.gif" %% pictSizeButton %%>%%nop%% %% else %%<input type=submit value=" Login "> %% endif %%
This piece uses the Login button if the user's browser supports this feature. Otherwise it puts up a form button. (The actual login template in standard.tpl adds the other buttons here.)
</form> %% footer %%</BODY></HTML> %% endmacro %%
This final piece closes the form, adds the footer, closes body and the HTML document, and ends the login template.
» Initialization
| init | Run immediately after webx.tpl file is parsed |
| startupWrapper | If present, returns a page after the startup Images directory page. |
» Login, Password, Greeting, Get-Info, and Error Whole Pages
| login | Login page |
| loginToPost | Login page to post a message or add a new discussion/folder |
| password | Password page |
| greeting | Greeting page |
| register | Registration page |
| registered | Registration complete page |
| getInfo | Get Info page |
| error | Standard error page |
| missingPage | 404 error page |
» Login, Password, and Greeting Components
| loginHeading | Inserted as heading in built-in login page |
| passwordHeading | Inserted as heading in built-in password page |
| greetingHeading | Inserted as heading in built-in greeting page |
| registerHeading | Inserted as heading in built-in registration page |
| registerCompleteHeading | Inserted in built-in registration-complete page |
| registerGroups | Template to define groups to add newly registered users to |
| authenticateFilter | Control initial authentication processing |
| httpBasicNewFilter | Control processing when an HTTP basic user isn't in the Web Crossing user directory |
| loginFilter | Control login processing |
| loginFailureFilter | Control login failure processing |
| registerProcessFilter | Control registration processing |
| registerFailureFilter | Control registration failure processing |
» Folder Whole Pages
| topLevel | Display the top-level site page |
| folder | Display a folder |
| addFolder | Add a new folder |
| editFolder | Edit a folder |
| checkDeleteFolder | Check to delete a folder |
| deletedFolder | Folder has been deleted |
| previewFolder | Preview a new folder in a moderated area |
| editPreviewFolder | Edit the preview of a new folder in a moderated area |
» Folder Components
| banner | Banner |
| title | Title template |
| folderHeadingBefore | Inserted before a folder heading |
| topLevelHeading | Heading for top-level folder |
| defaultFolderHeading | Folder heading if none supplied by its author |
| folderHeadingAfter | Inserted after a folder heading |
| folderListEmpty | Used if a folder list is empty |
| folderListBefore | Inserted before a folder list |
| folderListItem | Lays out a folder list item |
| folderListAfter | Inserted after a folder list |
| subInvite | Called by the built-in folder display logic |
| toolbar | Toolbar template |
| footer | Footer |
» Discussion and Message Whole Pages
| discussion | Display a discussion |
| discussionSummary | Show a summary view (outline) of threaded messages |
| addDiscussion | Add a new discussion |
| editDiscussion | Edit a discussion |
| checkDeleteDiscussion | Check to delete a discussion |
| deletedDiscussion | Discussion has been deleted |
| editMessage | Edit a message |
| checkDeleteMessage | Check to delete a message |
| deletedMessage | Message has been deleted |
| messageError | Display an error posting a message |
| previewMessage | Preview a moderated message |
| editPreviewMessage | Edit the preview of a moderated message |
| previewDiscussion | Preview a discussion |
| editPreviewDiscussion | Edit the preview of a discussion |
» Discussion and Message Components
| banner | Banner |
| title | Title template |
| discussionHeading | Formatted header (not including banner or title) for a discussion |
| discussionHeadingBefore | Inserted before a discussion heading |
| defaultDiscussionHeading | Discussion heading if none supplied by its author |
| discussionHeadingAfter | Inserted after a discussion heading |
| discussionHeadingBefore | Inserted before a discussion heading |
| downloadAttachment | Executed to serve an attachment |
| messageListBefore | Inserted before a message list |
| messageListBegin | Executed before list of responses is constructed |
| messageListBetween | Inserted between messages in a message list |
| messageListAfter | Inserted after a message list |
| toolbar | Toolbar template |
| postHelp | Inserted at beginning of built-in add-message form |
| unknownUserPostHelp | Help text for unknown users, inserted into the built-in add-message form |
| editHelp | Help message for adding or editing a message |
| addMessage | Add a new message |
| footer | Footer |
» Links Whole Pages
| addLink | Add a link |
| editLink | Edit a link |
| deletedLink | Delete a link |
» Chat Rooms Whole Pages
| addChat | Add a chat room |
| editChat | Edit a chat room |
| deleteChat | Delete a chat room |
| chatRoom | Enter a chat room |
» Control Panel Components
| controlPanel | Text added to the sysop control panel just before the "Usage Counters" link. |
| controlPanelCustomizing | Text added to the sysop control panel at the end of the "Customizing" section. |
| controlPanelServices | Text added to the sysop control panel at the end of the "Services" section. |
| controlPanelSite | Text added to the sysop control panel at the end of the "Site Management" section. |
| controlPanelUser | Text added to the sysop control panel at the end of the "User Management" section. |
| sysopQuickChangeMenu | replace the normal "Quick-change settings for background, text colors, buttons, and icons." link text in the sysop control panel. This allows different site customization options to be supplied, replacing the standard button/color choices. |
» Preferences, Bookmarks and User Information
| editPreferences | Edit user preferences |
| preferencesProcessFilter | Control processing of a user preferences form |
| editedPreferences | Finished editing user preferences |
| bookmarks | User Message Center page |
| userInfo | User personal information page |
» Subscription Whole Pages
| noSubscriptions | User does not have a subscription page |
| subscribed | Subscribed page |
| subscrCancelled | Subscription canceled page |
| noNewMessages | No new subscription messages page |
| unsubscribeForm | Page to cancel email subscriptions, linked to from all email notification messages |
| unsubscribeProcess | Process cancel email subscriptions changes via unsubscribeForm |
» Search Whole Pages
| search | Search page |
| searchResults | Search results page |
» Spell Check
| spellingCheckAgain | Replaces the " Spell Check again to correct remaining words." string. |
| spellingNoMistakes | Replaces the "No spelling mistakes were found." string |
» Export and Import
| exportChoice | Control panel export form |
| exportSelection | Folder/discussion form |
| exportTopLevelChoice | Top level export form |
| import | Import form |
» Access lists
| accessList | Access list form |
| accessListClear | Access list clearing form |
| accessListImport | Access list import form |
| groupAccessList | Group access list form |
| groupAccessListClear | Group access list clearing form |
| group | Group update form |
| groups | Groups update form |
| groupClear | Group Clear form |
| groupDelete | Group delete form |
| groupImport | Group import form |
| checkModerated | Override the 124 command |
| checkModeratedProcess | Override the 125 command |
» Moderation
| emailNotifyFull | Replace the full email message, header and body, for full message notifications |
| emailNotifyFullBody | Replace the full body text for full message notifications |
| emailNotifyFullBodyAttachments | Replace the standard list of attachment links |
| emailNotifyFullBodyFooter | Replace the standard footer after attachment links |
| emailNotifyFullBodyHeader | Replaces the standard header for full message notifications |
| emailNotifyUrl | Replace the body, header and body, for url-only notifications |
| emailNotifyUrlBody | Replace the body text for url-only notifications |
| emailNotifyUrlBodyFooter | Replace the standard footer for url-only notifications |
| emailNotifyUrlBodyHeader | Replaces the standard header for url-only notifications |
| emailPostThroughFull | Replace the full email message, header and body, for full messages posted-through to an external email list |
| emailPostThroughFullBody | Replace the full body text for full messages posted-through to an external email list |
| emailPostThroughFullBodyAttachments | Replace the standard list of attachment links for full messages posted-through to an external email list |
| emailPostThroughFullBodyFooter | Replace the standard footer after attachment links for full messages posted-through to an external email list |
| emailPostThroughFullBodyHeader | Replaces the standard header for full messages posted-through to an external email list |
» Web Pages
| addWeb | Override the 287 command |
| checkDeleteWeb | Override the 291 command |
| deletedWeb | Show the results of the 292 command |
| editWeb | Override the 289 command |
| editThisWebPage | Format "Edit this Web Page" |
» Page Components
| headSection | Inserted into HEAD section |
| backpath | Backpath portion of title |
| banner | Banner |
| title | Title template |
| toolbar | Toolbar template |
| toolbarAfter | Inserted after the toolbar |
| toolbarBefore | Inserted before the toolbar |
| toolbarBetween | Inserted between lines of the toolbar |
| footer | Footer |