



                    DCT Voting Door v0.30, eta Release
                             By Dan Traczynski
                              August 22, 1996.

            Copyright (C) 1996 Dan Traczynski.  All rights reserved.





   DCT-Vote is a deluxe voting door for any BBS software which supports the
DORINFO1.DEF or DOOR.SYS drop file.  Setup is amazingly fast and easy, and
the voting door will be FreeWare until v1.0, after which it will become
shareware.




                           
                              Table of Contents
                           

               Features ................................... o1
               Installation ............................... o2
               SysOp Hotkeys .............................. o3
               Distribution & Disclaimer .................. o4
               Credits/Acknowledgments .................... o5
               Author's Notes and Support Info ............ o6
               History - Notes from the Past .............. o7



                                                                          o1
                    
                       Features of the DCT Voting Door
                    

  Supports both DORINFOx.DEF and DOOR.SYS allowing it to be run on virtually
   any bulletin board system.
  User time-out after a configurable amount of time.
  Auto-Deletion of old booths.
  Fully run by lightbars!
  Problem users can be locked out.
  Language support (not all of us speak English ;).
  External ANSI file support.
  Optional user censor (allowing you to filter out swearing).
  Bar graphs/percentages when displaying results.
  Users may leave their comments on each booth.
  Colour configuration.
  Internal SysOp-User full-screen chat mode.
  DCT-Vote can be set to have users vote for all new booths when they login.
  Users may be given vote points and vote for more than one answer.
  Multi-tasker capability.



                                                                          o2
                          
                             Installation Guide
                          

   Installation is extremely simple; all you must do is create a directory
for DCT-Vote, then run CONFIG.EXE to configure DCT-Vote to your system.  You
may also wish to edit DCTVOTE.FLT if you will be using the censor, as no
words have been pre-defined to filter out.  DCT-Vote does not have to be run
from the directory it resides in, since it automatically looks for all of its
files in its home directory.  Have your BBS call DCT-Vote via a command-line
similar to "C:\BBS\DOORS\DCTVOTE\DCTVOTE.EXE /PC:\BBS".  The "/P" parameter
specifies the path for DCT-Vote to read the drop file from and is only
required if the drop file will not be in the current directory.  If your BBS
supports memory swapping, please activate this option.

   If you would like to have your users presented with any new voting booths
