
                        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.LogDL.rexx


INSTALLATION:


  File Locations:

    STR.LogDL.rexx ---> Doors:STR.Utils/

  Install in BBS:

    To install STR.LogDL.rexx, put this line as the last line in your
    BBS:TEXT/ENGLISH/TEXT.LOGOUT file:

\$0Run Rx Doors:STR.Utils/STR.LogDL.rexx\

    Optionally, you can make the following changes to your EX.BBSMenus file.
    In the Global Commands section, change the command for item 561 to
    something other than LD (I used DLLOG.)  Next delete the SECOND line of
    command 524.  Now, add the following two lines at the end of the Global
    Commands section:

569,  LD,  1,  "32",  "\*0BBS:TEXT/Logs/Downloads.bak\"
570,  LC,  1,  "32",  "\*0BBS:TEXT/Logs/Callers.bak\"


REQUIREMENTS:


  Any Amiga ;)

    The faster the better! =)

  OS 2.04+

    The AmigaDOS SORT command should be in C: or available in your PATH.
    The AmigaDOS JOIN command should be in C: or available in your PATH.
    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:


    If either the Callers.bak or Downloads.bak files does not exist, then
    JOIN will fail.  This does not affect the overall operation of the 
    program.

    If a user drops carrier, or logs off in such a manner that the LOGOUT
    file is not seen, this program won't get executed.


CONFIGURATION:


  STR.LogDL.rexx

    datapath    - Set this to the path where STR.LogDL.rexx can store its data.

    FBASE       - 1 = Search this area for downloaded files.  If you keep
    MBASE             files in your MBASE, set this variable to 1 to search
                      in that part of the BBS.
                  0 = Do not search this part of the BBS for files.

    maxtopnum   - Maximum number of items in the list.

    keepminimum - Only keep files downloaded this many times or more.

    deletedls   - 1 = BBS:TEXT/Logs/Downloads will be deleted  
                      after each run of this program.          
                  0 = The file will be concatenated to the end 
                      of BBS:TEXT/Logs/Downloads.bak in reverse
                      order.  Newest first, oldest last.       

    revcallers  - 1 = BBS:TEXT/Logs/Callers will be concatenated
                      to BBS:TEXT/Logs/Callers.bak in reverse
                      order.  Newest first, oldest last.
                  0 = BBS:TEXT/Logs/Callers will not be touched.

    badareas    - Text in this variable is compared against the
                  area the file was upload or downloaded from.
                  If there is a match, the file is not put on
                  the list.  This can exclude things like files
                  from Adult areas, Personal areas, or even
                  Warez areas.

    badfiles    - Text in this variable is compared against the
                  the file that was upload or downloaded.      
                  If there is a match, the file is not put on  
                  the list.  This can exclude things like QWK  
                  uploads and downloads.                       


PURPOSE & FEATURES:

  STR.LogDL.rexx

    The first thing you should do is create the master data file.  To do
    this call STR.LogDL.rexx from a shell with the argument RESCAN.  This
    scans through all your FBASE and or MBASE areas looking for files that
    have been downloaded more than keepminimum times.  Because this process
    goes directly to E!'s binary files, this is only guaranteed to work with
    v1.21 of the BBS.  Specifically, it uses BBS:DATA/FBASE.dat, MBASE.dat,
    and the _itemdata file in each directory of BBS:FBASE and/or MBASE.

    You only need to call the RESCAN process once.  However, if the data
    file, STR.LogDL.data, gets really large because it has a bunch of files
    with downloads counts less than keepminimum, then you can call the RESCAN
    process again to clean up the master data file.

    This program makes a top 10 list of the most popular files on your
    system.  It works by counting the number of times a file shows up
    in the BBS:TEXT/Logs/Downloads file.  Due to the operation of this
    program the Downloads file must be deleted after each program run.
    An option is provided to save the list in a .bak file.  One nice
    feature of this is that the .bak file is in newest first format.
    You don't have to view the whole file just to see the last few
    downloads.

    This program also shows the newest files uploaded to the system.
    This works by simply reading in the file BBS:TEXT/Logs/Uploads and
    grabbing the end of the file for use in the list chart.

    Because some BBS's have adult areas, or other areas that are restricted
    in access, this program allows sysops to screen both the area the file
    was up/downloaded from and the file name.  Any matches are excluded from
    the list.

    Another feature is that this program allows you to reverse the Callers
    log sequence so that it is in newest first format.


HISTORY:

  Version 1.0:

    First public release.
