home *** CD-ROM | disk | FTP | other *** search
/ Carsten's PPE Collection / Carstens_PPE_Collection_2007.zip / S / SUB110.ZIP / SUB.DOC < prev    next >
Text File  |  1993-10-05  |  28KB  |  682 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.         ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  16.  
  17.  
  18.                              The Subscriber v1.1
  19.  
  20.                Copyright (c) 1993, SUN Serveur - Olivier Junod
  21.                              All rights reserved
  22.                  
  23.         ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■        
  24.  
  25.          A PPE for PCBoard v15.0 to allow a user to register online
  26.                             with a credit card.
  27.  
  28.         ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■        
  29.  
  30.                                     -2-
  31.  
  32.  
  33.      1. Table of contents
  34.      ════════════════════
  35.  
  36.  
  37.  
  38.      Introduction  ........................................        3
  39.  
  40.      Features  ............................................        3
  41.  
  42.      Files list  ..........................................        4
  43.  
  44.      Installation  ........................................        5
  45.  
  46.      Setup  ...............................................        6
  47.  
  48.      Screens  .............................................        9
  49.  
  50.      @ Macros  ............................................        12
  51.  
  52.      Disclaimer and legal matters  ........................        14
  53.  
  54.      Aknowledgement  ......................................        14
  55.  
  56.      Contact  .............................................        15
  57.  
  58.                                     -3-
  59.  
  60.  
  61.      2. Introduction
  62.      ═══════════════
  63.  
  64.      'The Subscriber' is a PPE program wich allow a user to register
  65.      online with a credit card.
  66.      Like many european Sysops, I'm always looking for programs and doors
  67.      which offer the multilingual capabilities of PCBoard. I haven't found
  68.      a Subscription door wich respond to my requirements. So I decided to
  69.      write it using the PCBoard Programming Language (PPL).
  70.  
  71.      I apologize for the bad english used to write this document. I'm a
  72.      swiss sysop and my mothertongue is french ... I've done my best.
  73.  
  74.      'The Subscriber' is not free. It is distributed as a SHAREWARE.     
  75.      If after a trial periode (30 days) you decided to keep it, I please
  76.      you to fill the registration form even if 'The Subscriber' is NOT
  77.      CRIPPLED and fully functional.
  78.  
  79.      ┌──────────────────────────────────────────────────────────────────┐
  80.      │ The price for this shareware is fixed to Swiss Francs 35.-, wich │
  81.      │ correspond approximatively to US$ 20.00                          │
  82.      └──────────────────────────────────────────────────────────────────┘
  83.  
  84.      Please use REGISTER.FRM to register this application.
  85.  
  86.  
  87.      3. Features
  88.      ═══════════
  89.  
  90.      - PSA(3) Address management is used to fill up the address data.
  91.        (If installed).
  92.      - Accept VISA, MASTERCARD, AMERICAN EXPRESS, OPTIMA, CARTE BLANCHE,
  93.               DISCOVER and DINERS CLUB.
  94.      - Instantly verifies card type.
  95.      - Userfriendly interface for the USER.
  96.      - The USER is instantly (or not) upgraded to his new access level 
  97.        (sysop configurable)
  98.      - Support up to 12 different subscription levels .
  99.      - Support ASCII, ANSI and RIPscript protocols. (Examples of both
  100.        ANSI and RIP are enclosed).
  101.      - Support the multilingual capabilities of PCBoard (French and english
  102.        text files and screens are enclosed).
  103.      - Fully configurable (specifics @ macros). All the different screens
  104.        may be re-designed. 
  105.      - Prompts (text files) may be changed.
  106.      - Calculate handling (Fixed amount or Rate).
  107.      - Calculate Tax (Fixed amount or Rate), always or only for State 
  108.        residents.
  109.      - Display a Receipt to the User (optional).
  110.      - Write a COMMENT to the sysop (optional).
  111.      - Generate an Invoice.
  112.      - User can download his invoice (sysop configurable).
  113.      - Invoice, Receipt and Message may have their own design.
  114.      - Implemented as a PCBoard Command (and as a DOOR if you wish).
  115.  
  116.                                     -4-
  117.      
  118.      4. Files List
  119.      ═════════════
  120.  
  121.      SUB.PPE            Main program
  122.      SUBSETUP.EXE       Setup program (Create/update of SUB.CNF)
  123.      MKSUBTXT.EXE       Maintenance program for text files
  124.      ADISCTRL           Screen control for SUBSETUP and MKSUBTXT
  125.      SUB.DOC            This documentation
  126.      SUB.               Sample of DOOR batch file
  127.      SUB.KBD            Sample of Keyboard stuffer (for DOOR implementation)
  128.      SUB.CNF            Sample of configuration file
  129.      INVOICE.TXT        Sample of INVOICE layout
  130.      MESSAGE.TXT        Sample of MESSAGE to SysOp layout
  131.      RECEIPT.TXT        Sample of RECEIPT layout
  132.      FRENCH.ZIP         Sample of french screens and TEXT file
  133.      ENGLISH.ZIP        Sample of english screens and TEXT file
  134.      REGISTER.FRM       Registration Form
  135.  
  136.      Each embeded ZIP file contains :
  137.  
  138.      SUBTEXT.ext        The text (prompt) file
  139.      SUB_END.ext        ┐
  140.      SUB_LEV.ext        │
  141.      SUB_LST.ext        │
  142.      SUB_MEN.ext        │
  143.      SUB_SYS.ext        ├  Samples of ANSI screens
  144.      SUB_S1.ext         │
  145.      SUB_S2.ext         │
  146.      SUB_S3.ext         │
  147.      SUB_S4.ext         │
  148.      SUB_WRN.ext        ┘
  149.      SUB_ENDR.ext       ┐
  150.      SUB_LEVR.ext       │
  151.      SUB_LSTR.ext       │
  152.      SUB_MENR.ext       │
  153.      SUB_SYSR.ext       ├  Samples of RIP screens
  154.      SUB_S1R.ext        │
  155.      SUB_S2R.ext        │
  156.      SUB_S3R.ext        │
  157.      SUB_S4R.ext        │
  158.      SUB_WRNR.ext       ┘
  159.  
  160.      File automatically created :
  161.      ────────────────────────────
  162.      SUB.CNT            This file is created the first time a user has
  163.                         completed is registration. It contains the number
  164.                         of the last INVOICE and is part of the invoice
  165.                         filename.  The file can be edited; it contains only
  166.                         one record with a number (1 => 99999999).
  167.  
  168.      Temporary files :
  169.      ─────────────────
  170.      SUB_TMP.ext        Where 'ext' is the node number. This file is created
  171.                         and deleted each time it is necessary.
  172.  
  173.                                     -5-
  174.  
  175.  
  176.      5. Installation
  177.      ═══════════════
  178.  
  179.      -    Create a (sub)directory 
  180.      -    UNZIP the content of the archive file in this new directory.
  181.      -    UNZIP either (or both) languages archives (ENGLISH.ZIP contains
  182.           files with .ENG extension, FRENCH.ZIP contains files with .FRE 
  183.           extension ).
  184.      -    Rename the .ENG and .FRE files accordingly to your languages
  185.           extensions.
  186.      -    Load PCBSETUP and go to (B) Files locations then (B) Configuration
  187.           files
  188.      -    Edit the CMD.LST file (highlight the line and press F2).
  189.      -    Add a new command name (i.e. SUB), the security level, and the
  190.           full pathname and name of the PPE program 
  191.           (i.e. C:\PCB\PPE\SUB\SUB.PPE).
  192.      -    Edit the configuration files
  193.  
  194.      If you wish to install the PPE Program as a DOOR :
  195.  
  196.      -    Edit the file SUB.KBD so that it contains only ONE line with
  197.           the name of the command you have given.
  198.      -    Modify the file SUB. (no extension) so that it copies the
  199.           content of SUB.KBD to the file PCBSTUFF.KBD
  200.      -    Modify the entries in your DOORS.LST for running a SHELLED DOOR
  201.           pointing to the file SUB (You can rename it).
  202.  
  203.                                     -6-
  204.  
  205.  
  206.      6. Setup
  207.      ════════
  208.  
  209.      Main configuration file (SUB.CNF) :
  210.      ───────────────────────────────────
  211.  
  212.          Before starting with the program you have to edit the configuration
  213.          file (SUB.CNF). The best way to configure this application is to
  214.          run SUBSETUP, but you can edit the file with your favorite text 
  215.          editor :
  216.  
  217.          Line 1 :  0 or 1    (1 if you accept AMERICAN EXPRESS).
  218.          Line 2 :  0 or 1    (1 if you accept CARTE BLANCHE).
  219.          Line 3 :  0 or 1    (1 if you accept DINERS CLUB)  .
  220.          Line 4 :  0 or 1    (1 if you accept DISCOVERY).
  221.          Line 5 :  0 or 1    (1 if you accept MASTERCARD).
  222.          Line 6 :  0 or 1    (1 if you accept OPTIMA).
  223.          Line 7 :  0 or 1    (1 if you accept VISA).
  224.          Line 8 :  0 or 1    (1 if you want to automatically upgrade the
  225.                               user to his new level; 0 if user level must
  226.                               remain at his actual level
  227.          Line 9 :  Filename of the INVOICE layout.
  228.          Line 10:  0 or 1    (1 if you want to display a receipt to the
  229.                               user).
  230.          Line 11:  Filename of the RECEIPT layout.
  231.          Line 12:  0 or 1    (1 if you want the program to create a
  232.                               comment to the sysop each time a user
  233.                               has subscribed).
  234.          Line 13:  Filename of the MESSAGE layout (comment to sysop).
  235.          Line 14:  0 or 1    (1 if you want to log entries into the
  236.                               CALLER Logfile.
  237.          Line 15:  Money code to be used when formatting amounts (US$, FRS).
  238.          Line 16:  Base rate for handling calculation (from 0.00 to 100.00).
  239.          Line 17:  Base amount for handling calculation (from 0.00 to
  240.                    999999.99).
  241.          Line 18:  Base rate for tax calculation (from 0.00 to 100.00).
  242.          Line 19:  Base amount for tax calculation (from 0.00 to 999999.99).
  243.          Line 20:  State (county) of reference. This should reflect your
  244.                    BBS location.
  245.          Line 21:  Tax calculation mode (Valid values are (N) = never 
  246.                    calculate tax, (A) = always calculate tax, (S) =
  247.                    calculate only if Users's State is equal to Reference
  248.                    State).
  249.          Line 22:  Number of decimal position in amounts (Valid values are
  250.                    0 or 2 (0 is typically used with italian lire, japanese
  251.                    yen, belgian francs, etc.).
  252.          Line 23:  Round off mode. (Valid values are 1 = No round off,
  253.                    2 = Round off to the next 0.05, 3 = round off to the
  254.                    unit.
  255.          Line 24   0 or 1    (1 if you allow the user to download his
  256.                              invoice)
  257.          Line 25   Pathname to store the invoice to be downloaded. This
  258.                    path MUST be declared in your PCBoard DLPATH
  259.          Line 26 to 37:      The subscription levels wich are formatted
  260.                              as following :
  261.  
  262.                                     -7-
  263.  
  264.  
  265.          Subscription level :
  266.          ────────────────────
  267.  
  268.              Each line contains 4 fields wich are separated by 
  269.              a semicolon:
  270.  
  271.              -  The access level to be given.
  272.              -  Length of subscription (days).
  273.              -  The description (maximum 45 caracters).
  274.              -  The price (maximum 6 unit digits + 2 decimal digits
  275.                 separated with a dot (.).
  276.  
  277.              Example :  30;365;2 Mbytes/day 100 minutes/day;12.34
  278.                         |   |               |                 |
  279.                         |   |               |                 Price
  280.                         |   |               Description
  281.                         |   Length in days
  282.                         Access level
  283.  
  284.              WARNING ! Do not use semicolons in your description !
  285.  
  286.  
  287.          Note regarding the invoice download :
  288.          ─────────────────────────────────────
  289.  
  290.          If you allow the user to download his invoice, you must provide
  291.          a directory to temporarly store the invoice. This directory MUST
  292.          be declared in the PCBoard DLPATH. Do not provide the directory
  293.          where the PPE is installed !!! In this case your users may have
  294.          the availability to download all your invoices...
  295.  
  296.          If a user ask to download the invoice, this file is copied to
  297.          the temporary directory you have provided with the name :
  298.  
  299.          INVOICE.ext     where ext is the node number.
  300.  
  301.          When the user has exited the PPE, this file is flagged for the
  302.          download.
  303.  
  304.          When the user quit your BBS, the file will remain in the directory
  305.          (and stay available for download to other users). To avoid this
  306.          situation, you should insert a DEL command in your $$LOGOFF.BAT
  307.          to erase this file.
  308.  
  309.                                     -8-
  310.  
  311.  
  312.      The prompts files :
  313.      ───────────────────
  314.  
  315.          For each language you can edit the text file wich contains
  316.          all the different prompts used in 'The Subscriber' or use
  317.          MKSUBTXT to maintain/create it.
  318.  
  319.          WARNING !  The first letter of the first line will fix the
  320.                     command caracter used to ABORT the program.
  321.  
  322.                     Examples : A=Abort ==> 'A' will abort the program
  323.                                E=End   ==> 'E' will abort the program
  324.                              
  325.          The text files are always named SUBTEXT.ext where 'ext' is the
  326.          language extention as defined in your PCBoard setup (PCBML.DAT).
  327.  
  328.      The Layouts :
  329.      ─────────────
  330.  
  331.          Three files will work as layout and will be processed
  332.          before beeing displayed to the user or written to disk :
  333.  
  334.          The Invoice layout (mandatory) : 
  335.  
  336.              This text file should contains the design of your invoice;
  337.              it may include internal @ macros to insert the variable
  338.              fields (name, date, etc...).
  339.              Internal @ macros will be discussed later in this document.
  340.  
  341.              The invoice will be saved on disk when the user has confirmed
  342.              his purchase. The final invoice filename will be n.INV
  343.              where n is a sequence number between 1 and 99999999.
  344.  
  345.          The Receipt layout (optional) :
  346.  
  347.              You can display a text file to the user when is has completed
  348.              his registration.
  349.              This file contains the design of your receipt and may include
  350.              internal @ macros (this will be discussed later on this doc).
  351.  
  352.          The Message layout (optional) :
  353.  
  354.              You can ask 'The subscriber' to insert a comment to the sysop
  355.              each time a user has completed his registration.
  356.              This file contains the design of your message and may include
  357.              internal @ marcos (this will be discussed later in this doc).
  358.  
  359.                                     -9-
  360.  
  361.  
  362.      7. The different screens (panels) 
  363.      ═════════════════════════════════
  364.  
  365.      The welcome screen :
  366.      ────────────────────
  367.  
  368.         It is the first panel wich is displayed to the user. 
  369.         It is encrypted in the program and may not be modified.
  370.  
  371.      ALL THE FOLLOWING SCREENS MAY BE DESIGNED AS YOU WISH SO THAT
  372.      THE LOOK AND FEEL OF YOUR BBS WILL BE RESPECTED. @ MACROS SHOULD
  373.      BE USED TO DISPLAY VARIABLE FIELDS TO THE USER. THE NAMING
  374.      CONVENTION OF PCBOARD IS APPLIED FOR GRAPHIC TYPE (ASCII,ANSI and
  375.      RIPscript) AND LANGUAGE (No level specific files).
  376.      PLEASE NOTICE THAT ANSI SCREEN MUST NEVER BE OVER 21 LINES LENGTH
  377.      (2 lines are used for prompts).
  378.      
  379.      The warning screen (optional) :
  380.      ───────────────────────────────
  381.  
  382.         Can be used to warn the user that the use of credit card must
  383.         follows some legal rules.
  384.  
  385.         Name :   SUB_WRN
  386.  
  387.      The Main Menu screen (mandatory) :
  388.      ──────────────────────────────────
  389.  
  390.         Name          :   SUB_MEN
  391.  
  392.         Prompt after  
  393.         display       :   Line 23 of SUBTEXT
  394.  
  395.         Valid entries :   1  =>  Display the list of available subscription
  396.                           2  =>  Begin the registration process
  397.                           3  =>  Quit to BBS
  398.                           4  =>  Logoff
  399.  
  400.      List of available subscriptions (mandatory) :
  401.      ─────────────────────────────────────────────
  402.  
  403.         Name          :   SUB_LST
  404.  
  405.         Prompt after  
  406.         display       :   None (wait for Enter)
  407.  
  408.                                     -10-
  409.  
  410.  
  411.      The First Data screen (mandatory) :
  412.      ───────────────────────────────────
  413.  
  414.         This panel is displayed before to ask the user to enter his
  415.         credit card number and the expiration date.
  416.  
  417.         Name          :   SUB_S1 
  418.  
  419.         Prompt after  
  420.         display       :   Line 18 of SUBTEXT
  421.                           Line 19 of SUBTEXT
  422.  
  423.         Valid entries :   A valid card number, a valid expiration date 
  424.                           or the Abort caracter
  425.  
  426.      The Second Data screen (mandatory) :
  427.      ────────────────────────────────────
  428.  
  429.         This panel is displayed before to ask the user if administratives
  430.         data are correct.
  431.         
  432.         Name          :   SUB_S2
  433.  
  434.         Prompt after  
  435.         display       :   Line 16 + 17 of SUBTEXT
  436.                           
  437.         Valid entries :   1, 2, 3, 4, 5, 6, 7, 8, 9, (Y)es caracter 
  438.                           (depending on the language) or the Abort caracter.
  439.  
  440.      The Third Data screen (mandatory) :
  441.      ───────────────────────────────────
  442.  
  443.         This panel is displayed with the list of available subscriptions and
  444.         the user will be asked to choose one.
  445.         
  446.         Name          :   SUB_S3
  447.  
  448.         Prompt after  
  449.         display       :   Line 20 of SUBTEXT
  450.                           
  451.         Valid entries :   1 to 12 (depending the number of available
  452.                           subscription) or the Abort caracter.
  453.  
  454.      The Forth Data screen (mandatory) :
  455.      ───────────────────────────────────
  456.  
  457.         This panel is the confirmation of the choose made by the user.
  458.         
  459.         Name          :   SUB_S4
  460.  
  461.         Prompt after  
  462.         display       :   Line 21 of SUBTEXT
  463.                           
  464.         Valid entries :   (Y)es and (N)o caracter (depending on the language) 
  465.                           or the Abort caracter.
  466.                           
  467.                                     -11-
  468.  
  469.  
  470.      The End screen (mandatory) :
  471.      ────────────────────────────
  472.  
  473.         This panel is displayed after the user has completed his          
  474.         registration. May be used to indicate that the new subscription
  475.         is now active.
  476.         
  477.         Name          :   SUB_END
  478.  
  479.         Prompt after  
  480.         display       :   None (wait for Enter)  
  481.  
  482.      The Level screen (mandatory) :
  483.      ──────────────────────────────
  484.  
  485.         This panel is displayed only if the user choose a subscription with
  486.         a level wich is lower than is actual level. The user may accept the
  487.         immediate downgrade, refuse it or abort the procedure.
  488.         
  489.         Name          :   SUB_LEV
  490.  
  491.         Prompt after  
  492.         display       :   Line 22 of SUBTEXT
  493.                           
  494.         Valid entries :   (Y)es and (N)o caracter (depending on the language) 
  495.                           or the Abort caracter.
  496.  
  497.      The SysOp screen (mandatory) :
  498.      ──────────────────────────────
  499.  
  500.         This panel is displayed if the user is the sysop or has the sysop
  501.         level. No information will be saved, no receipt displayed and no
  502.         comment to the sysop will be written.
  503.         Name          :   SUB_SYS
  504.  
  505.         Prompt after  
  506.         display       :   None
  507.  
  508.                                     -12-
  509.  
  510.  
  511.      8. @ Macros
  512.      ═══════════
  513.  
  514.      Some internal macros has been defined to allow the display of variable
  515.      fields or the creation of the invoice file.
  516.      The @ macros are always defined with a fixed length. Be careful when
  517.      creating your screens !
  518.      
  519.      Macro name   Length  Description
  520.      ------------------------------------------------------------------------
  521.      @ACCEPTED1@    47    First line with the names of the credit card types
  522.                           accepted on the BBS
  523.      @ACCEPTED2@    47    Second line with the names of the credit card types
  524.                           accepted on the BBS
  525.      @ADR1@         49    Card Holder's address 1st line
  526.      @ADR2@         49    Card Holder's address 2nd line
  527.      @BPHONE@       13    Card Holder's business phone
  528.      @CARDEXP@       5    Credit Card expiration date
  529.      @CARDHOLDER@   25    Name of the Card Holder         
  530.      @CARDNB@       19    Credit Card number
  531.      @CARDTYPE@     16    Credit Card Type        
  532.      @CITY@         25    City name (address)
  533.      @COUNTRY@      15    Country name (address)
  534.      @DESC@         45    Description of the subscription choosen by 
  535.                           the user
  536.      @HANDLING@     13*   Calculated amount for handling
  537.      @HBAMOUNT@     13*   Handling base amount
  538.      @HBRATE@        7**  Handling base rate
  539.      @HPHONE@       13    Card Owner's Home phone
  540.      @INVOICE@       8    Invoice Number
  541.      @NEWEXPIRE@     8    The new expiration date after purchase
  542.      @NEWLEVEL@      3    The new level after purchase
  543.      @OPTION@        2    The option number choosen by the user
  544.      @PRICE@        13*   Price of the option choosen by the user
  545.      @STATE@         2    State/County (Address)
  546.      @SYSDATE@       8    System date
  547.      @SYSTIME@       8    System time
  548.      @TAX@          13*   Calculated tax
  549.      @TBAMOUNT@     13*   Tax base amount
  550.      @TBRATE@        7**  Tax base rate
  551.      @TDESC(n)@     45    Description of the available subscription 
  552.                           (n = 1 to 12)
  553.      @TOTAL@        13*   Total calculated amount (subs. price + Tax +
  554.                           handling)
  555.      @TPRICE(n)@    13*   Price of each available subscription
  556.                           (n = 1 to 12)
  557.      @USER@         25    User Name
  558.      @ZIP@          10    ZIP code (address)
  559.  
  560.      *  An amount is always formated with the money sign on the three
  561.         mostleft caracters and the amount is right aligned.
  562.         Valid amounts a between 0 and 999999.99 if decimals are used
  563.         and between 0 and 999999 if no decimals are used.
  564.      ** A rate is always aligned on the left with a '%' trailing sign.
  565.  
  566.                                     -13-
  567.  
  568.  
  569.      For performance purpose, @ macros can be used only in specific screens
  570.      or in layouts. The following panel show you wich macro can be used
  571.      in wich screen or layout :
  572.  
  573.      ┌──────────────┬──────┬──────┬──────┬──────┬───────┬───────┬────────┐
  574.      │ MACRO        │SUB_S1│SUB_S2│SUB_S3│SUB_S4│INVOICE│RECEIPT│MESSAGE │
  575.      ├──────────────┼──────┼──────┼──────┼──────┼───────┼───────┼────────┤
  576.      │ @ACCEPTED1@  │  X   │  X   │      │      │   X   │   X   │   X    │
  577.      │ @ACCEPTED2@  │  X   │  X   │      │      │   X   │   X   │   X    │
  578.      │ @ADR1@       │      │  X   │      │      │   X   │   X   │   X    │
  579.      │ @ADR2@       │      │  X   │      │      │   X   │   X   │   X    │
  580.      │ @BPHONE@     │      │  X   │      │      │   X   │   X   │   X    │
  581.      │ @CARDEXP@    │  X   │  X   │      │      │   X   │   X   │   X    │
  582.      │ @CARDNB@     │  X   │  X   │      │      │   X   │   X   │   X    │
  583.      │ @CARDHOLDER@ │      │  X   │      │      │   X   │   X   │   X    │
  584.      │ @CARDTYPE@   │  X   │  X   │      │      │   X   │   X   │   X    │
  585.      │ @CITY@       │      │  X   │      │      │   X   │   X   │   X    │
  586.      │ @COUNTRY@    │      │  X   │      │      │   X   │   X   │   X    │
  587.      │ @DESC@       │      │      │      │  X   │   X   │   X   │   X    │
  588.      │ @HANDLING@   │      │      │      │  X   │   X   │   X   │   X    │
  589.      │ @HBAMOUNT@   │      │      │  X   │  X   │       │       │        │
  590.      │ @HBRATE@     │      │      │  X   │  X   │       │       │        │
  591.      │ @HPHONE@     │      │  X   │      │      │   X   │   X   │   X    │
  592.      │ @INVOICE@    │      │      │      │      │   X   │       │        │
  593.      │ @NEWEXPIRE@  │      │      │      │  X   │   X   │   X   │   X    │
  594.      │ @NEWLEVEL@   │      │      │      │  X   │   X   │   X   │   X    │
  595.      │ @OPTION@     │      │      │      │  X   │   X   │   X   │   X    │
  596.      │ @PRICE@      │      │      │      │  X   │   X   │   X   │   X    │
  597.      │ @STATE@      │      │  X   │      │      │   X   │   X   │   X    │
  598.      │ @SYSDATE@    │  X   │  X   │  X   │  X   │   X   │   X   │   X    │
  599.      │ @SYSTIME@    │  X   │  X   │  X   │  X   │   X   │   X   │   X    │
  600.      │ @TAX@        │      │      │      │  X   │   X   │   X   │   X    │
  601.      │ @TBAMOUNT@   │      │      │  X   │  X   │       │       │        │
  602.      │ @TBRATE@     │      │      │  X   │  X   │       │       │        │
  603.      │ @TDESC(n)@   │      │      │  X   │      │       │       │        │
  604.      │ @TOTAL@      │      │      │      │  X   │   X   │   X   │   X    │
  605.      │ @TPRICE(n)@  │      │      │  X   │      │       │       │        │
  606.      │ @USER@       │  X   │  X   │  X   │  X   │   X   │   X   │   X    │
  607.      │ @ZIP@        │      │  X   │      │      │   X   │   X   │   X    │
  608.      └──────────────┴──────┴──────┴──────┴──────┴───────┴───────┴────────┘
  609.      In the other screens the specific @ macros will be ignored and
  610.      considered as text.
  611.      The PCBoard @macros may also be used in the displayed panels, but not
  612.      into the layouts.
  613.  
  614.                                     -14-
  615.  
  616.      9. Disclaimer and legal matters :
  617.      ═════════════════════════════════
  618.  
  619.      'The subscriber' software and documentation is subject to the 
  620.      following license terms and conditions.
  621.  
  622.      ■ 'The subscriber'is supplied as is. The author disclaims all 
  623.        warranties, expressed or implied, including, without limitation, 
  624.        the warranties of merchantability and of fitness for any purpose. 
  625.        The author assumes no liability for damages, direct or consequential, 
  626.        which may result from the use of 'The Subscriber' software.
  627.        'The Subscriber' is distributed as a "shareware program" and is 
  628.        provided at no charge to the user for evaluation for a period not 
  629.        extending 30 days, after which You are required to register. Feel 
  630.        free to share it with your friends, but please do not give it away 
  631.        altered or as part of another system. The essence of "user-supported" 
  632.        software is to provide personal computer users with quality software 
  633.        without high prices, and yet to provide incentive for programmers to
  634.        continue to develop new products.
  635.  
  636.      ■ 'The Subscriber' distribution package, all programs, the documentation 
  637.        and support files are copyrighted 1993 by SUN Serveur - Olivier Junod. 
  638.        All rights are reserved. You may copy this package for backup purposes. 
  639.        You may also copy and share unmodified copies of the whole distribution
  640.        package, providing that the copyright notice is reproduced and included 
  641.        on all copies.
  642.  
  643.      ■ You may not sell the product for a fee and/or distribute the product
  644.        along with other products without written permission, nor may you
  645.        modify or remove the Copyright Notices from the programs or the
  646.        documentation files. 
  647.   
  648.  
  649.      10. Acknowledgement :
  650.      ═════════════════════
  651.  
  652.        This document makes reference to a number of third-party products. All
  653.        copyrights, trademarks and reserved rights held in these products are
  654.        acknowledged.
  655.  
  656.                                     -15-
  657.  
  658.  
  659.  
  660.      11. Contact :
  661.      ═════════════
  662.  
  663.        The author may be contacted for support :
  664.  
  665.        By Mail :      SUN Serveur - Olivier Junod
  666.                       Rue Le Corbusier 10
  667.                       1208 GENEVA - SWITZERLAND
  668.  
  669.        By Netmail :   Olivier Junod
  670.                       2:301/323@fidonet
  671.  
  672.        On my BBS :    SUN Serveur (PCBoard v15.0/10)
  673.                       +4122-347.11.00     3 lines Zyxel
  674.                       +4122-347.11.11     1 line HST Dual Std
  675.                       
  676.        On Salt Air :  PCBoard support BBS
  677.                       801-261-8976        (USRobotics HST Dual Std)
  678.                       801-261-8979        (Hayes Ultras)
  679.                       (Due to the cost for overseas communications
  680.                        I will check the mail approximatively once a
  681.                        week).
  682.