$SepPostFormIndex and $SepPostFormRead:  These variables determine
whether “post message” forms will appear on the main index page and/or
the individual message pages, respectively.  Values of 0 instruct the
script to include the forms as part of the pages; values of 1 instruct
it to have those forms appear on pages by themselves.  If you’re using
frames, these variables are automatically set by the script to 1, to
ensure that the post forms appear in full windows and can thus be
more easily used.

$DefaultType:  By design, WebBBS index displays default to a simple
chronological display.  If you prefer a different style, define
it here.  If you’ve enabled alphabetical sorting (as explained below),
then the available options for $DefaultType are “Alphabetically” and
“Alphabetically, Reversed”.  Otherwise, the available options are
“Chronologically”, “Chronologically, Reversed”, “By Threads”, “By
Threads, Reversed”, “By Threads, Mixed”, “By Threads, UBB”,
“Compressed”, “Compressed, Reversed”, “Compressed, Mixed”, “Compressed,
UBB”, “Guestbook-Style”, “Guestbook-Style, Reversed”, “Guestbook-Style,
Alphabetically”, “Guestbook-Style, Alphabetically, Reversed”,
“Guestbook-Style, Compressed”, “Guestbook-Style, Compressed, Reversed”,
“Guestbook-Style, Compressed, Mixed”, “Guestbook-Style, Compressed,
UBB”, “Guestbook-Style, Threaded”, “Guestbook-Style, Threaded,
Reversed”, “Guestbook-Style, Threaded, Mixed”, and “Guestbook-Style,
Threaded, UBB”.

$DefaultTime:  This variable sets the default for the age of messages
shown in the index list.  If left unspecified, the index will display
messages posted within the past two weeks.  It can be defined with
whatever value you like, such as “2 Day(s)”, “3 Week(s)” or even
“10 Year(s)”.  Note that the format of the definition must match
that seen on your forum index page.

$printboardname:  If this variable is set to 1, the board name
defined above will be included at the top of the script-generated
pages.  If the variable is set to 0, it won’t be.  This allows you
to avoid duplication if you’re using a graphic image in your header,
for example, as a title.

$DateConfig:  A string defining the format in which you want dates to
appear on the board.  The following codes are available:

%mo% = month (numeric)
%MO% = month name (as defined in webbbs_text.pl)
%dy% = day of month (numeric)
%DY% = weekday (as defined in webbbs_text.pl)
%yr% = year (two-digit)
%YR% = year (four-digit)
%am% = either “a.m.” or “p.m.”
%sc% = seconds (two-digit)
%mn% = minutes (two-digit)
%hr% = hour (12-hour clock)
%HR% = hour (24-hour clock)

So, for example, “%mo%/%dy%/%yr% %HR%:%mn%” would display dates as
“7/22/00 15:30″; but “%DY%, %dy% %MO% %YR%, at %hr%:%mn% %am%” would
display as “Wednesday, 22 July 2000, at 3:30 p.m.”

$IndexEntryLines:  This variable defines the format in which the index
should be displayed.  Defining it as 1 gives each entry a single line,
while defining it as 2 gives each entry two lines.  (The latter is
the better bet if you’re using a longer date format and/or displaying
extra information such as IP addresses or view counts.)  You can also
define the variable as “news” in which case the index will be
displayed in a tabular format similar to that utilized by many
Usenet newsreaders.

$InputColumns & $InputRows:  These variables define the size of the
text input box for messages.  The default size is 80 columns by
15 rows.  The smallest allowable size is 25 columns by 5 rows.

$HourOffset:  If you are in one time zone and your Web host is in
another, you can use this variable to adjust the times shown for
posts on your BBS.  For example, if your server is located in the
Eastern time zone, but you’re in the Pacific time zone, set it to

