2001-10-22 17:33:55 +00:00
|
|
|
<HTML>
|
|
|
|
<HEAD>
|
|
|
|
<META http-equiv="Content-Type" content="text/html; charset=ISO 8859-1">
|
|
|
|
<META http-equiv="Content-Style-Type" content="text/css">
|
|
|
|
<META name="author" lang="en" content="Michiel Broek">
|
|
|
|
<META name="copyright" lang="en" content="Copyright Michiel Broek">
|
|
|
|
<META name="description" lang="en" content="MBSE BBS Manual">
|
|
|
|
<META name="keywords" lang="en" content="MBSE BBS, MBSE, BBS, manual, fido, fidonet, gateway, tosser, mail, tic, mailer">
|
|
|
|
<TITLE>MBSE BBS Menu System.</TITLE>
|
|
|
|
<LINK rel=stylesheet HREF="../manual.css">
|
|
|
|
</HEAD>
|
|
|
|
<BODY>
|
|
|
|
<BLOCKQUOTE>
|
|
|
|
<h5>Last update 22-Oct-2001</h5>
|
|
|
|
<P> <P>
|
|
|
|
|
|
|
|
<H1>MBSE BBS Menu System</H1>
|
|
|
|
<P ALIGN=CENTER>Menus sections:
|
|
|
|
<A HREF="menu0.html">Global menus</A>
|
|
|
|
<A HREF="menu100.html">File areas</A>
|
|
|
|
<A HREF="menu200.html">Message areas</A>
|
|
|
|
<A HREF="menu300.html">User settings</A>
|
|
|
|
<A HREF="menu400.html">Onliners</A>
|
|
|
|
<A HREF="menu500.html">BBS lists</A>
|
|
|
|
<A HREF="control.html">ANSI Control Codes</A>
|
|
|
|
</P>
|
|
|
|
<P>
|
|
|
|
<HR>
|
|
|
|
</P>
|
|
|
|
|
|
|
|
<H3>Introduction.</H3>
|
|
|
|
<P>
|
|
|
|
One of the most powerfull features of the BBS is it's menu system. You
|
|
|
|
have complete control over each individual menu item which can be restricted
|
|
|
|
according to criteria such as security levels.
|
|
|
|
<P> <P>
|
|
|
|
|
|
|
|
<H3>ANSI Screens.</H3>
|
|
|
|
<P>
|
|
|
|
For the menus to work properly you can draw ANSI screens, this
|
|
|
|
is what the users will see. For Linux there is "Duh DRAW" written by Ben
|
|
|
|
Fowler, see sunsite.unc.edu /pub/Lunux/docs.
|
|
|
|
If you can't find it or have no internet access, you can also use
|
|
|
|
THEDRAW. This utility can be found on many BBS'es around the world. Unfortunatly
|
|
|
|
it is a DOS program so you will need dosemu on your Linux box or a seperate
|
|
|
|
DOS computer. You can define main screens and include screens for each
|
|
|
|
menu, the include screen may for example show the keys that you have available
|
|
|
|
in every menu. See the list of <A HREF="control.html">control codes</A>.
|
|
|
|
<P> <P>
|
|
|
|
|
|
|
|
<H3>Display lines.</H3>
|
|
|
|
<P>
|
|
|
|
It is also possible to display menu lines with the buildin display option.
|
|
|
|
The used colors are selectable, a normal color and a bright color.
|
|
|
|
The normal color is the default, you can toggle bright on and of using
|
|
|
|
the ^ in the display line. If you end a menu display line with a ; then
|
|
|
|
no newline is send after that line. If you want to output teh ^ or ; characters
|
|
|
|
you need to escape them with a backslash like this: \; or \^. The order of menu
|
|
|
|
entries is important.
|
|
|
|
<P> <P>
|
|
|
|
|
|
|
|
<H3>Automatic commands.</H3>
|
|
|
|
<P>
|
|
|
|
A menu function is usually executed when a user presses the hot-key
|
|
|
|
assigned to that particular menu item. But menu functions can also be executed
|
|
|
|
automatically. Each menu item contains an AutoExec field. By default this
|
|
|
|
field is set to No, but by toggling it to Yes, the menu item can be made
|
|
|
|
to execute when it is played back (displayed) by the BBS. </P>
|
|
|
|
<P>
|
|
|
|
As you read through the menu function types outlined in this chapter,
|
|
|
|
you may come to realize that this is a very powerfull feature. For example,
|
|
|
|
when used with the menu function that displays a text file, you can design
|
|
|
|
very elaborate, graphical text file menus that you wouldn't normally be
|
|
|
|
able to display in a line-by-line menu. </P>
|
|
|
|
<P>
|
|
|
|
Automatic menu execution can be used in many other instances as well.
|
|
|
|
Just to give you some ideas, it might be used to display a text file to
|
|
|
|
users who have a security level equal to or greater than a certain level.
|
|
|
|
Yet another use is to execute multiple function menus which are used to
|
|
|
|
execute several functions when a single command is entered.
|
|
|
|
<P> <P>
|
|
|
|
|
|
|
|
<H3>Multiple languages.</H3>
|
|
|
|
<P>
|
|
|
|
For each language you can define a set of menus. Only for the default
|
|
|
|
language all menus must exist. It makes sense to make the filenames of
|
|
|
|
your menus for each language the same and not to translate them. If a menu
|
|
|
|
is missing for a non default language, the menu from the default language
|
|
|
|
path is used instead.
|
|
|
|
<P> <P>
|
|
|
|
|
|
|
|
<H3>Editing a menu.</H3>
|
|
|
|
<P>
|
|
|
|
The order of the menu lines in the setup is not important except for
|
|
|
|
the autoexec menus, they must be placed in the right order from start,
|
|
|
|
ie. begin with the menu specific screen display, then the global include
|
|
|
|
display and finally show the prompt.
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<IMG SRC="../images/e_menu.gif" Border="0">
|
|
|
|
<OL>
|
|
|
|
<LI><B>Selection key.</B> This is the key a user must press to activate
|
|
|
|
this menu. This field is ignored when AutoExec is set to Yes. </LI>
|
|
|
|
|
|
|
|
<LI><B>Type nr.</B> this is the menu type to execute. For a description
|
|
|
|
of all available types see below. </LI>
|
|
|
|
|
|
|
|
<LI><B>Optional data.</B> Some menus need optional data, for example the
|
|
|
|
function goto another menu needs the name of that menu file here. </LI>
|
|
|
|
|
|
|
|
<LI><B>Display.</B> What is to be displayed to the user. You can use this instead
|
|
|
|
of ANSI screens.
|
|
|
|
</LI>
|
|
|
|
|
|
|
|
<LI><B>Security.</B> This is the minimum security level to execute this
|
|
|
|
selection. The security is a level number combined with 32 bitmapped flags.
|
|
|
|
NOTE: level 0 and no flags means
|
|
|
|
everyone can select this menu. Good for logout options and all other options
|
|
|
|
everyone must be able to execute. </LI>
|
|
|
|
|
|
|
|
<LI><B>Min. age.</B> The minumum age the user must be to execute this selection.
|
|
|
|
You may want to restrict access to certain areas to users older than 18
|
|
|
|
years. If you leave this to 0, every one can execute this menu. </LI>
|
|
|
|
|
|
|
|
<LI><B>Max. lvl.</B> The maximum level a user must have to execute this
|
|
|
|
menu. If you leave this at 0 then the maximum level has no effect. </LI>
|
|
|
|
|
|
|
|
<LI><B>Password.</B> You can protect the menu selection with a password.
|
|
|
|
If this field is empty, no password check is done. </LI>
|
|
|
|
|
|
|
|
<LI><B>Credit.</B> How much credit a user must have to execute this menu
|
|
|
|
selection. This field is not in use yet. </LI>
|
|
|
|
|
|
|
|
<LI><B>Lo-colors.</B> The normal display color for the display line.
|
|
|
|
</LI>
|
|
|
|
|
|
|
|
<LI><B>Hi-colors.</B> The bright display color for the display line.</LI>
|
|
|
|
|
|
|
|
<LI><B>AutoExec.</B> If this is an automatic executed selection. </LI>
|
|
|
|
|
|
|
|
<LI><B>No door.sys</B> Suppress writing of a door.sys file in the users
|
|
|
|
home directory. This item is only visible with menu type 7.</LI>
|
|
|
|
|
|
|
|
<LI><B>Y2K style</B> Writes the dates in the door.sys file in the new style,
|
|
|
|
with 4 digit year numbers, else the old 2 digit style is used. This item
|
|
|
|
is only visible with menu type 7.</LI>
|
|
|
|
|
|
|
|
<LI><B>Use Comport</B> Writes real comport to the door.sys file, this is
|
|
|
|
for dosemu with the vmodem patch. This item is only visible with menu
|
|
|
|
type 7.</LI>
|
|
|
|
|
|
|
|
</OL>
|
|
|
|
<P> <P>
|
|
|
|
|
|
|
|
<H3>Final warning.</H3>
|
|
|
|
<P>
|
|
|
|
If a submenu is missing, the BBS falls back to the main menu. This menu
|
|
|
|
must be called "main" (or else set another name in the global
|
|
|
|
setup) or your BBS won't start and complain. Submenus may be nested 50
|
|
|
|
levels deep.
|
|
|
|
<P>
|
|
|
|
|
|
|
|
<A HREF="../index.htm"><IMG SRC="../images/b_arrow.gif" ALT="Back" BORDER=0 width="33" height="35"> Back</A>
|
|
|
|
</BLOCKQUOTE>
|
|
|
|
</BODY>
|
|
|
|
</HTML>
|