TFL.DOC

9.2 KB 6b70028c54b0a76b…
                TFL v1.3
                (c) 1994 Aphelion Software
                By Daniel Mecklenburg

Here's yet another File List generator for TAG BBS. Only thing I can 
promise is that is will work with version 2.7 standard!

To use, call TFG with one parameter, the name of the config file. 
Example:  TFG TFG.CFG

The config file contains information on how the list(s) are to be created
These key words are:

    FBOARDS = <path and name of the FBOARDS.DAT file>
        This keyword defines the location of the FBOARDS.DAT file. It
        is required and must appear before any LIST keyword. Only one
        is allowed per config file. This keyword is global only.

    MFILEPATH = <path to the multi file directory\>
        This keyword defines the location of the MULTI directory. It
        is only required if *.DIR contain a "`" before them to specify
        that the .DIR file is located in the MULTI directory. Only one
        is allowed per config file. This keyword is global only.

    DFILEPATH = <path to the DFILES directory\>
        This keyword defines the location of the DFILES directory. It
        is only required if *.DIR contains a "@" before them to specify
        that the .DIR file is located in the DFILES directory. Only one
        is allowed per config file. This keyword is global only.

    LISTHEADER = "<string>"
        These keywords (up to 32) describe the file list header. The
        <string> information can contain variables but it is not 
        recommended for the listheader as no information has been obtained
        for the files as of yet. You may get unknown information if you
        do.  See STRINGS for information on variables. This command can
        either be global (applies to all lists) or local (applied to only
        this list).

    LISTFOOTER = "<string>"
        These keywords (up to 32) describe the file list footer. The
        <string> information can contain variables.  See STRINGS for 
        information on variables. This command can either be global 
        (applies to all lists) or local (applied to only this list).

    AREAHEADER = "<string>"
        Examples: AREAHEADER = "Area Name: %A"
                  AREAHEADER = "Filename      Description"
        These keywords (up to 32) describe the area list header. The
        <string> information can contain variables.  See STRINGS for 
        information on variables. This command can either be global 
        (applies to all lists) or local (applied to only this list).

    AREAFOOTER = "<string>"
        Example: AREAFOOTER = "Total file(s): %K"
        These keywords (up to 32) describe the area list footer. The
        <string> information can contain variables.  See STRINGS for 
        information on variables. This command can either be global 
        (applies to all lists) or local (applied to only this list).

    FORMAT = "<string>"
        Example: FORMAT = "%F %I"
        These keywords (up to 32) describe the file descriptor. The
        <string> information can contain variables.  See STRINGS for 
        information on variables. This command can either be global 
        (applies to all lists) or local (applied to only this list).

    LIST = <path and name of this list file>
    ENDLIST
        Example: LIST = C:\LISTS\ALLFILES.TXT
        These two keywords define a list file and what is to be contained
        in it. Any commands falling inbetween a LIST and ENDLIST are
        local keywords. Any commands falling outside are global. LISTs
        can not be imbedded and at least one must be in the config file.
        If no AREAHEADER's, AREAFOOTER's, or FORMAT's are described inside
        a list block, global definitions are used.

    DSL = <list of DSL's>
        Example: DSL = 10-30,50
        This keyword defines the DSL's that will appear in the file list.
        The list of DSL's must be in the format of # or #,#,... or #-#,...
        whereas # is a security level. This is a local only keyword and is
        optional. If it is left off, *all* DSL's will be included in this
        list.

    AR = <list of AR flags>
        Example: AR = @-M,X
        This keyword defines the AR flags that will appear in the file list.
        The list of AR flags must be in the format of # or #,#,... or #-#,...
        whereas # is an AR flag. This is a local only keyword and is
        optional. If it is left off, *all* AR flags will be included in this
        list.

    BOARDS = <list of board numbers>
        Example: BOARDS = 0,20-51,53-55,75
        This keyword defines the boards that will appear in the file
        list. This list of boards must be in the format of # or #,#,... or
        #-#,... whereas # is a board number. This is a local only keyword
        and is optional. If it is left off, *all* boards will be included
        in this list.

    UNVALIDATED
    CDROM
    OFFLINE
        If any of these three local only commands appear in a LIST block,
        either unvalidated files, files from CD-ROM's, and/or offline files 
        will be included in the list.

    FIXSIZE
        This keyword will tell TFL to correct any error with file sizes
        or to mark files not found as offline. This only works with
        Non-CD-Rom areas.

    FIXDATE
        This keyword will tell TFL to correct the upload file date to
        match that on the file itself. This only works with Non-CD-Rom 
        areas.

    DOWNLOADS = <minimum number of times downloaded>
    ULAGE = <age of file from ul date in days>
    FILEAGE = <age of file from date/time stamp in days>
        These additional local only commands are used to further filter
        out files from the list. These can be used to create lists of
        popular or new file lists.

    Notes: In order for a file to appear in the list, all criteria must
        be meet. The board number, DSL, AR, unvalidated and/or CDRom
        specifiers are all tested and if the file passes, it is written
        to the list.

    STRINGS: Strings used in LISTHEADER's, LISTFOOTER's, AREAHEADER's,
        AREAFOOTER's, and FORMAT's all use strings enclosed in double
        quotes. No double quotes can appear in the string whatsoever.
        Variables may appear in the strings. These appear as a % followed
        by a letter.  These are replaced with information prior to
        writting data to the list file. Variable are:

           VAR. DESCRIPTION             SIZE
           ---- ----------------------- ---------
            %A  area name               26 characters
            %B  file blocks              5 characters
            %C  date of upload           8 characters (mm/dd/yy)
            %D  date on file             8 characters (mm/dd/yy)
            %E  file extenion only       3 characters
            %F  full file name          12 characters- packed
            %G  file name only           8 characters
            %H  file description        must be the last field, no word wrap
            %I  file description        must be the last field, word wrapped
            %J  name of uploader        36 characters
            %K  number of files in area  4 characters
            %L  path here files live    60 characters
            %M  area size                7 characters ( "##,###k")
            %N  area size               10 characters ( "##,###,###")
            %O  file size                7 characters ( "##,###k",
                                                        "OFFLINE",
                                                        "UNVAL'D")
            %P  file size               10 characters ( "####,###,###",
                                                        "   OFFLINE",
                                                        "UNVALIDT'D")
            %Q  time of file             5 characters (hh:mm)
            %R  times downloaded         5 characters (#####)
            %S  number of areas in list  5 characters
            %T  Area number              5 characters

        ANSI, TAG color codes, and/or RIP sequences can appear in the
        strings as well with no difficulty with the exception of the %I 
        variable. Due to the special codes, the position where the line
        is broke and continues for word wrap will be miss places. Use
        as your own risk! To be safe, DO NOT put special color/control
        characters in strings containg the %I varaible!

    CD-ROM files are not check for actual file size and time stamps.
        It the time is required for CD-ROM files, a ??:?? is used.

    If you find this program useful, send yourself $10.

    Corrections from 1.1 and 1.2: Have correct source code in archive now;
        Upped the number of description lines to 32; fixed the missing
        FILES.DIR problem as reported by Scott Waschitz.

    Suggestion for use: Call from a batch file if running multinode. Copy
        the FBOARDS.DAT file to something else and edit the FBOARDS command
        in the config to use this file instead. This will protect the
        original as I've had problems where the FBOARDS.DAT file was
        being munched when another user was online during maintenance!