$ArchiveOnly:  If this variable is set to “0″ the board will function
normally.  However, if it is set to “1″ the message posting form will
not appear either on the index page or on individual message pages.
This allows you to set up a “read-only” archive board.  With the
administrative script (see below), of course, the administrator will
be able to post even to a “read-only” board.  This allows you to set
up “announcement” boards to which you and only you can post.  (See
also $AllowNewThreads and $AllowResponses, below.)

$SingleLineBreaks:  WebBBS automatically recognizes a double line break
or an indentation (either a tab or multiple spaces) as the start of a
new paragraph.  If this variable is set to “0″ any single line breaks
will be ignored.  If it is set to “1″ any single line breaks will be
converted to <BR> tags.  The former option is usually preferable if
most posts consist of straight text.  If, however, those posting on
your board frequently post itemized lists, you may want to use the
second option, to allow more accurate formatting.

$AutoQuote:  If this variable is set to “1″ the new text of a message
will automatically be quoted in the message response input box.  If it
is set to “0″ the box will be empty.

$AutoQuoteChar:  This defines the character you want used at the
beginning of “quoted” lines.

$AutoHotlink:  If you set this variable to 1, the script will attempt
to “automatically” hotlink any URLs or e-mail addresses included in
the body of a message.  (As of WebBBS version 4.20, auto-hotlinking
and the allowing of HTML code in messages are no longer mutually
incompatible features.  The two can now co-exist harmoniously.)

