home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / pcboard / script2s.zip / SCRIPT2.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1993-03-01  |  32KB  |  1,247 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 1.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Boolean  BOOLEAN003
  22.     Boolean  BOOLEAN004
  23.     Boolean  BOOLEAN005
  24.     Boolean  BOOLEAN006
  25.     Boolean  BOOLEAN007
  26.     Boolean  BOOLEAN008
  27.     Boolean  BOOLEAN009
  28.     Integer  INTEGER001
  29.     Integer  TINTEGER002(6,3)
  30.     Integer  INTEGER003
  31.     Integer  TINTEGER004(5,3)
  32.     Integer  INTEGER005
  33.     Integer  TINTEGER006(8,3)
  34.     Integer  INTEGER007
  35.     Integer  TINTEGER008(5,3)
  36.     Integer  INTEGER009
  37.     Integer  TINTEGER010(4,3)
  38.     Integer  INTEGER011
  39.     Integer  TINTEGER012(6,3)
  40.     Integer  INTEGER013
  41.     Integer  TINTEGER014(3)
  42.     Integer  TINTEGER015(11,3)
  43.     Integer  INTEGER016
  44.     Integer  INTEGER017
  45.     Integer  INTEGER018
  46.     Integer  INTEGER019
  47.     Integer  INTEGER020
  48.     Integer  INTEGER021
  49.     Integer  INTEGER022
  50.     Integer  INTEGER023
  51.     Integer  INTEGER024
  52.     Integer  INTEGER025
  53.     Integer  INTEGER026
  54.     Integer  INTEGER027
  55.     Integer  INTEGER028
  56.     Integer  INTEGER029
  57.     Integer  INTEGER030
  58.     Integer  INTEGER031
  59.     Integer  INTEGER032
  60.     Integer  INTEGER033
  61.     String   STRING001
  62.     String   STRING002
  63.     String   STRING003
  64.     String   STRING004
  65.     String   STRING005
  66.     String   STRING006
  67.     String   STRING007
  68.     String   STRING008
  69.     String   STRING009
  70.     String   STRING010
  71.     String   STRING011
  72.     String   STRING012
  73.     String   STRING013
  74.     String   STRING014
  75.     String   STRING015
  76.     String   STRING016
  77.     String   STRING017
  78.     String   STRING018
  79.     String   STRING019
  80.     String   STRING020
  81.     String   STRING021
  82.     String   STRING022
  83.     String   STRING023
  84.     String   STRING024
  85.     String   STRING025
  86.     String   STRING026
  87.     String   STRING027
  88.     String   STRING028
  89.     String   STRING029
  90.     String   STRING030
  91.     String   STRING031
  92.     String   STRING032
  93.     String   STRING033
  94.     String   STRING034
  95.     String   STRING035
  96.     String   STRING036
  97.     String   STRING037
  98.     String   TSTRING038(11)
  99.     String   STRING039
  100.     String   STRING040
  101.     String   STRING041
  102.     String   STRING042
  103.     String   STRING043
  104.     String   STRING044
  105.     String   STRING045
  106.     String   STRING046
  107.  
  108. ;------------------------------------------------------------------------------
  109.  
  110.     STRING010 = "USA"
  111.     TINTEGER002(1, 1) = 170
  112.     TINTEGER002(2, 1) = 340
  113.     TINTEGER002(3, 1) = 680
  114.     TINTEGER002(4, 1) = 1000
  115.     TINTEGER002(5, 1) = 2500
  116.     TINTEGER002(1, 2) = 4
  117.     TINTEGER002(2, 2) = 4
  118.     TINTEGER002(3, 2) = 4
  119.     TINTEGER002(4, 2) = 4
  120.     TINTEGER002(5, 2) = 4
  121.     TINTEGER004(1, 1) = 440
  122.     TINTEGER004(2, 1) = 780
  123.     TINTEGER004(3, 1) = 1100
  124.     TINTEGER004(4, 1) = 2600
  125.     TINTEGER004(1, 2) = 4
  126.     TINTEGER004(2, 2) = 4
  127.     TINTEGER004(3, 2) = 4
  128.     TINTEGER004(4, 2) = 4
  129.     TINTEGER006(1, 1) = 85
  130.     TINTEGER006(2, 1) = 195
  131.     TINTEGER006(3, 1) = 535
  132.     TINTEGER006(4, 1) = 365
  133.     TINTEGER006(5, 1) = 685
  134.     TINTEGER006(6, 1) = 345
  135.     TINTEGER006(7, 1) = 100
  136.     TINTEGER006(1, 2) = 4
  137.     TINTEGER006(2, 2) = 4
  138.     TINTEGER006(3, 2) = 4
  139.     TINTEGER006(4, 2) = 4
  140.     TINTEGER006(5, 2) = 4
  141.     TINTEGER006(6, 2) = 4
  142.     TINTEGER006(7, 2) = 1
  143.     TINTEGER008(1, 1) = 180
  144.     TINTEGER008(2, 1) = 275
  145.     TINTEGER008(3, 1) = 40
  146.     TINTEGER008(4, 1) = 179
  147.     TINTEGER008(1, 2) = 4
  148.     TINTEGER008(2, 2) = 2
  149.     TINTEGER008(3, 2) = 1
  150.     TINTEGER008(4, 2) = 3
  151.     TINTEGER010(1, 1) = 1060
  152.     TINTEGER010(2, 1) = 1525
  153.     TINTEGER010(3, 1) = 1830
  154.     TINTEGER010(1, 2) = 14
  155.     TINTEGER010(2, 2) = 18
  156.     TINTEGER010(3, 2) = 18
  157.     TINTEGER012(1, 1) = 495
  158.     TINTEGER012(2, 1) = 515
  159.     TINTEGER012(3, 1) = 995
  160.     TINTEGER012(4, 1) = 1035
  161.     TINTEGER012(5, 1) = 179
  162.     TINTEGER012(1, 2) = 5
  163.     TINTEGER012(2, 2) = 7
  164.     TINTEGER012(3, 2) = 7
  165.     TINTEGER012(4, 2) = 12
  166.     TINTEGER012(5, 2) = 2
  167.     TINTEGER014(1) = 60
  168.     TINTEGER014(2) = 120
  169.     GetUser
  170.     STRING003 = U_Name()
  171.     STRING003 = Upper(STRING003)
  172.     If ((STRING003 == "FRED CLARK") || (STRING003 == "DAVID TERRY")) Goto LABEL001
  173.     If ((STRING003 == "JOE ROBINSON") || (STRING003 == "SCOTT ROBISON")) Goto LABEL001
  174.     If ((STRING003 == "SCOTT CARPENTER") || (STRING003 == "DANIEL CHLARSON")) Goto LABEL001
  175.     If ((STRING003 == "RICHARD KOZIK") || (STRING003 == "STEVE CATMULL")) Goto LABEL001
  176.     If ((STRING003 == "LOUIS ZIRKEL") || (STRING003 == "MATT SMITH")) Goto LABEL001
  177.     If (STRING003 == "DAVID CLAYTON") Goto LABEL001
  178.     STRING021 = STRING003
  179.     STRING004 = Mid("", 1, 6)
  180.     STRING025 = ""
  181.     STRING020 = STRING025
  182.     STRING001 = ""
  183.     STRING001 = RTrim(STRING001, " ")
  184.     STRING030 = Right(STRING001, 6)
  185.     STRING001 = ""
  186.     Goto LABEL002
  187.     :LABEL001
  188.     STRING003 = ""
  189.     BOOLEAN009 = 1
  190.     :LABEL002
  191.     Cls
  192.     PrintLn "@X0EWe accept the following credit cards:"
  193.     PrintLn 
  194.     PrintLn "@X0F   (1) VISA"
  195.     PrintLn "@X0F   (2) MasterCard"
  196.     PrintLn "@X0F   (3) American Express/Optima"
  197.     PrintLn "@X0F"
  198.     PrintLn "@X0F   (A) Abort, I don't have a Credit Card!"
  199.     PrintLn 
  200.     InputStr "Enter the Credit Card Type for this order: (1/2/3/A)", STRING022, 14, 1, "123Aa", 10
  201.     PrintLn 
  202.     If (STRING022 == "1") Goto LABEL004
  203.     If (STRING022 == "2") Goto LABEL005
  204.     If (STRING022 == "3") Goto LABEL006
  205.     STRING001 = "N"
  206.     Beep
  207.     PrintLn 
  208.     InputYN "Are you sure you want to abort this script (Y/N)", STRING001, 12
  209.     If (STRING001 <> "Y") Goto LABEL002
  210.     PrintLn 
  211.     Goto LABEL020
  212.     :LABEL003
  213.     Beep
  214.     PrintLn 
  215.     PrintLn "@X8CThe card number you entered was invalid.  Either you selected"
  216.     PrintLn "the wrong credit card type vs the card number entered, or you did"
  217.     PrintLn "failed to enter the proper number of digits.  Please try again ..."
  218.     PrintLn "@X0E"
  219.     Gosub LABEL039
  220.     Goto LABEL002
  221.     :LABEL004
  222.     InputStr "    Enter the VISA Card Number", STRING018, 14, 16, "1234567890", 2
  223.     PrintLn 
  224.     If (Left(STRING018, 1) <> "4") Goto LABEL003
  225.     If ((Len(STRING018) == 13) || (Len(STRING018) == 16)) Goto LABEL007
  226.     Goto LABEL003
  227.     :LABEL005
  228.     InputStr "   Enter the MasterCard Number", STRING018, 14, 16, "1234567890", 2
  229.     PrintLn 
  230.     If (Left(STRING018, 1) <> "5") Goto LABEL003
  231.     If (Len(STRING018) <> 16) Goto LABEL003
  232.     Goto LABEL007
  233.     :LABEL006
  234.     InputStr "    Enter the AMEX Card Number", STRING018, 14, 15, "1234567890", 2
  235.     PrintLn 
  236.     If (Left(STRING018, 1) <> "3") Goto LABEL003
  237.     If (Len(STRING018) <> 15) Goto LABEL003
  238.     :LABEL007
  239.     InputStr " Expiration date (@X0CMMYY@X0E) format", STRING019, 14, 4, "1234567890", 2
  240.     PrintLn 
  241.     If (Len(STRING019) == 4) Goto LABEL009
  242.     Beep
  243.     PrintLn 
  244.     PrintLn "@X0CError in expiration date format!  Please try again ..."
  245.     PrintLn "@X0E"
  246.     Goto LABEL007
  247.     :LABEL008
  248.     Beep
  249.     PrintLn 
  250.     PrintLn "@X0CError in expiration date!  Please try again ..."
  251.     PrintLn "@X0E"
  252.     Goto LABEL007
  253.     :LABEL009
  254.     INTEGER020 = Left(STRING019, 2)
  255.     INTEGER021 = Mid(STRING019, 3, 2)
  256.     INTEGER022 = Month(Date())
  257.     INTEGER023 = Year(Date())
  258.     If ((INTEGER020 > 12) || (INTEGER020 < 1)) Goto LABEL008
  259.     If (INTEGER021 > INTEGER023) Goto LABEL010
  260.     If ((INTEGER021 == INTEGER023) && (INTEGER020 >= INTEGER022)) Goto LABEL010
  261.     PrintLn 
  262.     Beep
  263.     PrintLn "@X0CThat card has expired!"
  264.     PrintLn 
  265.     PrintLn "@X0E    Enter (R) to re-enter the card's expiration date."
  266.     PrintLn "@X0E    Enter (D) to use a different credit card."
  267.     PrintLn "@X0E    Enter (A) to abort this order and return."
  268.     PrintLn 
  269.     STRING002 = "R"
  270.     InputStr "Your Choice: (R/D/A)", STRING002, 14, 1, "RDA", 14
  271.     PrintLn 
  272.     If (STRING002 == "R") Goto LABEL007
  273.     If (STRING002 == "D") Goto LABEL002
  274.     Goto LABEL020
  275.     :LABEL010
  276.     InputText "   Enter the Cardholder's Name", STRING021, 14, 50
  277.     PrintLn 
  278.     STRING021 = Upper(STRING021)
  279.     STRING003 = STRING021
  280.     STRING011 = STRING021
  281.     InputStr "Enter the Cardholder's Phone #", STRING020, 14, 13, "1234567890.-()/", 2
  282.     STRING025 = STRING020
  283.     Cls
  284.     PrintLn "@X0EYou have entered the following Credit Card information:"
  285.     PrintLn 
  286.     If ((STRING022 == "1") && (Len(STRING018) == 13)) STRING023 = Left(STRING018, 4) + "-" + Mid(STRING018, 5, 3) + "-" + Mid(STRING018, 8, 3) + "-" + Mid(STRING018, 11, 3)
  287.     If ((STRING022 == "1") && (Len(STRING018) == 16)) STRING023 = Left(STRING018, 4) + "-" + Mid(STRING018, 5, 4) + "-" + Mid(STRING018, 9, 4) + "-" + Mid(STRING018, 13, 4)
  288.     If (STRING022 == "2") STRING023 = Left(STRING018, 4) + "-" + Mid(STRING018, 5, 4) + "-" + Mid(STRING018, 9, 4) + "-" + Mid(STRING018, 13, 4)
  289.     If (STRING022 == "3") STRING023 = Left(STRING018, 4) + "-" + Mid(STRING018, 5, 6) + "-" + Mid(STRING018, 11, 5)
  290.     STRING024 = Left(STRING019, 2) + "/" + Mid(STRING019, 3, 2)
  291.     Print "@X0F   Credit Card #: "
  292.     PrintLn "@X07", STRING023
  293.     Print "@X0F Expiration Date: "
  294.     PrintLn "@X07", STRING024
  295.     Print "@X0FCardholders Name: "
  296.     PrintLn "@X07", STRING021
  297.     Print "@X0F           Phone: "
  298.     PrintLn "@X07", STRING020
  299.     PrintLn 
  300.     STRING001 = "Y"
  301.     InputYN "Is the above information correct (Y/N)", STRING001, 14
  302.     PrintLn "@X07"
  303.     If (STRING001 == "Y") Goto LABEL011
  304.     Goto LABEL002
  305.     :LABEL011
  306.     Cls
  307.     PrintLn "@X0FNow that we have valid credit card information, you need to complete"
  308.     PrintLn "your billing and shipping information.  In order for the script to"
  309.     PrintLn "properly calculate your freight and other functions, you @X0AMUST@X0F enter"
  310.     PrintLn "your State/Province and Country in their appropriate fields.  Please do"
  311.     PrintLn "@X0CNOT@X0F include your State and Zip (Postal) code in the 'City' field."
  312.     PrintLn 
  313.     PrintLn "Customers from outside the US and Canada may need to use the 'Company'"
  314.     PrintLn "or 'City' fields in order to enter all of your information properly."
  315.     PrintLn 
  316.     :LABEL012
  317.     If ((STRING004 == "") || (Left(STRING004, 1) == " ")) STRING004 = "None"
  318.     InputStr "  Serial # (if applicable)", STRING004, 14, 6, "1234567890", 2
  319.     PrintLn 
  320.     If (((STRING004 == "") || (Left(STRING004, 1) == " ")) || (Left(STRING004, 1) == "N")) Goto LABEL013
  321.     If (Len(STRING004) == 6) Goto LABEL013
  322.     Beep
  323.     PrintLn 
  324.     PrintLn "@X0CSerial # must be 6 characters in length!  Please try again ..."
  325.     PrintLn 
  326.     Goto LABEL012
  327.     :LABEL013
  328.     If ((STRING030 == "") || (Left(STRING030, 1) == " ")) STRING030 = "None"
  329.     InputText "Customer # (if applicable)", STRING030, 14, 6
  330.     PrintLn 
  331.     STRING030 = Upper(STRING030)
  332.     InputText "Purchaser Name", STRING003, 14, 50
  333.     STRING003 = Upper(STRING003)
  334.     STRING011 = STRING003
  335.     PrintLn 
  336.     InputStr " Voice Phone #", STRING025, 14, 13, "1234567890.-()/", 2
  337.     PrintLn 
  338.     InputStr "   FAX Phone #", STRING026, 14, 13, "1234567890.-()/", 2
  339.     PrintLn 
  340.     InputText "  Company Name", STRING005, 14, 50
  341.     STRING005 = Upper(STRING005)
  342.     STRING012 = STRING005
  343.     PrintLn 
  344.     InputText "Street Address", STRING006, 14, 50
  345.     STRING006 = Upper(STRING006)
  346.     STRING013 = STRING006
  347.     PrintLn 
  348.     InputText "          City", STRING007, 14, 25
  349.     STRING007 = Upper(STRING007)
  350.     STRING014 = STRING007
  351.     PrintLn 
  352.     InputText "State/Province", STRING008, 14, 2
  353.     STRING008 = Upper(STRING008)
  354.     STRING015 = STRING008
  355.     PrintLn 
  356.     InputText "           ZIP", STRING009, 14, 10
  357.     STRING009 = Upper(STRING009)
  358.     STRING016 = STRING009
  359.     PrintLn 
  360.     InputText "       Country", STRING010, 14, 20
  361.     PrintLn 
  362.     BOOLEAN001 = 0
  363.     STRING010 = Upper(STRING010)
  364.     STRING017 = STRING010
  365.     If ((STRING010 == "USA") && (STRING008 == "")) Gosub LABEL015
  366.     If ((STRING010 == "") && (STRING008 == "")) Gosub LABEL015
  367.     If ((STRING010 == "USA") && (STRING008 == "")) Goto LABEL012
  368.     If ((STRING010 == "") && (STRING008 == "")) Goto LABEL012
  369.     If (STRING010 <> "USA") BOOLEAN001 = 1
  370.     If (STRING010 == "") BOOLEAN001 = 0
  371.     Cls
  372.     PrintLn "@X0EYou have entered the following purchaser information:"
  373.     PrintLn 
  374.     Print "@X0F        Serial #: "
  375.     PrintLn "@X07", STRING004
  376.     Print "@X0F Customer Number: "
  377.     PrintLn "@X07", STRING030
  378.     Print "@X0F   Customer Name: "
  379.     PrintLn "@X07", STRING003
  380.     Print "@X0F   Voice Phone #: "
  381.     PrintLn "@X07", STRING025
  382.     Print "@X0F     FAX Phone #: "
  383.     PrintLn "@X07", STRING026
  384.     If (STRING005 == "") Goto LABEL014
  385.     Print "@X0F         Company: "
  386.     PrintLn "@X07", STRING005
  387.     :LABEL014
  388.     Print "@X0F         Address: "
  389.     PrintLn "@X07", STRING006
  390.     Print "@X0F                  "
  391.     PrintLn "@X07" + STRING007 + ", " + STRING008 + "  " + STRING009
  392.     Print "@X0F                  "
  393.     PrintLn "@X07", STRING010
  394.     PrintLn "@X07"
  395.     STRING001 = "Y"
  396.     InputYN "Is the above information correct (Y/N)", STRING001, 14
  397.     PrintLn 
  398.     If (STRING001 == "Y") Goto LABEL016
  399.     PrintLn 
  400.     Goto LABEL012
  401.     :LABEL015
  402.     Cls
  403.     Beep
  404.     PrintLn 
  405.     PrintLn "@X0CYou must enter a valid State!  Please re-enter your information ..."
  406.     PrintLn "@X0E"
  407.     Return
  408.     :LABEL016
  409.     STRING001 = "Y"
  410.     InputYN "Is the Shipping Information the Same as above (Y/N)", STRING001, 14
  411.     PrintLn 
  412.     BOOLEAN002 = 0
  413.     If (STRING001 == "Y") Goto LABEL019
  414.     :LABEL017
  415.     PrintLn 
  416.     BOOLEAN002 = 1
  417.     InputText "     Ship Name", STRING011, 14, 50
  418.     STRING011 = Upper(STRING011)
  419.     PrintLn 
  420.     InputText "  Ship Company", STRING012, 14, 50
  421.     STRING012 = Upper(STRING012)
  422.     PrintLn 
  423.     InputText "  Ship Address", STRING013, 14, 50
  424.     STRING013 = Upper(STRING013)
  425.     PrintLn 
  426.     InputText "     Ship City", STRING014, 14, 25
  427.     STRING014 = Upper(STRING014)
  428.     PrintLn 
  429.     InputText "Ship State/Pro", STRING015, 14, 2
  430.     STRING015 = Upper(STRING015)
  431.     PrintLn 
  432.     InputText "      Ship ZIP", STRING016, 14, 10
  433.     STRING016 = Upper(STRING016)
  434.     PrintLn 
  435.     InputText "  Ship Country", STRING017, 14, 20
  436.     PrintLn 
  437.     BOOLEAN001 = 0
  438.     STRING017 = Upper(STRING017)
  439.     If ((STRING017 == "USA") && (STRING015 == "")) Gosub LABEL015
  440.     If ((STRING017 == "") && (STRING008 == "")) Gosub LABEL015
  441.     If ((STRING017 == "USA") && (STRING015 == "")) Goto LABEL017
  442.     If ((STRING017 == "") && (STRING008 == "")) Goto LABEL017
  443.     If (STRING017 <> "USA") BOOLEAN001 = 1
  444.     If (STRING017 == "") BOOLEAN001 = 0
  445.     Cls
  446.     PrintLn "@X0EYou have entered the following shipping information:"
  447.     PrintLn 
  448.     Print "@X0F       Ship Name: "
  449.     PrintLn "@X07", STRING011
  450.     If (STRING012 == "") Goto LABEL018
  451.     Print "@X0F    Ship Company: "
  452.     PrintLn "@X07", STRING012
  453.     :LABEL018
  454.     Print "@X0F         Address: "
  455.     PrintLn "@X07", STRING013
  456.     Print "@X0F                  "
  457.     PrintLn "@X07" + STRING014 + ", " + STRING015 + "  " + STRING016
  458.     Print "@X0F                  "
  459.     PrintLn "@X07", STRING017
  460.     PrintLn "@X07"
  461.     STRING001 = "Y"
  462.     InputYN "Is the above information correct (Y/N)", STRING001, 14
  463.     PrintLn 
  464.     If (STRING001 == "Y") Goto LABEL019
  465.     PrintLn 
  466.     Goto LABEL017
  467.     :LABEL019
  468.     Cls
  469.     DispFile "c:\pcb\gen\choices.txt", 0
  470.     PrintLn 
  471.     STRING002 = ""
  472.     InputStr "@X0EMain Order Command: (1-6), (R), (S), (A)", STRING002, 14, 1, "123456RSA", 10
  473.     PrintLn 
  474.     If (STRING002 == "") Goto LABEL019
  475.     If (STRING002 == "S") Goto LABEL070
  476.     If (STRING002 == "R") Goto LABEL022
  477.     If (STRING002 == "A") Goto LABEL020
  478.     If (INTEGER024 == 10) Goto LABEL021
  479.     If (STRING002 == "1") Gosub LABEL026
  480.     If (STRING002 == "2") Gosub LABEL034
  481.     If (STRING002 == "3") Gosub LABEL033
  482.     If (STRING002 == "4") Gosub LABEL032
  483.     If (STRING002 == "5") Gosub LABEL036
  484.     If (STRING002 == "6") Gosub LABEL031
  485.     Goto LABEL019
  486.     :LABEL020
  487.     PrintLn 
  488.     Beep
  489.     PrintLn "@X0FScript Aborted.  Returning to normal board operations ..."
  490.     Stop
  491.     :LABEL021
  492.     PrintLn 
  493.     Beep
  494.     PrintLn "@X0CA maximum number of @X0F10@X0C items can be ordered with this Script!"
  495.     PrintLn 
  496.     Gosub LABEL039
  497.     Goto LABEL019
  498.     :LABEL022
  499.     BOOLEAN005 = 1
  500.     Gosub LABEL040
  501.     If (INTEGER024 > 0) Goto LABEL023
  502.     Goto LABEL019
  503.     :LABEL023
  504.     STRING001 = "R"
  505.     InputStr "Verify Command: (D)elete Item, (R)eturn to Main Menu (S)ave Order", STRING001, 14, 1, "DRS", 10
  506.     PrintLn 
  507.     If (STRING001 == "") Goto LABEL023
  508.     If (STRING001 == "R") Goto LABEL019
  509.     If (STRING001 == "S") Goto LABEL072
  510.     Beep
  511.     INTEGER027 = 0
  512.     InputInt "Which item # do you wish to delete (0 to Cancel)", INTEGER027, 12
  513.     If (INTEGER027 == 0) Goto LABEL022
  514.     If ((INTEGER027 >= 1) && (INTEGER027 <= INTEGER026)) Goto LABEL024
  515.     Beep
  516.     PrintLn 
  517.     PrintLn "@X0CYou entered an invalid item number!"
  518.     PrintLn 
  519.     Gosub LABEL039
  520.     Goto LABEL022
  521.     :LABEL024
  522.     INTEGER024 = INTEGER024 - 1
  523.     TSTRING038(INTEGER027) = ""
  524.     TINTEGER015(INTEGER027, 1) = 0
  525.     TINTEGER015(INTEGER027, 2) = 0
  526.     If (INTEGER027 == 10) Goto LABEL022
  527.     If (INTEGER024 == 0) Goto LABEL019
  528.     :LABEL025
  529.     TSTRING038(INTEGER027) = TSTRING038(INTEGER027 + 1)
  530.     TINTEGER015(INTEGER027, 1) = TINTEGER015(INTEGER027 + 1, 1)
  531.     TINTEGER015(INTEGER027, 2) = TINTEGER015(INTEGER027 + 1, 2)
  532.     INTEGER027 = INTEGER027 + 1
  533.     TSTRING038(INTEGER027) = ""
  534.     TINTEGER015(INTEGER027, 1) = 0
  535.     TINTEGER015(INTEGER027, 2) = 0
  536.     If (INTEGER027 > INTEGER024 + 1) Goto LABEL022
  537.     Goto LABEL025
  538.     :LABEL026
  539.     Cls
  540.     DispFile "c:\pcb\gen\newprod.txt", 0
  541.     PrintLn 
  542.     :LABEL027
  543.     STRING002 = ""
  544.     InputStr "New Product Selection: (1-2), (E)xit", STRING002, 14, 1, "12E", 10
  545.     PrintLn 
  546.     If (STRING002 == "") Goto LABEL027
  547.     If (STRING002 == "1") Goto LABEL029
  548.     If (STRING002 == "2") Goto LABEL030
  549.     :LABEL028
  550.     STRING002 = ""
  551.     Return
  552.     :LABEL029
  553.     Cls
  554.     INTEGER001 = 0
  555.     DispFile "c:\pcb\gen\pcbstan.txt", 0
  556.     PrintLn 
  557.     STRING002 = ""
  558.     InputStr "Standard Product Selection: (1-5), (E)xit", STRING002, 14, 1, "12345E", 10
  559.     PrintLn 
  560.     If (STRING002 == "") Goto LABEL028
  561.     If (InStr("12345", STRING002) < 1) Goto LABEL028
  562.     INTEGER001 = STRING002
  563.     STRING031 = "PCBoard "
  564.     If (STRING002 == "1") STRING031 = STRING031 + "2"
  565.     If (STRING002 == "2") STRING031 = STRING031 + "10"
  566.     If (STRING002 == "3") STRING031 = STRING031 + "100"
  567.     If (STRING002 == "4") STRING031 = STRING031 + "250"
  568.     If (STRING002 == "5") STRING031 = STRING031 + "1000"
  569.     STRING031 = STRING031 + " Node Standard Code for $ "
  570.     PrintLn 
  571.     Print "@X0FProduct Ordered: "
  572.     Print "@X07", STRING031
  573.     STRING039 = TINTEGER002(INTEGER001, 1)
  574.     STRING039 = STRING039 + ".00"
  575.     PrintLn STRING039
  576.     PrintLn 
  577.     STRING001 = "Y"
  578.     InputYN "Is the above correct (Y/N)", STRING001, 14
  579.     If (STRING001 == "N") Goto LABEL029
  580.     INTEGER024 = INTEGER024 + 1
  581.     TINTEGER015(INTEGER024, 1) = TINTEGER002(INTEGER001, 1)
  582.     TINTEGER015(INTEGER024, 2) = TINTEGER002(INTEGER001, 2)
  583.     TSTRING038(INTEGER024) = STRING031 + STRING039
  584.     Goto LABEL028
  585.     :LABEL030
  586.     Cls
  587.     INTEGER003 = 0
  588.     DispFile "c:\pcb\gen\pcb-m.txt", 0
  589.     PrintLn 
  590.     STRING002 = ""
  591.     InputStr "/M Code Product Selection: (1-4), (E)xit", STRING002, 14, 1, "1234E", 10
  592.     PrintLn 
  593.     If (STRING002 == "") Goto LABEL028
  594.     If (InStr("1234", STRING002) < 1) Goto LABEL028
  595.     INTEGER003 = STRING002
  596.     STRING033 = "PCBoard "
  597.     If (STRING002 == "1") STRING033 = STRING033 + "10"
  598.     If (STRING002 == "2") STRING033 = STRING033 + "100"
  599.     If (STRING002 == "3") STRING033 = STRING033 + "250"
  600.     If (STRING002 == "4") STRING033 = STRING033 + "1000"
  601.     STRING033 = STRING033 + " Node /M (80386) Code for $ "
  602.     PrintLn 
  603.     Print "@X0FProduct Ordered: "
  604.     Print "@X07", STRING033
  605.     STRING039 = TINTEGER004(INTEGER003, 1)
  606.     STRING039 = STRING039 + ".00"
  607.     PrintLn STRING039
  608.     PrintLn 
  609.     STRING001 = "Y"
  610.     InputYN "Is the above correct (Y/N)", STRING001, 14
  611.     If (STRING001 == "N") Goto LABEL030
  612.     INTEGER024 = INTEGER024 + 1
  613.     TINTEGER015(INTEGER024, 1) = TINTEGER004(INTEGER003, 1)
  614.     TINTEGER015(INTEGER024, 2) = TINTEGER004(INTEGER003, 2)
  615.     TSTRING038(INTEGER024) = STRING033 + STRING039
  616.     Goto LABEL028
  617.     :LABEL031
  618.     Cls
  619.     INTEGER009 = 0
  620.     DispFile "c:\pcb\gen\package.txt", 0
  621.     PrintLn 
  622.     STRING002 = ""
  623.     InputStr "/M Package Deal Product Selection: (1-3), (E)xit", STRING002, 14, 1, "123E", 10
  624.     PrintLn 
  625.     If (STRING002 == "") Goto LABEL028
  626.     If (InStr("123", STRING002) < 1) Goto LABEL028
  627.     INTEGER009 = STRING002
  628.     If (STRING002 == "1") STRING032 = "10/M, ARNET 4, DOORWAY, DESQView, Cables"
  629.     If (STRING002 == "2") STRING032 = "10/M, ARNET 8, DOORWAY, DESQView, Cables"
  630.     If (STRING002 == "3") STRING032 = "100/M, ARNET 8, DOORWAY, DESQView, Cables"
  631.     STRING032 = STRING032 + " for $ "
  632.     PrintLn 
  633.     Print "@X0FProduct Ordered: "
  634.     Print "@X07", STRING032
  635.     STRING039 = TINTEGER010(INTEGER009, 1)
  636.     STRING039 = STRING039 + ".00"
  637.     PrintLn STRING039
  638.     PrintLn 
  639.     STRING001 = "Y"
  640.     InputYN "Is the above correct (Y/N)", STRING001, 14
  641.     If (STRING001 == "N") Goto LABEL031
  642.     INTEGER024 = INTEGER024 + 1
  643.     TINTEGER015(INTEGER024, 1) = TINTEGER010(INTEGER009, 1)
  644.     TINTEGER015(INTEGER024, 2) = TINTEGER010(INTEGER009, 2)
  645.     TSTRING038(INTEGER024) = STRING032 + STRING039
  646.     Goto LABEL028
  647.     :LABEL032
  648.     Cls
  649.     INTEGER011 = 0
  650.     DispFile "c:\pcb\gen\hardware.txt", 0
  651.     PrintLn 
  652.     STRING002 = ""
  653.     InputStr "Hardware Product Selection: (1-5), (E)xit", STRING002, 14, 1, "12345E", 10
  654.     PrintLn 
  655.     If (STRING002 == "") Goto LABEL028
  656.     If (InStr("12345", STRING002) < 1) Goto LABEL028
  657.     INTEGER011 = STRING002
  658.     If (STRING002 == "1") STRING036 = "ARNET 4-Port Serial card w/o Cables"
  659.     If (STRING002 == "2") STRING036 = "ARNET 4-Port Serial card with Cables"
  660.     If (STRING002 == "3") STRING036 = "ARNET 8-Port Serial card w/o Cables"
  661.     If (STRING002 == "4") STRING036 = "ARNET 8-Port Serial card with Cables"
  662.     If (STRING002 == "5") STRING036 = "Willies' 4-Port Serial Card w/16550's"
  663.     STRING036 = STRING036 + " for $ "
  664.     PrintLn 
  665.     Print "@X0FProduct Ordered: "
  666.     Print "@X07", STRING036
  667.     STRING039 = TINTEGER012(INTEGER011, 1)
  668.     STRING039 = STRING039 + ".00"
  669.     PrintLn STRING039
  670.     PrintLn 
  671.     STRING001 = "Y"
  672.     InputYN "Is the above correct (Y/N)", STRING001, 14
  673.     If (STRING001 == "N") Goto LABEL032
  674.     INTEGER024 = INTEGER024 + 1
  675.     TINTEGER015(INTEGER024, 1) = TINTEGER012(INTEGER011, 1)
  676.     TINTEGER015(INTEGER024, 2) = TINTEGER012(INTEGER011, 2)
  677.     TSTRING038(INTEGER024) = STRING036 + STRING039
  678.     Goto LABEL028
  679.     :LABEL033
  680.     Cls
  681.     INTEGER007 = 0
  682.     DispFile "c:\pcb\gen\othersw.txt", 0
  683.     PrintLn 
  684.     STRING002 = ""
  685.     InputStr "Other Software Product Selection: (1-4), (E)xit", STRING002, 14, 1, "1234E", 10
  686.     PrintLn 
  687.     If (STRING002 == "") Goto LABEL028
  688.     If (InStr("1234", STRING002) < 1) Goto LABEL028
  689.     INTEGER007 = STRING002
  690.     If (STRING002 == "1") STRING035 = "PCBoard Development ToolKit"
  691.     If (STRING002 == "2") STRING035 = "PCB-MHS Novell GateWay"
  692.     If (STRING002 == "3") STRING035 = "DOORWAY Remote Access/DOS"
  693.     If (STRING002 == "4") STRING035 = "DESQview 386 Multitasking"
  694.     STRING035 = STRING035 + " Software for $ "
  695.     PrintLn 
  696.     Print "@X0FProduct Ordered: "
  697.     Print "@X07", STRING035
  698.     STRING039 = TINTEGER008(INTEGER007, 1)
  699.     STRING039 = STRING039 + ".00"
  700.     PrintLn STRING039
  701.     PrintLn 
  702.     STRING001 = "Y"
  703.     InputYN "Is the above correct (Y/N)", STRING001, 14
  704.     If (STRING001 == "N") Goto LABEL033
  705.     INTEGER024 = INTEGER024 + 1
  706.     TINTEGER015(INTEGER024, 1) = TINTEGER008(INTEGER007, 1)
  707.     TINTEGER015(INTEGER024, 2) = TINTEGER008(INTEGER007, 2)
  708.     TSTRING038(INTEGER024) = STRING035 + STRING039
  709.     Goto LABEL028
  710.     :LABEL034
  711.     Cls
  712.     INTEGER005 = 0
  713.     BOOLEAN003 = 0
  714.     DispFile "c:\pcb\gen\upgrade.txt", 0
  715.     PrintLn 
  716.     STRING002 = ""
  717.     InputStr "Upgrade Product Selection: (1-7), (E)xit", STRING002, 14, 1, "1234567E", 10
  718.     PrintLn 
  719.     If (STRING002 == "") Goto LABEL028
  720.     If (InStr("1234567", STRING002) < 1) Goto LABEL028
  721.     INTEGER005 = STRING002
  722.     If (STRING002 == "1") STRING034 = "Like-to-Like Upgrade"
  723.     If (STRING002 == "2") STRING034 = "2 Node to 10 Node Upgrade"
  724.     If (STRING002 == "3") STRING034 = "2 Node to 100 Node Upgrade"
  725.     If (STRING002 == "4") STRING034 = "10 Node to 100 Node Upgrade"
  726.     If (STRING002 == "5") STRING034 = "10 Node to 250 Node Upgrade"
  727.     If (STRING002 == "6") STRING034 = "100 Node to 250 Node Upgrade"
  728.     If (STRING002 == "7") STRING034 = "/M Code Supplement"
  729.     STRING034 = STRING034 + " for $ "
  730.     PrintLn 
  731.     Print "@X0FProduct Ordered: "
  732.     Print "@X07", STRING034
  733.     STRING039 = TINTEGER006(INTEGER005, 1)
  734.     STRING039 = STRING039 + ".00"
  735.     PrintLn STRING039
  736.     PrintLn 
  737.     STRING001 = "Y"
  738.     InputYN "Is the above correct (Y/N)", STRING001, 14
  739.     PrintLn 
  740.     If (STRING001 == "N") Goto LABEL034
  741.     If ((INTEGER005 == 1) || (INTEGER005 == 7)) Goto LABEL035
  742.     PrintLn 
  743.     STRING001 = "Y"
  744.     InputYN "Download your upgrade and save $25 (Y/N)", STRING001, 14
  745.     If (STRING001 == "N") Goto LABEL035
  746.     INTEGER028 = TINTEGER006(INTEGER005, 1) - 25
  747.     STRING039 = INTEGER028
  748.     STRING039 = STRING039 + ".00 via D/L"
  749.     BOOLEAN003 = 1
  750.     :LABEL035
  751.     INTEGER024 = INTEGER024 + 1
  752.     TINTEGER015(INTEGER024, 1) = TINTEGER006(INTEGER005, 1)
  753.     If (BOOLEAN003) TINTEGER015(INTEGER024, 1) = TINTEGER015(INTEGER024, 1) - 25
  754.     If (!BOOLEAN003) TINTEGER015(INTEGER024, 2) = TINTEGER006(INTEGER005, 2)
  755.     TSTRING038(INTEGER024) = STRING034 + STRING039
  756.     Goto LABEL028
  757.     :LABEL036
  758.     Cls
  759.     INTEGER013 = 0
  760.     BOOLEAN004 = 0
  761.     DispFile "c:\pcb\gen\sprt.txt", 0
  762.     PrintLn 
  763.     STRING002 = ""
  764.     InputStr "Support Renewal Selection: (1-2), (E)xit", STRING002, 14, 1, "12E", 10
  765.     PrintLn 
  766.     If (STRING002 == "") Goto LABEL028
  767.     If (InStr("12", STRING002) < 1) Goto LABEL028
  768.     INTEGER013 = STRING002
  769.     If (STRING002 == "1") STRING037 = "Standard Renewal"
  770.     If (STRING002 == "2") STRING037 = "Extended Renewal"
  771.     STRING037 = STRING037 + " for $ "
  772.     PrintLn 
  773.     Print "@X0FSupport Ordered: "
  774.     Print "@X07", STRING037
  775.     STRING039 = TINTEGER014(INTEGER013)
  776.     STRING039 = STRING039 + ".00"
  777.     PrintLn STRING039
  778.     PrintLn 
  779.     STRING001 = "Y"
  780.     InputYN "Is the above correct (Y/N)", STRING001, 14
  781.     PrintLn 
  782.     If (STRING001 == "N") Goto LABEL036
  783.     If (STRING002 == "1") Goto LABEL038
  784.     :LABEL037
  785.     STRING027 = "XL"
  786.     InputStr "What size T-Shirt do you want (L/XL/XXL)", STRING027, 14, 3, "XLxl", 2
  787.     PrintLn 
  788.     STRING027 = Upper(STRING027)
  789.     If (((STRING027 <> "L") && (STRING027 <> "XL")) && (STRING027 <> "XXL")) Goto LABEL037
  790.     STRING027 = "         T-Shirt Size: " + STRING027
  791.     BOOLEAN004 = 1
  792.     :LABEL038
  793.     INTEGER024 = INTEGER024 + 1
  794.     TINTEGER015(INTEGER024, 1) = TINTEGER014(INTEGER013)
  795.     TSTRING038(INTEGER024) = STRING037 + STRING039
  796.     Goto LABEL028
  797.     :LABEL039
  798.     Wait
  799.     Return
  800.     :LABEL040
  801.     Cls
  802.     INTEGER016 = 0
  803.     INTEGER017 = 0
  804.     INTEGER018 = 0
  805.     INTEGER025 = 1
  806.     INTEGER026 = 1
  807.     BOOLEAN006 = 0
  808.     :LABEL041
  809.     If (INTEGER024 == 0) Goto LABEL063
  810.     If (TINTEGER015(INTEGER025, 1) > 0) INTEGER016 = INTEGER016 + TINTEGER015(INTEGER025, 2)
  811.     INTEGER025 = INTEGER025 + 1
  812.     If (INTEGER025 <= INTEGER024) Goto LABEL041
  813.     If (INTEGER016 == 0) Goto LABEL064
  814.     If (BOOLEAN001) Goto LABEL046
  815.     FOpen 1, "c:\pcb\gen\domestic.fex", 0, 0
  816.     INTEGER025 = 1
  817.     :LABEL042
  818.     FGet 1, STRING040
  819.     BOOLEAN008 = Ferr(1)
  820.     If (BOOLEAN008) Goto LABEL043
  821.     If (Left(STRING040, 1) == ";") Goto LABEL042
  822.     If (INTEGER025 == INTEGER016) Goto LABEL044
  823.     INTEGER025 = INTEGER025 + 1
  824.     Goto LABEL042
  825.     :LABEL043
  826.     STRING040 = "72+100 130 150"
  827.     :LABEL044
  828.     FClose 1
  829.     INTEGER029 = Mid(STRING040, 4, 3)
  830.     INTEGER030 = Mid(STRING040, 8, 3)
  831.     INTEGER031 = Mid(STRING040, 12, 3)
  832.     If ((STRING008 <> "HI") && (STRING008 <> "AK")) Goto LABEL045
  833.     INTEGER029 = INTEGER029 + 10
  834.     INTEGER030 = INTEGER030 + 10
  835.     INTEGER031 = INTEGER031 + 10
  836.     :LABEL045
  837.     PrintLn 
  838.     Print "@X0EYour total shipping weight is @X0F"
  839.     Print INTEGER016
  840.     PrintLn "@X0E pounds.  We ship only by @X0CFederal Express@X0E."
  841.     PrintLn "@X0EFederal Express delivery days are based on '@X0ABusiness Days@X0E' and do @X0CNOT@X0E"
  842.     PrintLn "include weekends or Holidays.  How would you like your order shipped:"
  843.     PrintLn 
  844.     Print "@X0F(1)@X0E  Economy Two-Day Business Service for ............... $ @X0F"
  845.     Print INTEGER029
  846.     PrintLn ".00"
  847.     Print "@X0F(2)@X0E  Standard Overnight (3:30pm delivery most areas) for  $ @X0F"
  848.     Print INTEGER030
  849.     PrintLn ".00"
  850.     Print "@X0F(3)@X0E  Priority Overnight (10:30am delivery most areas) for $ @X0F"
  851.     Print INTEGER031
  852.     PrintLn ".00"
  853.     PrintLn 
  854.     STRING001 = "1"
  855.     InputStr "Shipping Method Desired: (1) Economy, (2) Standard, (3) Priority", STRING001, 14, 1, "123", 2
  856.     PrintLn 
  857.     If (STRING001 == "1") INTEGER018 = INTEGER029
  858.     If (STRING001 == "2") INTEGER018 = INTEGER030
  859.     If (STRING001 == "3") INTEGER018 = INTEGER031
  860.     If (STRING001 == "1") STRING046 = "2-Day Economy"
  861.     If (STRING001 == "2") STRING046 = "Standard Overnight"
  862.     If (STRING001 == "3") STRING046 = "Priority Overnight"
  863.     Goto LABEL063
  864.     :LABEL046
  865.     BOOLEAN006 = 0
  866.     FOpen 1, "c:\pcb\gen\country.idx", 0, 0
  867.     Print "@X0FPlease wait while we load non-domestic shipping tables ..."
  868.     :LABEL047
  869.     FGet 1, STRING041
  870.     BOOLEAN008 = Ferr(1)
  871.     If (BOOLEAN008) Goto LABEL049
  872.     If (Left(STRING041, 1) == ";") Goto LABEL047
  873.     STRING042 = Left(STRING041, 15)
  874.     STRING042 = RTrim(STRING042, " ")
  875.     If (InStr(STRING017, STRING042) > 0) Goto LABEL048
  876.     Goto LABEL047
  877.     :LABEL048
  878.     BOOLEAN006 = 1
  879.     Goto LABEL050
  880.     :LABEL049
  881.     BOOLEAN006 = 0
  882.     Beep
  883.     PrintLn 
  884.     PrintLn 
  885.     Print "@X0CAn exact country match on country '@X0F", STRING017, "@X0C' was not found!"
  886.     :LABEL050
  887.     FClose 1
  888.     STRING043 = "7"
  889.     STRING044 = "H"
  890.     If (BOOLEAN006) STRING043 = Mid(STRING041, 16, 1)
  891.     If (BOOLEAN006) STRING044 = Mid(STRING041, 18, 1)
  892.     If (STRING043 == "0") Goto LABEL054
  893.     If (INTEGER016 > 72) Goto LABEL052
  894.     FOpen 1, "c:\pcb\gen\overseas.fex", 0, 0
  895.     INTEGER025 = 1
  896.     :LABEL051
  897.     FGet 1, STRING041
  898.     BOOLEAN008 = Ferr(1)
  899.     If (BOOLEAN008) Goto LABEL052
  900.     If (Left(STRING041, 1) == ";") Goto LABEL051
  901.     If (INTEGER025 == INTEGER016) Goto LABEL053
  902.     INTEGER025 = INTEGER025 + 1
  903.     Goto LABEL051
  904.     :LABEL052
  905.     STRING041 = "72+  200  270  310  295  360  540  660"
  906.     :LABEL053
  907.     FClose 1
  908.     If (STRING043 == "1") INTEGER031 = Mid(STRING041, 6, 3)
  909.     If (STRING043 == "2") INTEGER031 = Mid(STRING041, 11, 3)
  910.     If (STRING043 == "3") INTEGER031 = Mid(STRING041, 16, 3)
  911.     If (STRING043 == "4") INTEGER031 = Mid(STRING041, 21, 3)
  912.     If (STRING043 == "5") INTEGER031 = Mid(STRING041, 26, 3)
  913.     If (STRING043 == "6") INTEGER031 = Mid(STRING041, 31, 3)
  914.     If (STRING043 == "7") INTEGER031 = Mid(STRING041, 36, 3)
  915.     :LABEL054
  916.     If (STRING044 == "0") Goto LABEL058
  917.     If (INTEGER016 > 72) Goto LABEL056
  918.     FOpen 1, "c:\pcb\gen\overseas.dhl", 0, 0
  919.     INTEGER025 = 1
  920.     :LABEL055
  921.     FGet 1, STRING041
  922.     BOOLEAN008 = Ferr(1)
  923.     If (BOOLEAN008) Goto LABEL056
  924.     If (Left(STRING041, 1) == ";") Goto LABEL055
  925.     If (INTEGER025 == INTEGER016) Goto LABEL057
  926.     INTEGER025 = INTEGER025 + 1
  927.     Goto LABEL055
  928.     :LABEL056
  929.     STRING041 = "72+  205  215  220  195  300  380  250  440"
  930.     :LABEL057
  931.     FClose 1
  932.     If (STRING044 == "A") INTEGER032 = Mid(STRING041, 6, 3)
  933.     If (STRING044 == "B") INTEGER032 = Mid(STRING041, 11, 3)
  934.     If (STRING044 == "C") INTEGER032 = Mid(STRING041, 16, 3)
  935.     If (STRING044 == "D") INTEGER032 = Mid(STRING041, 21, 3)
  936.     If (STRING044 == "E") INTEGER032 = Mid(STRING041, 26, 3)
  937.     If (STRING044 == "F") INTEGER032 = Mid(STRING041, 31, 3)
  938.     If (STRING044 == "G") INTEGER032 = Mid(STRING041, 36, 3)
  939.     If (STRING044 == "H") INTEGER032 = Mid(STRING041, 41, 3)
  940.     :LABEL058
  941.     PrintLn 
  942.     PrintLn 
  943.     If (BOOLEAN006) Goto LABEL059
  944.     Beep
  945.     STRING001 = "R"
  946.     PrintLn "@X0EDo you want to use the (@X0BD@X0E)efault shipping charges or (@X0BR@X0E)e-enter your Country"
  947.     InputStr "in a different format in order to find a possible direct match (D/R)", STRING001, 14, 1, "DR", 10
  948.     PrintLn "@X0E"
  949.     If (STRING001 == "D") Cls
  950.     If (STRING001 == "D") Goto LABEL059
  951.     PrintLn 
  952.     InputText "  Ship Country", STRING017, 14, 20
  953.     Cls
  954.     BOOLEAN001 = 0
  955.     STRING017 = Upper(STRING017)
  956.     If (STRING017 <> "USA") BOOLEAN001 = 1
  957.     If (STRING017 == "") BOOLEAN001 = 0
  958.     Goto LABEL046
  959.     :LABEL059
  960.     Print "@X0ETotal shipping weight is @X0F"
  961.     Print INTEGER016
  962.     PrintLn "@X0E pounds.  Available shipping to your area"
  963.     PrintLn "is as follows:"
  964.     PrintLn 
  965.     Print "@X0F(1)@X0E  Federal Express International for USD $ @X0F"
  966.     If (STRING043 == "0") PrintLn "(Not Available)"
  967.     If (STRING043 <> "0") Print Right(INTEGER031, 3)
  968.     If (STRING043 <> "0") PrintLn ".00"
  969.     Print "@X0F(2)@X0E  DHL International for ........... USD $ @X0F"
  970.     If (STRING044 == "0") PrintLn "(Not Available)"
  971.     If (STRING044 <> "0") Print Right(INTEGER032, 3)
  972.     If (STRING044 <> "0") PrintLn ".00"
  973.     If (STRING017 <> "CANADA") Goto LABEL060
  974.     If (INTEGER016 <= 20) INTEGER033 = 9 + INTEGER016
  975.     If ((INTEGER016 > 20) && (INTEGER016 < 31)) INTEGER033 = 30
  976.     If (INTEGER016 > 30) INTEGER033 = INTEGER016
  977.     Print "@X0F(3)@X0E  UPS Canada Delivery for ......... USD $ @X0F"
  978.     Print Right(INTEGER033, 3)
  979.     PrintLn ".00"
  980.     :LABEL060
  981.     PrintLn 
  982.     PrintLn "@X0AFederal Express@X0E maintains their own Custom's Agents and usually provides"
  983.     PrintLn "@X0B2-3 day service@X0E throughout the world.  @X0ADHL@X0E requires your own Custom's Agent"
  984.     PrintLn "and usually provides @X0B4-5 day service@X0E.  Both FedEx and DHL may not be"
  985.     PrintLn "available in your area.  @X0AUPS@X0E to Canada takes about @X0B5-10@X0E days to arrive"
  986.     PrintLn "depending on custom's delays."
  987.     PrintLn 
  988.     PrintLn "@X0DFor all Canadian orders, you will be required to pay GST on package arrival."
  989.     PrintLn "For all overseas orders, you will be responsible for import tariff's (if any)."
  990.     :LABEL061
  991.     PrintLn "@X0E"
  992.     STRING001 = "1"
  993.     If (Left(STRING045, 1) == "F") STRING001 = "1"
  994.     If (Left(STRING045, 1) == "D") STRING001 = "2"
  995.     If (Left(STRING045, 1) == "U") STRING001 = "3"
  996.     If (STRING017 <> "CANADA") InputStr "Shipping Method Desired: (1) FedEx, (2) DHL", STRING001, 14, 1, "12", 2
  997.     If (STRING017 == "CANADA") InputStr "Shipping Method Desired: (1) FedEx, (2) DHL, (3) UPS", STRING001, 14, 1, "123", 2
  998.     PrintLn 
  999.     If (STRING001 == "") Goto LABEL061
  1000.     If ((STRING001 == "1") && (STRING043 == "0")) Goto LABEL062
  1001.     If ((STRING001 == "2") && (STRING044 == "0")) Goto LABEL062
  1002.     If ((STRING001 == "3") && (STRING017 <> "CANADA")) Goto LABEL062
  1003.     INTEGER018 = INTEGER031
  1004.     STRING045 = "Federal Express"
  1005.     If (STRING001 == "2") INTEGER018 = INTEGER032
  1006.     If (STRING001 == "2") STRING045 = "DHL Overseas"
  1007.     If (STRING001 == "3") INTEGER018 = INTEGER033
  1008.     If (STRING001 == "3") STRING045 = "UPS Canada"
  1009.     Goto LABEL063
  1010.     :LABEL062
  1011.     Beep
  1012.     PrintLn 
  1013.     PrintLn "@X0CYou must choose a valid shipping method!  If you wish to leave us a comment"
  1014.     PrintLn "concerning the shipping charges, you will be given the opportunity of doing so"
  1015.     PrintLn "at the time you (S)ave your order."
  1016.     PrintLn "@X0E"
  1017.     Gosub LABEL039
  1018.     Goto LABEL058
  1019.     :LABEL063
  1020.     Cls
  1021.     BOOLEAN007 = 0
  1022.     :LABEL064
  1023.     PrintLn "@X0EYou have currently placed an order for the following:"
  1024.     PrintLn 
  1025.     INTEGER025 = 1
  1026.     :LABEL065
  1027.     If (INTEGER024 == 0) Goto LABEL067
  1028.     If (TINTEGER015(INTEGER025, 1) < 1) Goto LABEL066
  1029.     BOOLEAN007 = 1
  1030.     Print "@X0F     "
  1031.     Print Right(INTEGER026, 2)
  1032.     INTEGER026 = INTEGER026 + 1
  1033.     PrintLn "@X07. ", TSTRING038(INTEGER025)
  1034.     INTEGER017 = INTEGER017 + TINTEGER015(INTEGER025, 1)
  1035.     :LABEL066
  1036.     INTEGER025 = INTEGER025 + 1
  1037.     If (INTEGER025 <= INTEGER024) Goto LABEL065
  1038.     If (BOOLEAN007) Goto LABEL068
  1039.     :LABEL067
  1040.     PrintLn "@X07     Nothing!"
  1041.     PrintLn 
  1042.     INTEGER024 = 0
  1043.     Gosub LABEL039
  1044.     STRING002 = ""
  1045.     Return
  1046.     :LABEL068
  1047.     PrintLn 
  1048.     If (INTEGER016 == 0) Goto LABEL069
  1049.     Print "@X0F             Sub-Total: USD $ "
  1050.     Print "@X07"
  1051.     Print Right(INTEGER017, 5)
  1052.     PrintLn ".00"
  1053.     Print "@X0F           S&H Charges: USD $ "
  1054.     Print "@X07"
  1055.     Print Right(INTEGER018, 5)
  1056.     PrintLn ".00"
  1057.     :LABEL069
  1058.     INTEGER019 = INTEGER017 + INTEGER018
  1059.     Print "@X0F           Grand Total: USD $ "
  1060.     Print "@X07"
  1061.     Print Right(INTEGER019, 5)
  1062.     PrintLn ".00"
  1063.     PrintLn 
  1064.     STRING002 = ""
  1065.     If (STRING015 <> "UT") Return
  1066.     If (INTEGER016 == 0) Return
  1067.     PrintLn "@X0ASince you are from Utah, we will be adding 6.25% sales tax to"
  1068.     PrintLn "your order at the time the credit card is run."
  1069.     PrintLn 
  1070.     Return
  1071.     :LABEL070
  1072.     BOOLEAN005 = 0
  1073.     If (INTEGER024 <> 0) Goto LABEL071
  1074.     Beep
  1075.     PrintLn 
  1076.     PrintLn "@X0CNothing has been Ordered!"
  1077.     PrintLn 
  1078.     Gosub LABEL039
  1079.     Goto LABEL019
  1080.     :LABEL071
  1081.     Gosub LABEL040
  1082.     PrintLn 
  1083.     STRING001 = "Y"
  1084.     InputYN "Is the above information correct (Y/N)", STRING001, 14
  1085.     PrintLn 
  1086.     If (STRING001 == "N") Goto LABEL019
  1087.     :LABEL072
  1088.     PrintLn 
  1089.     STRING001 = "N"
  1090.     PrintLn "@X0EBefore actually saving your order, you can leave us two general comment lines"
  1091.     InputYN "@X0Econcerning the placement of this order.  Do you wish to do so (Y/N)", STRING001, 14
  1092.     If (STRING001 <> "Y") Goto LABEL073
  1093.     PrintLn 
  1094.     InputText "Comment 1: ", STRING028, 14, 50
  1095.     PrintLn 
  1096.     InputText "Comment 2: ", STRING029, 14, 50
  1097.     PrintLn 
  1098.     :LABEL073
  1099.     Cls
  1100.     DispFile "c:\pcb\gen\legal.txt", 0
  1101.     PrintLn 
  1102.     Print "    @X0FWe will be charging your credit card in the amount of USD $ "
  1103.     Print INTEGER019
  1104.     PrintLn ".00"
  1105.     PrintLn 
  1106.     STRING001 = "Y"
  1107.     InputYN "    Do you agree to this purchase (Y/N)", STRING001, 14
  1108.     PrintLn 
  1109.     If (STRING001 <> "Y") Goto LABEL020
  1110.     If (!BOOLEAN009) FPutLn 0, "            User Info: ", ""
  1111.     FPutLn 0, "        Purchaser S/N: ", STRING004
  1112.     FPutLn 0, "      Customer Number: ", STRING030
  1113.     FPutLn 0, ""
  1114.     FPutLn 0, "     CREDIT CARD INFO."
  1115.     FPutLn 0, "        Credit Card #: ", STRING023
  1116.     FPutLn 0, "      Expiration Date: ", STRING024
  1117.     FPutLn 0, "    Cardholder's Name: ", STRING021
  1118.     FPutLn 0, "   Cardholder's Phone: ", STRING020
  1119.     FPutLn 0, ""
  1120.     FPutLn 0, "  SOLD TO INFORMATION"
  1121.     FPutLn 0, "          Voice Phone: ", STRING025
  1122.     FPutLn 0, "            FAX Phone: ", STRING026
  1123.     FPutLn 0, "            Purchaser: ", STRING003
  1124.     If (STRING005 <> "") FPutLn 0, "              Company: ", STRING005
  1125.     FPutLn 0, "              Address: ", STRING006
  1126.     FPutLn 0, "       City/State/ZIP: ", STRING007, ", ", STRING008, "  ", STRING009
  1127.     FPutLn 0, "              Country: ", STRING010
  1128.     FPutLn 0, ""
  1129.     If (BOOLEAN002) Then
  1130.         FPutLn 0, "  SHIP TO INFORMATION"
  1131.         FPutLn 0, "            Ship Name: ", STRING011
  1132.         If (STRING012 <> "") FPutLn 0, "         Ship Company: ", STRING012
  1133.         FPutLn 0, "         Ship Address: ", STRING013
  1134.         FPutLn 0, "  Ship City/State/ZIP: ", STRING014, ", ", STRING015, "  ", STRING016
  1135.         FPutLn 0, "         Ship Country: ", STRING017
  1136.         FPutLn 0, ""
  1137.     Endif
  1138.     FPutLn 0, "PRODUCTS/SERVICES ORDERED"
  1139.     INTEGER025 = 1
  1140.     :LABEL074
  1141.     FPut 0, "         Product # "
  1142.     FPut 0, Right(INTEGER025, 2)
  1143.     FPutLn 0, ": ", TSTRING038(INTEGER025)
  1144.     INTEGER025 = INTEGER025 + 1
  1145.     If (INTEGER025 <= INTEGER024) Goto LABEL074
  1146.     If (BOOLEAN004) FPutLn 0, "         T-Shirt Size: ", STRING027
  1147.     FPutLn 0, ""
  1148.     FPut 0, "          Ship Weight:  "
  1149.     FPut 0, INTEGER016
  1150.     FPutLn 0, " #'s"
  1151.     FPut 0, "            Sub-Total: $ "
  1152.     FPut 0, Right(INTEGER017, 5)
  1153.     FPutLn 0, ".00"
  1154.     FPut 0, "            S&H Total: $ "
  1155.     FPut 0, Right(INTEGER018, 5)
  1156.     FPutLn 0, ".00"
  1157.     FPut 0, "          Grand Total: $ "
  1158.     FPut 0, Right(INTEGER019, 5)
  1159.     FPutLn 0, ".00"
  1160.     FPut 0, "         Shipping via: "
  1161.     If (BOOLEAN001) FPutLn 0, STRING045
  1162.     If (!BOOLEAN001) FPutLn 0, STRING046
  1163.     FPutLn 0, ""
  1164.     FPutLn 0, "      Agree to Charge: YES"
  1165.     FPutLn 0, "      Order Comment 1: ", STRING028
  1166.     FPutLn 0, "      Order Comment 2: ", STRING029
  1167.     FPutLn 0, ""
  1168.     FPutLn 0, ""
  1169.     FPutLn 0, " Card Authorization #: _______________________"
  1170.     FPutLn 0, ""
  1171.     FPutLn 0, " Authorization Ref. #: _______________________"
  1172.     End
  1173.  
  1174. ;------------------------------------------------------------------------------
  1175. ;
  1176. ; Usage report (before postprocessing)
  1177. ;
  1178. ; ■ Statements used :
  1179. ;
  1180. ;    1       End
  1181. ;    20      Cls
  1182. ;    1       Wait
  1183. ;    150     Goto 
  1184. ;    351     Let 
  1185. ;    63      Print 
  1186. ;    222     PrintLn 
  1187. ;    220     If 
  1188. ;    10      DispFile 
  1189. ;    4       FOpen 
  1190. ;    4       FClose 
  1191. ;    4       FGet 
  1192. ;    11      FPut 
  1193. ;    45      FPutLn 
  1194. ;    1       GetUser
  1195. ;    25      InputStr 
  1196. ;    16      InputYN 
  1197. ;    1       InputInt 
  1198. ;    18      Gosub 
  1199. ;    7       Return
  1200. ;    1       Stop
  1201. ;    19      InputText 
  1202. ;    15      Beep
  1203. ;
  1204. ;
  1205. ; ■ Functions used :
  1206. ;
  1207. ;    92      +
  1208. ;    3       -
  1209. ;    181     ==
  1210. ;    27      <>
  1211. ;    10      <
  1212. ;    5       <=
  1213. ;    10      >
  1214. ;    2       >=
  1215. ;    4       !
  1216. ;    19      &&
  1217. ;    12      ||
  1218. ;    8       Len(
  1219. ;    19      Upper()
  1220. ;    34      Mid()
  1221. ;    21      Left()
  1222. ;    12      Right()
  1223. ;    4       Ferr()
  1224. ;    8       InStr()
  1225. ;    2       RTrim()
  1226. ;    2       Date()
  1227. ;    1       U_Name()
  1228. ;    1       Year()
  1229. ;    1       Month()
  1230. ;
  1231. ;------------------------------------------------------------------------------
  1232. ;
  1233. ; Analysis flags : No flag
  1234. ;
  1235. ;------------------------------------------------------------------------------
  1236. ;
  1237. ; Postprocessing report
  1238. ;
  1239. ;    0       For/Next
  1240. ;    0       While/EndWhile
  1241. ;    1       If/Then or If/Then/Else
  1242. ;    0       Select Case
  1243. ;
  1244. ;------------------------------------------------------------------------------
  1245. ;                 AEGiS Corp - Break the routines, code against the machines!
  1246. ;------------------------------------------------------------------------------
  1247.