when they login, have DCT-Vote executed at login with the "/A" parameter for
a command-line similar to "C:\BBS\DOORS\DCTVOTE\DCTVOTE.EXE /PC:\BBS /A".
DCT-Vote will have users vote for all new booths that they have not yet voted
for, then return to the BBS automatically.  If no new booths exist, DCT-Vote
will terminate without even letting the user know that it has been run.  You
may also specify "/A2" instead of "/A", and that would simply tell the user
how many questions he has not yet voted on, then ask him if he would like to
vote for them.  This way people would realize that the booths are there, but
they are not forced into them.  You may also specify "/A3" which acts the same
as "/A" but does not let users abort the voting (they can't hit ESC).


 Command-Line Parameters


 /A[1..4]  Invoke Auto-Vote (1=Vote for all new booths,
                                2=Prompt then vote,
                                3=Force users to vote on new booths,
                                4=Tell how many unvoted booths there are).
              If no number is specified, it defaults to "1".   
 /Bxxx     Specify locked baud rate (i.e. /B38400).
 /Fxxx     Load alternate .IDX & .ASR files than the default ones.  For
              example, specifying "/FMOVIES" would load & use MOVIES.IDX/ASR.
 /L        Local mode (logs in with the SysOp's name).
 /Nx       Specify node number (not really needed unless you want it to
              read DORINFO2.DEF for node 2 etc).
 /Pxxx     Specify path to drop file (i.e. /PC:\BBS).
 /Sxxx     Specify user's security level.  This overrides anything that
              is specified in the drop file.
 /V        Turn local video off.
 /W        A DOS only network is present.


 International Support


   New in v0.20, support has been added so that all strings can be modified
which allows the door to be translated into a different language altogether.
All of the internal strings can be modified from within CONFIG.EXE, but some
parts of the program allow more customisation by allowing you to design your
own ANSI screens.  The following files, if they exist, will replace the
internal displays.  Note that these files are not required in order for the
door to function properly.

  LOGO.ANS      This replaces the default "DCT-Vote" logo that is displayed
                in the main menu.
  LOCKOUT.ANS   This is shown if the user is locked out.
  NOANSI.ASC    If the user's terminal does not support ANSI, this file is
                displayed instead of the hard-coded message.
  INUSE.ANS     Message telling the user that someone else is using the door
                on a separate node and that he cannot enter the door at this
                time.
  MAINHELP.ANS  Replaces the help box that is shown when a user hits "?" in
                the main menu.
  VOTEHELP.ANS  Replaces the help box that is shown when a user hits "?" in
                the voting menu.

The following imbedded codes may be used in the language prompts.

  %U  User's name.
  %B  Title of the current booth being voted on.  On language prompts that
      would appear in places such as the main menu, this code is "undefined".
  %H  Number of booths user hasn't voted for yet.
  %A  Number of active booths.
  %S  Board name.
  %T  A temporary string that varies with each language prompt.
  %L  Name of the user's currently selected language.

   User logging is always done in the language that is configured as the
default one in CONFIG.EXE, even if a user selects a different language file.



                                                                          o3
                             
                                SysOp Hotkeys
                             

   SysOp hotkeys allow you to do a number of things while the user is in the
door.  Hotkeys supported in this release are as follows.

        F1     Shows the SysOp hotkeys on the status bar.
        AltC  Invokes the internal chat mode.
        AltT  Twits User.  Returns user back to the BBS.
        PgUp   Adds 5 minutes to the user's alloted time in the door.
        PgDn   Removes 5 minutes of the user's time in the door.



                                                                          o4
                       
                          Distribution & Disclaimer
                       

   DCT-Vote is copyright (C) 1996 by Dan Traczynski.  All Rights Reserved.  I
encourage you to distribute it, but DO NOT by any means alter any of the
files within the original archive.  The archive should be named DCTVD030.ZIP,
preferably kept in its ZIP format.

   The author, Daniel Traczynski, will take no responsibility to anything
that this program may or may not do to your system.  Although the program has
been tested thoroughly by the support team, no guarantee can be given that it
will do what it was made to do.  Nevertheless, if anything should happen, the
user is totally responsible and the author will be under no obligations what-
soever.  By using this program you agree to this disclaimer.



                                                                          o5
                      
                         Credits and Acknowlegments
                      

I'd like to thank the following people in my making of this program.

-Alan Ianson of Al's Place BBS (604)708-9219 for his support of my programs
 and for allowing users to FREQ all DCT Productions from his BBS.
-Francois Massonneau for his idea of adding language support and a few other
 miscellaneous options.  My gratitude goes out to him for writing the French
 language file, as well as putting DCT-Vote on his web page for people to
 download.
-Philip Wright for all of his great suggestions and bug reports.
-Javier Gil for writing the Spanish language file.
-Justin Bourne for testing DCT-Vote remotely for me and finding some of the
 bugs in the first eta.
-Steve Lorenz for DDPlus.
-Terry Mah for letting me test DCT-Vote on his system.



                                                                          o6
                        
                           Author's Notes/Support
                        

   DCT-Vote is very new and is still in its developmental stages, so some
features you may wish to see in a voting door may not be implemented yet.
Many of the features that I add to this door are requests made by SysOps, so
if you would like to see a new feature added to this door, by all means send
me e-mail and I will try to add in your request.  I can be reached at
dan.traczynski@als.dudd.uniserve.com.  If you do not have internet e-mail
access, I can also be contacted via the FidoNet RA_Util echo.  If you do not
receive a reply after 2-3 weeks, please re-send your message.  I have been
receiving a lot of mail recently and I probably just lost your message or
forgot to reply to it.

DCT-Vote can now be found on the Internet at:
                                  http://www.worldnet.net/~island/mirror.htm

Many thanks go to Francois Massonneau for putting this on his web page.



                                                                          o7
                            
                               Release Notes
                            

   The DCT-Vote project began on December 27, 1995.  The first public beta
release was on April 17, 1996.

  + Added a new feature/Something was improved.
  - Removed something.
  * General comment.
  > Bug fix.


 Version 0.30 -=- August 22, 1996.
   * French characters such as '', '', '', etc. are now displayed in the
     colour that is configured as lowercase rather than high-ASCII.
   > If you hit ESC when locking out a user, DCT-Vote would act as if you hit
     <Enter> and still add any string entered to the lockout file.  Fixed.
   > If the SysOp broke into chat on a spinning stick prompt, the screen
     would not redraw.  Fixed.
   * CONFIG.EXE has been rewritten, and now has a pull-down menu interface.
   + The booth editor has some new features.
   + Four more colours may now be configured.
   > Fixed a few display bugs when some language prompts were changed.
   + Added %L language code.
   * DCT-Vote no longer needs to be told what drop file to use.  It now simply
     searches for both DORINFOx.DEF and DOOR.SYS and loads the first one it
     finds or terminates if neither exist.
   + Users may now change their handles and select their own language files,
     but user logging is still done in the language specified as the default
     language.
   + If a user changes his alias, DCT-Vote can optionally change all comments
     by this user to his new alias.
   + Added an "author" field to each language file, so if anyone translates
     the file to another language, they can take credit for it.
   + Added /S, /F, and /A4 command-line parameters.
   + Users may now delete booths that they have created if the SysOp allows
     it.
   + Lightbars are now supported when selecting a booth.
   + The left and right brackets may now be configured.
   * After viewing the results of a booth, the user is taken back to the
     booth selection menu rather than the main menu.
   + Users may now be given vote points which allows them to spread their
     votes out over more than one answer.
   + Comments on booths may now be viewed and removed through CONFIG.EXE.
   + DCT-Vote may now be set to present only a certain number of new booths
     to the user during AutoVote.  This feature comes in useful if a new user
     logs in and has to vote for 30 new booths before being able to access the
     system.  Setting a value of '5' would then spread the booths out over
     multiple logins, with a maximum of five booths being presented each time.
   + Added the log file viewer to the configuration program.
   + The time and date format in the log file have been changed.


 Version 0.20 -=- June 16, 1996.
   > If a user was at the spinning stick prompt and the SysOp hit a function
     key or other SysOp hotkey, the stick would stop spinning.  Fixed.
   > If a user "Voted for all booths" and hit ESC to stop voting on them
     after voting on the first one, the "press any key" prompt would not be
     displayed right.  Fixed.
   > If a user was in auto-vote mode and answered "No" to the "Vote for next
     booth?" prompt, the "would you like to create your own booth?" string
     would not be displayed.  Fixed.
   + Added language support.
   + Added the external ANSI file support.
   > If censoring mode was enabled, it would not filter anything entered on
     the second line of the question in each booth.  Fixed.
   + DCT-Vote can now optionally prompt the user to confirm his voting
     selection.
   + If the drop file says that the user doesn't have ANSI turned on, DCT-Vote
     checks to make sure and lets him in if the user's terminal program
     supports ANSI.
   + The string input strings now allow cursor editing keys as well as support
     word wrap.
   + Added an INUSE.FLG file so there shouldn't be any more runtime errors on
     multi-node systems.
   + Added the internal SysOp-User full-screen chat mode (the screen doesn't
     always redraw after exiting chat though as I haven't completed this
     feature yet).
   + Users may now add more than one answer per booth if the SysOp allows it.
   + Added "/A2" and "/A3" parameters.
   * I changed the structures of the data files.
   + If the censor is enabled, any text is now filtered out as the user enters
     it rather than after he hits [Enter] on the string.
   + Users with SysOp access may now view the results of a booth before voting
     for it, however the unvoted booths are still dimmed out so as to show him
     which booths he hasn't voted for yet and which ones he did.
   + Added word wrap to the log file so the lines in the log should never go
     past the end of the screen any more.
   > Fixed a bug where DCT-Vote would return the locked baud rather than the
     caller's baud rate when DOOR.SYS was selected as the drop file.
   + Users may now add comments using aliases they have selected.  The
     structure to the comment file has also changed to accomodate this new
     feature.
   + The voting results screen is now displayed line by line rather than first
     the left column, then the answer box (it just looks better this way :).
   * Removed the date-check routine that many of you will soon be noticing in
     v0.11. =)
   + Added the booth editor.
   + You may now force users to vote for a booth (they can't hit ESC).  This
     is, of course, a SysOp-only feature (and can only be turned on in the
     booth editor :).
   + The spinning stick may now be configured.  This little feature really
     makes the door look different.  One interesting possibility is to make
     the string "۲" which gives a pulsing effect and does away with the
     stick completely.
   + Improved the colour configuration menu.
   + Made a slight change to the DCT-Vote logo in the main menu.


 Version 0.11 -=- April 17, 1996.
   * This version is mainly just a bug fix from v0.10 and also contains a few
     new things that I forgot to add in the previous version or never got
     around to adding.
   > Aaarrgh!  The day it's released and already I find a bug!  The user
     time-out wouldn't activate if a user was at one of those spinning stick
     prompts; the stick would just spin endlessly until he hit a key or ran
     out of time. :(  Well it's fixed now.
   * If no booths exist (ie. a new copy was just installed), DCT-Vote now
     creates a default booth.  I just felt like doing this. :)
   > Fixed a bug in the voting results screen where the title would sometimes
     not be displayed properly.
   + DCT-Vote now shows the user which answer he voted for when displaying the
     voting results.
   + DCT-Vote now shows the user when the booth was created in the voting
     results.
   > If the SysOp had the Auto-Vote feature in use and a user whose terminal
     didn't support ANSI entered, DCT-Vote would display to them the message
     telling them they didn't have ANSI.  It now simply exits without
     bothering the user about it every time s/he logs in.
   + DCT-Vote will now allow users to create a new voting booth when they
     login using the auto-vote feature.
   > Fixed a bug in the string entry prompts.
   > If the user left a comment on a booth whose question was two lines, the
     "Press any key to continue" prompt would be displayed on the bottom
     border line and mess up the display.  Fixed.
   + Users can't just hit [Enter] on the first answer in auto-vote any more
     (it forces them to think about which answer to choose now >;).
   * It takes less time to save the voting results now.
   + Added colour configuration.
   > Fixed a bug where DCT-Vote would sometimes crash if you tried deleting a
     booth and comments had been written on it.
   > Booths being deleted during maintenance were destroying the data files,
     making the whole voting door have to be reset.  This has thankfully been
     fixed. :)
   + Added an error handler.  If a runtime error occurs, it will be logged in
     the log file.
   > If a user left a comment that was 5 lines long, DCT-Vote would not save
     the last line.  Fixed.


 Version 0.10 -=- February 17, 1996.
   * Well there have been MANY changes in this version from the previous
     one, though many of them won't even be seen by the users.  Setup and
     installation for the SysOp should be much easier now.
   > If a booth was deleted and the comment file was empty, the program would
     terminate with a runtime error.  Fixed.
   + If there are booths which the user hasn't voted for yet, DCT-Vote now
     tells them that in the main menu.
   + Added the user time-out.  If the user doesn't press anything for 120
     seconds, s/he is returned to the BBS.
   + Added the auto-vote feature.
   + The docs look a *LOT* better now. :)
   > Oooh.  Bad bug.  On one BBS, when you hit a cursor key on the remote end,
     DCT-Vote would act as if the user hit [ESC] because it didn't wait long
     enough to see if more characters had been sent.  (When the user hits a
     cursor key, the terminal program sends ASCII character #27 followed by
     "[A" or whatever the code is, and DCT-Vote didn't wait long enough for
     the "[A" part.)
   > Fixed a bug where if you hit backspace when selecting a booth, it
     wouldn't write the "" character remotely like it should have.
   + You may now hit the first letter of the option in the sysop menu as well
     as the number.  I did this to the main menu a few versions back but
     somehow missed doing it in the SysOp menu.
   + Finally!  I made a configuration program, so you won't have to worry
     about the messy text configuration file any more.  Not all of the
     features within it have been implemented yet.
   + Users may now post booths anonymously if the SysOp allows it.  Please
     keep in mind that if you have SysOp access, DCT-Vote will show you who
     created the booth when voting, but to regular users it simply says
     "Posted By: Anonymous".
   * I made a little change to the voting results screen regarding the
     percentage bar.
   + Fixed up the string entry prompts a bit.
   + Made a few subtle changes to the Yes/No prompt.
   + Improved the program info screen.


 Version 0.06 -=- January 25, 1996.
   * After releasing v.05 to be eta tested, I found a few bugs.  This version
     has all of the bug fixes.
   > OOPPS!!  There was a little bug where DCT-Vote wouldn't let users move
     the lightbar onto the "create new booth" if they didn't have sysop
     access.  They could still create booths by hitting "3" though.
   > If you had the status bar turned off and hit F1 to display the help, it
     would go back on.  Fixed.
   > If the user's name was only one word, DCT-Vote would add a trailing space
     character to it.  Fixed.


 Version 0.05 -=- January 23, 1996.
   * This version has some nice new features, and a few bug fixes as well.  I
     still have to add file-locking though, and eventually when I get around
     to it, I'll rearrange the file structure so that DCT-Vote can support an
     unlimited amount of booths and answers per booth.
   > Fixed the spinning stick in the "Press any key" prompts.  It worked fine
     locally, but remotely it screwed up with some terminal programs.
   + Added the "user comments".
   + Added the "@" random filter character macro.
   + Added a minimum security level to create a booth.
   + You may now hit the first letter of the option in the main menu as well
     as the number.
   + If the user enters an invalid booth number, it now informs him of that
     instead of returning to the main menu.
   > If a user whose terminal program doesn't support ANSI enters the door, it
     will now display a message to him informing him that he must have ANSI.


 Version 0.01 -=- January 7, 1996.
   * Initial creation of DCT-Vote.