%SmileyCode:  This variable defines a list of “codes” which will be
automatically converted when they appear in the subject or body of
a message.  It can be used, for example, to replace certain ASCII
“smilies” with graphic images.  (Hence, the variable’s name.) The
example below instructs the script to replace a variety of ASCII
“faces” with appropriate graphics.  Note that the backslash (\)
must be “escaped”; in other words, if you want to use it, use two
in a row instead of just one.  (If you don’t, the script will not

%SmileyCode = (
‘:)’,'<IMG src=”smile.gif” BORDER=0 ALT=”:)”>’,
‘:(‘,’<IMG src=”frown.gif” BORDER=0 ALT=”:(“>’,
‘:O’,'<IMG src=”oh.gif” BORDER=0 ALT=”:O”>’,
‘:D’,'<IMG src=”biggrin.gif” BORDER=0 ALT=”:D”>’,
‘;)’,'<IMG src=”wink.gif” BORDER=0 ALT=”;)”>’,
’8)’,'<IMG src=”glasses.gif” BORDER=0 ALT=”8)”>’,
‘:b’,'<IMG src=”tongue.gif” BORDER=0 ALT=”:b”>’,
‘:\\’,'<IMG src=”ohwell.gif” BORDER=0 ALT=”:\\”>’,
‘>:(‘,’<IMG src=”angry.gif” BORDER=0 ALT=”&gt;:(“>’,
‘:|’,'<IMG src=”indifferent.gif” BORDER=0 ALT=”:|”>’

%FormatCode:  This variable is essentially identical to the above
variable, except that (a) only text in the body of a message will
be converted, and (b) the matching for this variable, unlike the
matching for %SmileyCode, is case-insensitive.  This variable is
intended to be used to allow certain basic formatting functions to
made available to your forum’s users, even if you don’t want to
let them utilize HTML code directly.  (The reasons for the two
differences in the way the variables are handled are [a] the fact
that you probably don’t want your visitors leaving formatting tags
in their message subjects unclosed, and thus fouling up your index
listings, and [b] the fact that while you probably don’t want “:d”
and “:D” being treated by the script as the same thing, you most
likely *do* want “[code]" and "[CODE]" treated the same.)  The
example below provides your visitors with the same formatting
options available on the WebScripts support forums.

%FormatCode = (
'[red]','<FONT COLOR="ff0000">',

$NM_Telltale:  An optional bit of text or HTML code to be appended
to the subject of any message which does not contain any original
body text.  ("NM" is a standard Usenet/Internet abbreviation
meaning "no message.")

$Link_Telltale:  An optional bit of text or HTML code to be
appended to the subject of any message containing a link URL.
(On forums where many visitors use the "optional link URL" slot
just to advertise their own Web sites, you'll probably want to
leave this variable undefined.)

$Pic_Telltale:  An optional bit of text or HTML code to be appended
to the subject of any message which includes an image URL.  (On
forums where many visitors use the "optional image URL" slot just
to include a banner or other advertisement of their own Web site,
you'd obviously probably not want to define this variable.  But on
forums where the presence of pictures in a message is of actual
significance, the "telltales" can be quite handy, allowing readers
to quickly find the messages which include such pictures.

$ThreadSpacer:  An optional bit of text or HTML code to be inserted
between threads in the index listing.  (It can be as simple as a
<P> tag.)

$GuestbookOpen and $GuestbookClose:  Define here any HTML code which
should be included before and after each message on the guestbook
pages.  These variables can be used, for example, to enclose each
message in a table.

$DisplayEmail:  If you leave this defined as 1, posters' e-mail
addresses will be shown on the message display pages (if an e-mail
address was provided, of course), and it will be possible for those
reading messages to send private e-mails to the authors.  If you
undefine this variable, e-mail addresses will *not* be displayed.  If
you have many users who want to take advantage of the script's e-mail
notification features, but *don't* want their e-mail addresses seen
by others, this can be handy.

$BlindEmail:  If you want to allow your visitors to e-mail each other,
but also want to maintain the privacy of your visitors' e-mail
addresses, set this variable to 1.  Instead of displaying the e-mail
addresses of posters, the script will display simple "send e-mail"
links, and will act as a form-to-mail script to process the e-mail
messages.  This will allow visitors to e-mail the posters of
messages without actually seeing their e-mail addresses.  (Note that
if $DisplayEmail is set to 0, this variable will do nothing, as no
e-mail address or link will be displayed with messages or profiles.)

$ResolveIPs:  If this variable is set to 1, posters' IP addresses will
be resolved to domain names.  If it is left undefined, they will not
be resolved.

$DisplayIPs:  If this variable is set to 1, posters' IP addresses or
domain names, as determined by the setting of $ResolveIPs, will be
displayed (when the index listing or message files are viewed) along
with their names and e-mail addresses.  (Note that they will be
recorded in the message files for the administrator's reference,
regardless of whether or not they're actually displayed to

$DisplayViews:  If this variable is set to 1, the script will keep
track of and display in the index the number of times each message
has been read.  (With version 4.20, the database of view counts has
been separated from the main index database, so keeping the view
counting "turned on" should no longer significantly effect a busy
forum's efficiency.)  If it is set to 0, view counts will not be
maintained.  If it is set to 2, view counts *will* be maintained, but
will not be displayed.  (The latter setting might be handy, for
example, if you want view counts to be available to the administrator,
but not to just anyone who visits the forum.)

$UseCookies:  If this variable is set to "0" (or commented out) the use
of "cookies" will not be implemented.  If it is set to "1" it will be.
"Cookies" allow the board to recognize return visitors, keep track of
messages posted since their previous visit, maintain their personal
index display preferences, and automatically insert their names and
e-mail addresses into the post forms.

$IsolateCookies:  By default, if you have multiple forums, they will
utilize "shared" cookies, so that once a visitor has entered his
name and e-mail address on one, he won't have to enter them again
on another.  If you prefer that your forums not share the information,
just set this variable to 1.

$SessionTime:  Define here the time (in minutes) that a visitor must
be absent from the forum before a "new visit" is considered to have
begun.  If this variable is undefined, or is defined with any value
lower than five minutes or greater than 120, the script will use its
default value of 30 minutes.

The remaining variables are primarily concerned with determining what
your visitors are allowed to do on the forum.

$MaxMessageSize:  This is the maximum size (in kilobytes) of messages
which can be posted.  The primary purpose of this variable is to
prevent users from posting entire book chapters or the full text of
long CGI scripts....

$MaxInputLength:  This variable defines the maximum length of message
subjects and author names.