The ST/R Utilities Package Release 3 By: Douglas McLaughlin [Black Fire] * All new or updated information since the last release will have a star in the left column. ------------------------------------------------------------------------------ STR.LogOn.rexx STR.LogOn.Mcfg INSTALLATION: File Locations: STR.LogOn.rexx ---> Doors:STR.Utils/ STR.LogOn.Mcfg ---> Doors:STR.Utils/ Install in BBS: To install STR.LogOn.rexx, create or add the following line to your "TEXT.WELCOME.USER" file in the BBS:TEXT/ENGLISH/ directory: \#0Doors:STR.Utils/STR.LogOn.rexx\ To install STR.LogOn.rexx as a door utility, ensure that all users have access to the program and the description for the program *MUST* have "Logon Manager" somewhere in it. This is case-sensitive and you must use upper and lower case as shown. STR.LogOn.Mcfg is the main configuration file for the Logon Manager. REQUIREMENTS: Any Amiga ;) The faster the better! =) OS 2.04+ Untested with, but should work fine with, OS 3.0/3.1 ARexx: RexxMast should be run in your s:user-startup. rexxsupport.library should be installed in Libs: Excelsior! BBS v1.20+ Works fine with v1.21 as well. KNOWN BUGS: None at this time. You can't pass arguments to an ARexx program called from the EX.BBSMenus file or an IPL command. Another "Feature" that needs changing. CONFIGURATION: STR.LogOn.rexx datapath - This should be the path to the STR.LogOn.Mcfg configuration file. runagain - If you set this to 1, the user will be allowed to run through the log-on sequence when the program is executed as a door. When set to 0, this option is not available. mandatory - If you set this to 1, the user has no choice but to create a log-on sequence. When set to 0, the user is asked if s/he would like to create a sequence. STR.LogOn.Mcfg This is the main configuration for the Logon Manager. Each entry in the file contains three lines: Line 1: This is a description of the item. It shouldn't be any longer than about 40 characters. Line 2: This is the IPL command used to launch the program or view the text file, whichever the case may be. Please refer to your Excelsior! User's Manual for a description of these IPL commands. (If you have one!) Line 3: This is the flags line. Currently there are four flags defined: 1 - Clear the screen before launching the program or viewing the text file. 2 - After the program or text file is finished, Print a "Press Return" message and wait for a keypress before continuing with the Logon Manager. 4 - When this flag is set, the item is mandatory and will automatically be added to the user's log-on sequence. * 8 - When this flag is set, the flags line also contains an argument for the called program, separated from the flag by a (;) semi-colon. For example: 8;1 <- Passes "1" as the argument. 9;name <- Passes "name" as the argument, with screen clear. See the included STR.LogOn.Mcfg for more examples. To have the Logon manager execute more than one flag, add them together. ie. for both a clear screen and the "Press Return" prompt, use a 3. for both a clear screen and a mandatory item, use 5. PURPOSE & FEATURES: STR.LogOn.rexx When I first read the docs for the RoT_Logon program, I thought, "Wow! this is a cool program and a great idea!" Well, after I installed the program I found that it just didn't work the way I thought it should, and my users were very annoyed by its lack of intelligence. Thus, STR.LogOn.rexx.... This is a very short ARexx program. It reads in its data file, STR.LogOn.Mcfg, and prompts users if they would like to execute or see the items listed. Once the user has made his/her choices, it stores a file called STR.LogOn.Ucfg in the user's private directory. After that, the user is never again prompted if they would like to see this or that at logon time. The only exception is when you change the STR.LogOn.Mcfg file. The Logon Manager compares the file dates of the STR.LogOn.Ucfg against the STR.LogOn.Mcfg. If the date on the Mcfg is newer than the Ucfg, the options must have changed and the user is asked if s/he would like to re-edit the logon sequence. When the STR.LogOn.rexx program is run as a door utility, it allows the user to re-edit the logon sequence even when no items have changed. HISTORY: * Version 1.11: Added the ability to pass any program an argument string. The string will be in the file "T:RexxArg{NODE}", where {NODE} is the current node number of the parent BB. ie. "T:RexxArg1" Other E! developers are more than welcome to use this feature in their programs, of course, they will only run from the Logon Manager! ;) * Version 1.1 Release 3: Changed the screen clear from using the IPL \f1 to simply sending the ASCII code 12, Top of Form. This is such a small change, I didn't bother to bump the revision. Version 1.1: Completely re-wrote the logic flow of the program. The changes are transparent to the user, but the program's flow makes a lot more sense and can be added to much more easily. Added the ability to make inidividual items or even the whole list mandatory. Added the ability for a user to run through the log-on sequence when the program is executed as a door program. Version 1.01: Ooops! STR.LogOn.rexx is now "Dropped Carrier" aware! Version 1.0: First public release.