ÚÄÄÄÄÄÄ¿ ÚÄÄÄ¿ ÚÄÄÄÄÄÄ¿ ÚÄÄÄÄÄ¿ ÚÄ¿ ÚÄ¿ ÚÄÄÄÄÄÄ¿ ÚÄÄÄÄÄÄ¿ ÚÄÄÄÄÄ¿ ÚÄÄÄÄÄ¿ À¿ ÚÄ¿ ³ À¿ ÚÙ ³ ÚÄÄ¿ ³ ÀÄ¿ ÚÄÙ ³ ³ ³ ³ À¿ ÚÄ¿ ³ ³ ÚÄÄ¿ ³ ÀÄ¿ ÚÄÙ ³ ÚÄÄÄÙ ³ ÀÄÙ ³ ³ ³ ³ ÀÄÄÙ ³ ³ ³ ³ ÀÄÙ ³ ³ ³ ³ ³ ³ ÀÄÄÙ ³ ³ ³ ³ ÀÄ¿ ³ ÚÄ¿ ³ ³ ³ ³ ÚÄ¿ ÚÙ ³ ³ ³ ÚÄ¿ ³ ³ ³ ³ ³ ³ ÚÄÄ¿ ³ ³ ³ ³ ÚÄÙ ÚÙ ÀÄÙ ³ ÚÙ À¿ ³ ³ ³ À¿ ³ ³ ³ ³ ³ ³ ÚÙ ÀÄÙ ³ ³ ³ ³ ³ ³ ³ ³ ÀÄÄÄ¿ ÀÄÄÄÄÄÄÙ ÀÄÄÄÙ ÀÄÙ ÀÄÄÙ ÀÄÙ ÀÄÙ ÀÄÙ ÀÄÄÄÄÄÄÙ ÀÄÙ ÀÄÙ ÀÄÙ ÀÄÄÄÄÄÙ -- The Birth Date Utility v1.01 for PCBoard 15.1 by Mario Mueller -- ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ I. Introduction to the Utility ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ The Birth Date Utility is a utility that will allow you get the users birth date. Since PCBoard doesn't have this option built in, you can use this PPE to do that job. This can be executed two different ways, one way would be replacing one of PCBoard's prompts and stuffing the entered information into that prompt. Second way would be using this program as your new user script. Another good thing about this utility is that it will make sure that the entered date is NOT invalid. So if a user will enter 00/00/0000, the program will reject it and prompt for the correct answer. It will also check for any future dates, so if anyone enters a date later than the present date, it will reject the answer. To make sure that the format of the date is correct, the program will automatically will provide the separating slashes (/) for the user if he or she has ANSI positioning. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ II. Features of the Utility ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ The following is a list of features of this utility: * Can be Installed almost anywhere in PCBoard * Small and will not take up much hard drive space * Configurable Prompt and Text Messages * Configurable Colors * Rejects Invalid Dates such as 00/00/0000 * Rejects Future Dates * Rejects Incomplete Dates such as 01/23/ * Checks for valid date Format * Calculates Age from Entered Date * Blocks an optional Specified Date Range * Detects an optional Specified Low Date Range * Does NOT require the ANSI emulation * Input Information can be Directed to a File ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ III. Installing the Utility ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ You have a variety of different places to install this program. Since you want to get a user's birth date when he or she is a new user, you are limited in some ways. This program was originally requested to be a replacement for the Verification prompt which would stuff the entered information from the PPE to that prompt, but I decided to add some other options. If you would like to use this as a prompt replacement, use the following process to accomplish this. I will use the Verification prompt as an example: * Execute the MKPCBTXT program * Press F3 and enter 706 * Clear the Existing prompt with the Ctrl-End Key * Enter an exclamation point (!) in the first column, followed immediately by the program path and file name (eg. !\PPE\BIRTH\BIRTH.PPE /SEND:STUFF) * Include the /SEND:STUFF command to inform the program to stuff the keyboard memory with the entered information (check above example) * Press ESC until you are out of the editor and your program is Installed You also have the option of executing this program as your new user script program. If you don't have a script right now, this would probably be the best way of installing this program. Use the following process to accomplish this: * Execute the PCBSETUP program * Select B for File Locations * Select D for New User/Logon/off Questionnaires * Clear the Existing information with the Ctrl-End Key * Enter the path and file name to the program (eg. \PPE\BIRTH\BIRTH.PPE) You will need to add the command line option /SEND to direct the received information to some place other than the Keyboard memory, since this isn't a replaced PCBoard prompt. You can send this information to the second user comment, or if you have the PSA-User Notes(6) installed you can direct the information there. Check the IV. Command Line Parameters section for more information about this. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ IV. Command Line Parameters ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ The command line options will allow you to change where you would like the received information to be placed. There are 3 different ways of storing your users birth date information. You can set the program to stuff the keyboards memory, you can send it to the second user comment, or you can send it to one of the PSA-User Notes(6) if you have it installed. The info will be directed with the /SEND command. This /SEND command is required, if this is not given, the program will exit immediately. Here is an example of a command line with the /SEND command. D:\PPE\BIRTH\BIRTH.PPE /SEND:STUFF The above command line will execute the program and will send the entered information from the user to the keyboard buffer. Here is another example: D:\PPE\BIRTH\BIRTH.PPE /SEND:1 The above command line will execute the program and will send the entered information from the user to the second user comment. There are a couple of other locations available for you to choose from. Check the following list for the one that best works with you: * /SEND:STUFF : Keyboard buffer (Send to Replaced Prompt) * /SEND:1 : Second User Comment * /SEND:2 : User Notes [1] (PSA-User Notes(6) Required) * /SEND:3 : User Notes [2] (PSA-User Notes(6) Required) * /SEND:4 : User Notes [3] (PSA-User Notes(6) Required) * /SEND:5 : User Notes [4] (PSA-User Notes(6) Required) * /SEND:6 : User Notes [5] (PSA-User Notes(6) Required) * /SEND:WRITE : Write Given Information to BIRTH.DAT Entered information will be sent with the format: MM/DD/YYYY AGE You can block out an optional specified date range with the /BLOCK option. Since it is unlikely to have 3 year olds or even 5 year olds logged on to a system, this option can come in handy. Unlike the /SEND parameter, this one is optional. Simply include the number of years you would like to count back from this year. For example, if you wanted to prevent a 5 year old from logging on to the system, you could simply use /BLOCK:5 as your parameter. This will take the date and count back 5 years from the current date on your system. This parameter must be placed after the /SEND parameter: D:\PPE\BIRTH\BIRTH.PPE /SEND:STUFF /BLOCK:5 If the parameter /BLOCK isn't included on the command line, the program will simply use the current year on your system as the default. I am sure there will not be any 6 month old babies trying to log on to your system. You can prevent dates that are too OLD with the /LOW command line option. Since it wouldn't be quite possible to have people from the old 1910's logging on to your system, this option is made available to you. Unlike the /SEND parameter, this one is only optional and is not required on the command line. If not specified, the lowest date that will be scanned for is 00/00/0000. To use this option, simply include the lowest date you want excepted. For example, if you wanted to prevent someone from entering 1910 as their birth year, you could simple use /LOW:1910 as your parameter. This will take the date entered and check to see if it less than or equal to the number on the command line. This parameter must be placed after the /SEND parameter: D:\PPE\BIRTH\BIRTH.PPE /SEND:STUFF /BLOCK:5 /LOW:1910 Just as long as the /SEND is the FIRST command line parameter, the program will execute correctly. If the /LOW option isn't specified, the program then will default to 00/00/0000, which is an invalid date. Most Sysops probably already have over 600 users on their system that haven't already been prompted for their birth date. You could always have the birth date utility executed each time a users logs on to the system, but what if that certain user has already entered their birth information? He would be prompted again, continously until you remove the program from logon. That is unless you don't use the /CHECK parameter. When this parameter is used, the program checks the set /SEND location for any text. If any text is found, the program will exit immediately assuming the user has already entered the birth information. If the program does not find any information in the /SEND location, the program will then prompt for the birth information. Now the users that have been around when this utility wasn't on your BBS can now be prompted for their birth information. How? You can use the example I mentioned above, simply execute the program with the /CHECK command line parameter. The following is an example: !D:\PPE\BIRTH\BIRTH.PPE /SEND:1 /BLOCK:5 /LOW:1910 /CHECK The only disadvantage with this command is that it can't be used with the /SEND:STUFF action. Since there are way TOO many prompts to that the birth information can be stuffed to, there really would be a way for the program to determine if the user has entered the information or not. The program doesn't know where to look for the information when the birth info is stuffed into a prompt. Any other /SEND:???? will work with the /CHECK command line parameter. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ V. Changing Colors and Text ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ You can change what the program will output to the user. Also you can change the colors with the PCBoard @X color codes. Included with this program is a sample text file called BIRTH.TXT that you can edit. The format for this file is very simple. Check the following list for more information: * Prompt given to the user for the Birth Date * Error Message for Not Enough Information * Error Message given when a date too Young is Entered (ex. 05/23/9999) * Error Message for an Invalid format * Error Message given when a date too Old is Entered (ex. 04/21/0000) * Detailed description given to the User before the Prompt Color codes can be entered in these messages and with the error messages, you can also use the PCBoard @BEEP@ code for a beep warning. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ VI. Other Information ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ This program is FREEWARE and requires no fee. I encourage anyone to distribute this program and upload it to all your favorite bulletin boards. ALL files in archive must be included if you plan to distribute this program. If you have any comments or suggestions about the program, feel free to leave me mail at the following net mail address if you have InterNet access: mario.mueller@merchant.com If you have access to Fido-Net style Crash mail, you can send me crash mail at the Fido-Net node number 1:270/619. Latest versions are available for download on the support bulletin board called The Antarctica Bulletin Board System (717) 755-2440 located in York Pennsylvania. I appreciate any comments and suggestions about any of my programs. I am open for ideas that you may have. I would like to thank my friend Robert Morris for helping me BETA test this program. He was the one who requested the [PPE] program. I thought it was a great idea so I worked on it and added a couple of other options to it. I now have a SUPPORT conference on the support bulletin board for all of the programs I have available. You can find the LATEST versions of all of the programs there. If you logon to the system, simply type SUPPORT at the main prompt and you will be taken to the support conference. *** END OF DOCUMENT *** THE BIRTH DATE UTILITY v1.00 ***