home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 2 BBS
/
02-BBS.zip
/
mued102b.zip
/
muedpm.doc
< prev
next >
Wrap
Text File
|
1995-01-20
|
29KB
|
906 lines
MUEd/PM Professional Version 1.02B
A PM User Editor for Maximus(**) v2.xx
Copyright (C) 1994, Craig Morrison, All Rights Reserved.
(**) "Maximus" is a trademark of Lanius Corporation.
----------------
What is MUEd/PM?
----------------
MUEd/PM Pro is a PM based user editor for Maximus v2.xx. It allows you to
edit every aspect of a user record in the easy to use Presentation Manager
environment.
----------
Legalities
----------
MUED/PM HAS BEEN TESTED AND CONTAINS NO GLARING OVERSITES OR BUGS ON THE
AUTHOR'S SYSTEM. THERE IS NO WARRANTY EITHER EXPRESSED OR IMPLIED. USE MUED/PM
*AT YOUR OWN RISK* THE AUTHOR WILL NOT BE HELD RESPONSIBLE FOR ANY DAMAGES
CAUSED, OR ALLEDGEDLY CAUSED FROM THE USE OF MUED/PM.
#################################################
KEEP AND MAKE REGULAR BACKUPS OF YOUR USER.BBS!
#################################################
MUEd/PM Professional version 1.02 is not public domain nor is it free
software. If you intend to use MUEd/PM past the 45 day trial period you are
required to register it. AFTER THE 45 DAY EVALUATION PERIOD MUEd/PM WILL NO
LONGER OPERATE WITHOUT REGISTRATION. Please print out the file REGISTER.FRM
from the distribution archive for more information about registration.
----------------------------
Getting Started With MUEd/PM
----------------------------
To start MUEd/PM simply type MUEDPM at an OS/2 command prompt and press
ENTER. The first time the program starts you will be prompted to enter the
location your USER.BBS and AREA.DAT files, as well as the directory that your
Maximus files reside in. Specifically you will be asked for the following:
What you enter Field Name
------------------------------------------------------------------
Your Maximus Directory Maximus Directory
Path+filename of your USER.BBS User File
Path+filename of your AREA.DAT File Area Data
Path+filename of your AREA.DAT Message Area Data
Once MUEd/PM is up and running you will be presented with a list of your
users. The columns of information shown are self-explanatory.
There are two command line parameters MUEd/PM understands, SETTINGS and
REGISTER. SETTINGS allows you to change the path and file information that you
are asked for the first time you run MUEd/PM. REGISTER allows you to enter your
registration information. NOTE: REGISTER drops you back to either the Workplace
Shell or the command prompt you started from when you are finished entering
your registration information. This was done to make sure that the information
gets recorded correctly.
To bring up the settings dialog when you start MUEd/PM type:
MUEDPM SETTINGS
and press the ENTER key at an OS/2 command prompt.
To enter your registration information type:
MUEDPM REGISTER
and press the ENTER key at an OS/2 command prompt.
If you specify a command line parameter and it isn't REGISTER or SETTINGS
MUEd/PM assumes you want to run a REXX script in batch mode. In this case
MUEd/PM will go through its normal startup sequence and then run the REXX
script. When the REXX script completes MUEd/PM will shut down and return you to
either the command prompt you started it from or the Workplace Shell.
To have MUEd/PM run the REXX script UPGUSER.CMD and then exit, type:
MUEDPM UPGUSER.CMD
and press the ENTER key at an OS/2 command prompt.
-------------
Using MUEd/PM
-------------
The pull-down menu at the top of MUEd/PM's window consists of three entries;
File, Users and Help. If you can't figure out how something works, rap on the
F1 key. There is context sensitive help available in most parts of the program.
We'll be going over each of these menus in turn. Refer to the following
figure for the layout of the File menu:
File
Sort... Sort your user file.
-----------------------
REXX Macro... Run a REXX script.
-----------------------
Save Saves changes to your user file.
Revert Reverts to the last saved user file.
-----------------------
Pack & Save Packs your user file and removes all
entries marked for deletion.
-----------------------
Exit Shuts down MUEd/PM
File->Sort...
Allows you to physically sort your user file. You are able to specify both a
primary and secondary key, while also choosing to sort in ascending or
descending order. A dialog box will be presented for you to choose the sort
options you wish to use. Initially the secondary key selections will be
disabled, to turn them on, click on the Use Secondary Key check box to check
it. Then you may select a secondary key. The Ascending check box allows you to
choose which direction to sort in, when checked the sort will be in ascending
order. OK performs the sort, Cancel aborts the process.
File->REXX Macro...
Here you will be presented with a standard file open dialog so that you can
choose a REXX script to execute. Please see MUEd/PM REXX Extensions for more
information about the REXX capabilities of MUEd/PM.
File->Save
Records the changes you have made to your user file and makes them permanent.
Once you save your changes you are committed, Revert will not help you. If you
made a mistake you will have to close MUEd/PM and copy the backup file back
over your user file.
File->Revert
Discards any changes made since the last Save, Pack & Save or Append to the
user file. Save, Pack & Save and Append User all make committed changes to the
user file on disk, after performing one of those functions Revert will not
discard those changes.
File->Pack & Save
Packs the user file and saves all changes. Deleted users are purged using
this selection. As mentioned earlier, after a Pack, Revert won't restore the
user file.
File->Exit
Returns you to either Workplace Shell or to the command prompt you started
MUEd/PM from.
------------------------------
Next comes the Users menu:
Users
Find... Finds and scrolls a user into view.
-----------------------
Edit... Lets you edit a user.
Apply Template... Applies a user template to the selected
user.
Append Record Appends a blank record to the end of the
user file.
-----------------------
Toggle DEL Flag Toggles the DEL flag for the selected
record.
Users->Find...
Prompts you to enter a text string to use as the search criteria. The text
you enter here will be searched for in all the visible fields in MUEd/PM's
window. The first match found will be scrolled into view and high-lighted for
you.
Users->Edit...
Brings up the edit user dialog for the selected user. The edit user dialog
while large and menacing, is actually quite simple to use. For an explanation
of each of the fields, please refer to the context sensitive help available in
the dialog box.
Cancel will discard any changes you have made if you don't want to save them.
Save will record the changes in memory.
Users->Apply Template...
Applies a user template, defined in MUEDPM.TPL, to the selected user record.
Please see the included MUEDPM.TPL or Appendix 1 for more information on what fields you can
define in a template, the file is heavily commented.
Users->Append Record
Appends a blank record to the end of the user file and brings up the edit
user dialog. This selection makes a physical change to the user file stored on
disk and can not be undone without exiting MUEd/PM and copying the backup file
over the user file. Revert can not reverse this action.
Users->Toggle DEL Flag
Toggles the deleted flag for the selected record. Basically this is just a
quick way to mark or unmark a user for deletion without having to open the edit
user dialog.
------------------------------
The Help menu should be pretty self-exlpanatory.
------------------------------
--------------
The Button Bar
--------------
The Button Bar at the top of MUEd/PM's window allows you quick access to all
the functions defined on the pull down menus. To see what a button does simply
move the mouse pointer over the button in question. The title bar for MUEd/PM
will change to show you what that button does.
The last 10 buttons on the button bar are for you to use to give you quick
access to your REXX scripts. See the file MUEDPM.RXD or Appendix 2 for an
example of how to define the button functions.
-----------------------
MUEd/PM REXX Extensions
-----------------------
MUEd/PM sports an entire suite of extensions to the REXX Procedures language
available as part of OS/2. These extensions allow you full access to all
aspects of your user records.
The REXX commands PULL and SAY are fully supported through the REXX Output
window that is provided. However I must warn you, the output window is rather
primitive, it does not support cursor movement at all. It provides you with a
mechanism to communicate with your REXX scripts in a simple fashion. Standard
Input and Standard Output are redirected to the output window, so applications
that use these mechanisms to communicate with the user will work fine. Standard
Error is redirected to the file REXX.ERR in the directory that MUEd/PM was
started from. The output window consists of three controls. At the top of the
window you will see an entry control that allows you to enter up to 80
characters, right next to the entry control is a button labelled 'SEND'. After
typing text into the entry control clicking on SEND sends the text in the entry
control to Standard Input. Clicking on SEND when the entry control is empty
sends a CR/LF pair to Standard Input. Right below the entry control is a
multiple line entry control that will contain the text coming from Standard
Output.
Last but not least, if you wish to stop a REXX script while it is running
press F3 while the REXX output window has the input focus. After the line in
the script that is currently running completes, OS/2 will halt the script.
Most of the functions require at least one argument passed to them, an index.
The index is ZERO based, the index of the last user will ALWAYS be
MED_QueryUserCount()-1.
When an error occurs all the functions return 'ERROR', on success they either
return the requested information or 'OK'.
The functions (there are a bunch of them):
MED_ClearWindow()
Clears the REXX output window.
MED_QueryUserCount()
Returns the number of user records.
MED_QuerySelectedUser()
Returns the index of the selected user record.
MED_QueryIndex(UserName)
Returns the index of UserName.
MED_QueryName(index)
Returns the name of the user at index.
MED_SetName(index, name)
Sets the user name at index to name.
MED_QueryAlias(index)
Returns the alias of the user at index.
MED_SetAlias(index, alias)
Sets the alias at index to alias.
MED_QueryLocation(index)
Returns the location of the user at index.
MED_SetLocation(index, location)
Sets the location of the user at index to location.
MED_QueryPhone(index)
Returns the phone number of the user at index.
MED_SetPhone(index, phone)
Set the phone number of the user at index to phone.
MED_QueryLastRead(index)
Returns the last read offset of the user at index.
MED_SetLastRead(index, lastreadLong)
Sets the last read offset of the user at index to lastreadLong.
WARNING, WARNING, DANGER WILL ROBINSON! If you don't know what
this field represents leave it alone or you will trash the last
read pointers for the user!
MED_QueryPassword(index)
Returns the password of the user at index.
MED_SetPassword(index, password)
Sets the password of the user at index to password.
MED_QuerySysCalls(index)
Returns the number of system calls of the user at index.
MED_SetSysCalls(index, syscalls)
Sets the number of system calls for the user at index to
syscalls.
MED_QueryHelpLevel(index)
Returns the help level of the user at index. The return value
will be one of:
NOVICE
REGULAR
EXPERT
HOTFLASH
MED_SetHelpLevel(index, helplevel)
MED_QueryVideo(index)
Returns the selected video mode of the user at index. The return
value will be one of:
TTY
ANSI
AVATAR
MED_SetVideo(index, video)
Sets the video mode for the user at index to video. video should
be one of the following:
TTY
ANSI
AVATAR
Make sure you use all UPPER CASE letters.
MED_QueryNulls(index)
Returns the number of nulls sent for the user at index.
MED_SetNulls(index, nulls)
Sets the number of nulls for the user at index to nulls.
MED_QueryBits(index)
Returns the bit flags of the user at index. The return value
will be one or more of the following separated by commas:
HOTKEYS
NOCHAT
FSR
NERD
NOULIST
TABS
MED_SetBits(index, bits)
Sets the bits flags for the user at index to bits. bits should
contain one or more of the following separated by commas:
HOTKEYS
NOCHAT
FSR
NERD
NOULIST
TABS
Make sure you use all UPPER CASE letters.
MED_QueryBits2(index)
Returns the bits2 flags for the user at index. The return value
will be one or more of the following separated by commas:
BADLOGON
IBMCHARS
BORED
MORE
USEDMAX
CLS
MED_SetBits2(index, bits2)
Sets the bits2 flags for the user at index to bits. bits2 should
contain one or more of the following separated by commas:
BADLOGON
IBMCHARS
BORED
MORE
USEDMAX
CLS
Make sure you use all UPPER CASE letters.
MED_QueryPriviledge(index)
Returns the priviledge level of the user at index. The return
value will be one of the following:
TWIT
DISGRACE
LIMITED
NORMAL
WORTHY
PRIVIL
FAVORED
EXTRA
CLERK
ASSTSYSOP
SYSOP
HIDDEN
MED_SetPriviledge(index, priv)
Sets the priviledge level of the user at index to priv. priv
should be one of the follwing in all UPPER CASE letters:
TWIT
DISGRACE
LIMITED
NORMAL
WORTHY
PRIVIL
FAVORED
EXTRA
CLERK
ASSTSYSOP
SYSOP
HIDDEN
MED_QueryTimeToday(index)
Returns the time online for the day of the users last call.
MED_SetTimeToday(index, time)
Sets the time online for the day of the user at index to time.
MED_QueryFlags(index)
Returns the flag settings for the user at index. The return
value will be one or more of the following separated by commas:
DEL
PERM
MED_SetFlags(index, flags)
Sets the flags of the user at index to flags. flags should be
one or more of the following in all UPPER CASE letters:
DEL
PERM
MED_QueryScreen(index)
Returns the width and length the user at index has selected. The
return value will be a string formatted as "xx, yy", where xx is
the width and yy is the length. Example:
80, 24
MED_SetScreen(index, width, len)
Sets the screen size of the user at index to width, len.
MED_QueryCredit(index)
Returns the matrix netmail credits of the user at index.
MED_SetCredit(index, credits)
Sets the netmail credits of the user at index to credits.
MED_QueryDebit(index)
Returns the matrix netmail debits of the user at index.
MED_SetDebit(index, debits)
Sets the netmail debits of the user at index to debits.
MED_QueryExpiryInfo(index)
Returns the expiration information for the user at index.
The string returned will vary depending the Expiry options set
for the user. It is in the form of:
<xtype>,<xtime>,<xaction>,<xpriv>
Examples of the most common returns are:
DAYS,<days_left_to_expiry>,NONE
DAYS,<days_left_to_expiry>,AXE
DAYS,<days_left_to_expiry>,DEMOTE,<priv_level>
MINUTES,<mins_left_to_expiry>,NONE
MINUTES,<mins_left_to_expiry>,AXE
MINUTES,<mins_left_to_expiry>,DEMOTE,<priv_level>
NONE,NONE
This string should ALWAYS be parsed from left to right.
MED_SetExpiryInfo(index, xtype, xtime, xaction, xpriv)
Sets the expiry information fields of the user at index based on
xtype, xtime, xaction and xpriv. All arguments must be present
even if they are not needed for the type of expiry you want to
set with this function.
xtype can be ONE of the following:
DAYS
MINUTES
NONE
xtime depends on xtype. See the table below:
xtype xtime Setting
------------------ ------------------------------
DAYS Days to expiry.
MINUTES Minutes to expiry.
NONE Ignored but MUST be present.
xaction can be ONE of the following:
AXE
DEMOTE
NONE
xpriv should be set to a valid priviledge level if xaction is
set to DEMOTE, for AXE and NONE it doesn't have to contain
anything useful but it must STILL be present.
xpriv values can be one of the following in all UPPER CASE
letters:
TWIT
DISGRACE
LIMITED
NORMAL
WORTHY
PRIVIL
FAVORED
EXTRA
CLERK
ASSTSYSOP
SYSOP
HIDDEN
MED_QueryLastCallDate(index)
Returns the Last Call Date and Time for the user at index. The
string will be formatted as "MM-DD-YYYY HH:MM:SS".
E.G: 10-25-1994 12:13:30
MED_SetLastCallDate(index, year, month, date, hours, minutes, seconds)
Sets the last call date and time of the user at index based on
the passed parameters. year must be a valid 4 digit number
greater than or equal to 1980.
MED_QueryKeys(index)
Returns the key settings for the user at index. The return value
will be a string containing all the keys set for the user. If
the user had all the keys set the return value would be:
12345678ABCDEFGHIJKLMNOPQRSTUVWX
MED_SetKeys(index, keys)
Sets the keys of the user at index to keys. keys should be a
string containing ALL the keys you want set for the user.
Alphabetic characters (a, b, c, etc..) should be UPPER CASE. You
MUST specify ALL the keys you want set for the user, any keys
set before this function is called are cleared before 'keys' is
applied to the user.
MED_QueryLanguage(index)
Returns the index of the current language for the user at index.
MED_SetLanguage(index, languagenumber)
Sets the language index of the user at index to languagenumber.
MED_QueryProtocol(index)
Returns the index of the default protocol for the user at index.
MED_SetProtocol(index, protocolnumber)
Set the protocol index for the user at index to protocolnumber.
MED_QueryUploads(index)
Returns the KB total of uploads from the user at index.
MED_SetUploads(index, uploads)
Sets the upload KB total of the user at index to uploads.
MED_QueryDownloads(index)
Returns the KB total of downloads to the user at index.
MED_SetDownloads(index, downloads)
Set the download KB total of the user at index to downloads.
MED_QueryDownloadsToday(index)
Returns the KB total of downloads to the user at index for the
day of their last call.
MED_SetDownloadsToday(index, downloads)
Sets the KB total of downloads for the day for the user at index
to downloads.
MED_QueryLastMsgArea(index)
Returns the name of the last message area for the user at index.
MED_SetLastMsgArea(index, msgarea)
Sets the last message are for the user at index to msgarea.
MED_QueryLastFileArea(index)
Returns the name of the last file area for the user at index.
MED_SetLastFileArea(index, filearea)
Sets the last file area for the user at index to filearea.
MED_QueryCompressor(index)
Returns the index of the default archiver for the user at index.
MED_SetCompressor(index, compressornumber)
Sets the compressor index of the user at index to
compressornumber.
MED_QueryExtra(index)
Returns the value of the extra field for the user at index.
MED_SetExtra(index, extra)
Sets the extra value of the user at index to extra.
MED_ApplyTemplate(index, template)
Applies the user template, template, to the user at index.
template should be the name of a template in MUEDPM.TPL (make
sure you include the [] characters in template.)
MED_SortUsers(direction, primarykey [, secondarykey] )
Sorts the users in direction order based on primarykey, and
secondarykey if present.
The values for direction are; ASCENDING or DESCENDING.
The values for primarykey and secondarykey are:
NAME
ALIAS
PRIVILEDGE
PHONE
LOCATION
CALLS
CALLDATE
MED_SaveUsers()
Write changes made to the users to disk.
MED_PackUsers()
Packs the user file and cleans up the last read pointers.
------------------
Wrapping It All Up
------------------
That is pretty much the A-Z of it. MUEd/PM errs on the side of caution, a
single generation back up is made of your USER.BBS so you can recover it. If
MUEd/PM even sniffs a hint of trouble it balks and leaves your USER.BBS alone.
When it wouldn't be prudent to perform an operation when Maximus is active with
a caller online, MUEd/PM will alert you and tell you that it can't perform the
function. In these instances you have no choice but to wait until the caller
hangs up and Maximus recycles.
If you should need any assistance with MUEd/PM I can be contacted at:
Fidonet: 1:201/60
Internet: cam@wpc.cioe.com
BBS: 1-317-742-2680
Snail-mail: Craig Morrison
1316 Ferry St.
Lafayette, IN 47901-1533
I hope you find MUEd/PM of some use, have fun with it!
-------------------------------------------------------------
Appendix 1, MUEDPM.TPL - Sample user template definition file
-------------------------------------------------------------
------------------------------------------------------------------------------
;
; MUEDPM.TPL
;
; This is an example User Templates file for MUEd/PM Pro. Astute readers will
; notice the striking similarity to the Windows Initialization file format that
; this file follows. This was done on purpose so that you could use any text
; based editor to modify it.
;
; Each section starts with a tag enclosed with [] characters, this is the name
; of the template that comes up in MUEd/PM when you select Edit -> Apply User
; Template. Each section is then made up of Key/Key Value pairs.
;
; Key/Key Value pairs are:
;
; PrivLevel
;
; TWIT
; DISGRACE
; LIMITED
; NORMAL
; WORTHY
; PRIVIL
; FAVORED
; EXTRA
; CLERK
; ASSTSYSOP
; SYSOP
; HIDDEN
;
; Credit
;
; Number of Matrix Netmail Credits to give to user when applied.
;
; ExpiryType
;
; NONE
; DAYS
; MINUTES
;
; ExpiryTime
;
; Depending on ExpiryType this is either the number of minutes
; to expiration or the number of days.
;
; ExpiryAction
;
; NONE
; AXE
; DEMOTE
;
; ExpiryPriv
;
; If ExpiryAction is set to DEMOTE, this is the level to demote
; to.
;
; TWIT
; DISGRACE
; LIMITED
; NORMAL
; WORTHY
; PRIVIL
; FAVORED
; EXTRA
; CLERK
; ASSTSYSOP
; SYSOP
; HIDDEN
;
; Keys
;
; One or more of: 12345678ABCDEFGHIJKLMNOPQRSTUVWX
;
; These are set _IN ADDITION TO_ those keys already set.
;
; If you don't want a particular aspect set for a user, don't include that
; Key/Key Value pair in the template definition.
;
; If ExpiryType = NONE, ExpiryAction, ExpiryTime and ExpiryPriv are ignored.
; If ExpiryType = DAYS or MINUTES, ExpiryTime is REQUIRED.
; If ExpiryAction = DEMOTE, ExpiryPriv is REQUIRED.
;
; You can have as many as you want, subject to the limitations of the List Box
; control. The total memory consumed by all the tags must not exceed 65355
; bytes.
;
; Each line of the file should be no longer than 126 bytes.
;
[First Upgrade]
PrivLevel=LIMITED
Credit=65535
ExpiryType=NONE
[Subscriber]
PrivLevel=EXTRA
Credit=65535
ExpiryType=DAYS
ExpiryTime=180
ExpiryAction=DEMOTE
ExpiryPriv=NORMAL
Keys=R
[Friend]
PrivLevel=EXTRA
Credit=65535
ExpiryType=NONE
Keys=1R
------------------------------------------------------------------------------
---------------------------------------------------------
Appendix 2, MUEDPM.RXD - Sample button configuration file
---------------------------------------------------------
------------------------------------------------------------------------------
;
; This is a sample REXX button configuration file for MUEd/PM.
;
; Comments may be inserted into the file by starting a line with a ;
; character. It MUST be the FIRST character on the line.
;
; The format of each non-comment line in this file is:
;
; FILENAME.CMD *BITMAP.BMP Button Description Text
;
; FILENAME.CMD
; The name of the REXX script to attach to this button.
;
; *BITMAP.BMP
; The name of a 16 x 16 bitmap file. The filename MUST begin with a `*'
; character so MUEd/PM knows that it should load the bitmap. If you don't
; specify a bitmap, MUEd/PM will provide a default bitmap for you. Both OS/2
; format bitmap (old and new flavors) files and Windows format bitmap files
; can be used. You will get the best results with 16 x 16, 16 color bitmaps.
; The Icon Editor that comes with OS/2 can be used to create them, as long as
; the file is saved in bitmap form. If you hear a beep when MUEd/PM is
; loading, there was an error trying to load one or more of the bitmaps you
; specified.
;
; Button Description Text
; The text you want to appear in MUEd/PM's title bar when you move the
; mouse pointer over the button.
;
; Lines should be no more than 512 characters long, and the descriptions should
; be limited to 80 characters or less. Since there are only 10 user buttons,
; you can only have 10 definitions in this file.
;
USERLIST.CMD *ulist.bmp User List
EXPINFO.CMD User Expiry Information List
PRNUSERS.CMD Print a Simple User List
UPGUSER.CMD Upgrade Limited to Normal
------------------------------------------------------------------------------