home *** CD-ROM | disk | FTP | other *** search
- ;------------------------------------------------------------------------------
- ; .ss.
- ; `²²'
- ; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
- ; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
- ; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
- ; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
- ; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
- ; .sS²°$$$²²°"' d²°'
- ; .$$² .$$'
- ; $$$.,d$$'
- ; `²S$$S²'
- ;------------------------------------------------------------------------------
- ; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
- ;------------------------------------------------------------------------------
- ; PPE 1.OO (plain) - Analysis ON - Postprocessing ON
- ;------------------------------------------------------------------------------
-
- Date DATE002
- Integer INTEGER002
- Integer TINTEGER003(10)
- Integer INTEGER004
- Integer INTEGER005
- Integer INTEGER006
- Integer INTEGER007
- Integer INTEGER008
- Integer INTEGER009
- Integer INTEGER010
- Integer INTEGER011
- Integer INTEGER012
- Money MONEY001
- Money MONEY002
- Money TMONEY003(10)
- Money MONEY004
- String STRING001
- String STRING002
- String STRING003
- String STRING004
- String TSTRING005(10)
- String STRING006
- String STRING007
- String STRING008
- String STRING009
- String STRING010
- String STRING011
- String STRING012
- String STRING013
- String STRING014
- String STRING015
- String STRING016
- String STRING017
- String STRING018
- String STRING019
- String STRING020
- String STRING021
- String STRING022
- String STRING023
- String STRING024
- String STRING025
- String STRING026
- String STRING027
- String STRING028
- String STRING029
- String STRING030
- String TSTRING031(10)
- String TSTRING032(10)
- String TSTRING033(10)
- String STRING034
- String STRING035
- String STRING036
- String STRING037
- String STRING038
- String TSTRING039(26)
- String STRING040
- String STRING041
-
- ;------------------------------------------------------------------------------
-
- GetUser
- FOpen 1, PPEPath() + "credit.cnf", 2, 3
- FGet 1, STRING028
- FGet 1, STRING019
- FGet 1, STRING025
- FGet 1, STRING026
- FGet 1, STRING029
- FGet 1, STRING030
- FGet 1, STRING041
- FGet 1, INTEGER010
- FGet 1, INTEGER012
- FGet 1, STRING040
- FGet 1, INTEGER009
- FGet 1, INTEGER011
- FGet 1, STRING018
- FGet 1, STRING010
- FGet 1, STRING009
- FGet 1, STRING034
- :LABEL001
- STRING002 = STRING002 + 1
- FGet 1, TSTRING031(STRING002)
- FGet 1, TSTRING032(STRING002)
- FGet 1, TSTRING033(STRING002)
- FGet 1, TINTEGER003(STRING002)
- FGet 1, TMONEY003(STRING002)
- If (TSTRING031(STRING002) == "***") Then
- FClose 1
- Goto LABEL002
- Else
- Goto LABEL001
- Endif
- FClose 1
- :LABEL002
- If (Exist(STRING025)) DispFile STRING025, 2 + 1 + 4
- PrintLn Chr(13)
- :LABEL003
- FOpen 1, PPEPath() + "credit.txt", 0, 3
- For INTEGER004 = 1 To 26
- FGet 1, TSTRING039(INTEGER004)
- Next
- FClose 1
- DispFile STRING026, 2 + 1 + 4
- InputStr TSTRING039(1), STRING020, 14, 1, Mask_Ascii(), 256
- For STRING003 = 1 To STRING002
- If (Upper(STRING020) == TSTRING031(STRING003)) Goto LABEL005
- If (Upper(STRING020) == "E") Goto LABEL020
- If (STRING020 == "") Goto LABEL003
- Next
- Goto LABEL003
- :LABEL004
- If (Mid(TSTRING039(2), 1, 1) == "%") Then
- DispStr TSTRING039(2)
- Else
- PrintLn TSTRING039(2)
- Endif
- For STRING007 = 1 To Len(U_Name())
- STRING008 = Mid(U_Name(), STRING007, 1)
- If (STRING008 == " ") STRING008 = "_"
- STRING017 = STRING017 + STRING008
- Next
- STRING017 = Mid(STRING017, 1, 8) + ".INV"
- FOpen 1, PPEPath() + "invoice", 2, 3
- FGet 1, INTEGER002
- FClose 1
- FOpen 1, PPEPath() + "invoice", 2, 3
- FGet 1, STRING023
- FClose 1
- FOpen 1, PPEPath() + "invoice", 2, 3
- FPut 1, INTEGER002 + 1
- FClose 1
- STRING038 = INTEGER002
- FOpen 1, STRING029 + STRING038, 2, 3
- FPutLn 1, "════════════════════════════════════════════════════════════════════════"
- FPutLn 1, ""
- FPutLn 1, "Invoice #: ", STRING023, " Date: ", Date()
- FPutLn 1, ""
- FPutLn 1, "Bill to: Ordered for:"
- FPutLn 1, ""
- FPutLn 1, STRING012 + Space(36 - Len(STRING012)) + STRING016
- FPutLn 1, STRING013 + Space(36 - Len(STRING013)) + ""
- FPutLn 1, STRING014
- FPutLn 1, ""
- FPutLn 1, " Credit Card: " + CCType(STRING001)
- FPutLn 1, " Credit Card Number: " + FmtCC(STRING001)
- FPutLn 1, " Expiration Date: ", STRING027
- FPutLn 1, " Voice Phone Number: " + STRING015
- FPutLn 1, ""
- FPutLn 1, "════════════════════════════════════════════════════════════════════════"
- FPutLn 1, ""
- FPutLn 1, " Membership Subscription at Security Level ", TSTRING033(STRING003), Space(63 - Len(STRING024)) + " ", TMONEY003(STRING003)
- FPutLn 1, " Membership for: ", STRING016
- FPutLn 1, " New Expiration Date: ", DATE002
- FPutLn 1, ""
- FPutLn 1, Space(63 - Len(STRING041)) + STRING041 + " ", MONEY004
- FPutLn 1, Space(63 - Len(STRING040)) + STRING040 + " ", MONEY002
- FPutLn 1, " ========="
- FPutLn 1, " Complete Charge to Your Credit Card : ", MONEY001
- FPutLn 1, ""
- FPutLn 1, "════════════════════════════════════════════════════════════════════════"
- FPutLn 1, ""
- FPutLn 1, " A Charge in the amount of ", MONEY001, " will show on your next"
- FPutLn 1, " " + CCType(STRING001) + " credit statement."
- FPutLn 1, ""
- FPutLn 1, " Thanks for Purchasing a Membership with Us!"
- FPutLn 1, Space(34 - (Len(STRING028) + Len(STRING019)) / 2), STRING028 + " SysOp, " + STRING019
- FPutLn 1, "═══════════════════════════════════════════════════════════════════════"
- FClose 1
- FOpen 1, STRING030 + STRING017, 2, 3
- FPutLn 1, "════════════════════════════════════════════════════════════════════════"
- FPutLn 1, ""
- FPutLn 1, "Invoice #: ", STRING023, " Date: ", Date()
- FPutLn 1, ""
- FPutLn 1, "Bill to: Ordered for:"
- FPutLn 1, ""
- FPutLn 1, STRING012 + Space(36 - Len(STRING012)) + STRING016
- FPutLn 1, STRING013 + Space(36 - Len(STRING013)) + ""
- FPutLn 1, STRING014
- FPutLn 1, ""
- FPutLn 1, " Credit Card: " + CCType(STRING001)
- FPutLn 1, " Credit Card Number: XXXXXXXXXXXXXXXX"
- FPutLn 1, " Expiration Date: ", STRING027
- FPutLn 1, " Voice Phone Number: " + STRING015
- FPutLn 1, ""
- FPutLn 1, "════════════════════════════════════════════════════════════════════════"
- FPutLn 1, ""
- FPutLn 1, " Membership Subscription at Security Level ", TSTRING033(STRING003), Space(63 - Len(STRING024)) + " ", TMONEY003(STRING003)
- FPutLn 1, " Membership for: ", STRING016
- FPutLn 1, " New Expiration Date: ", DATE002
- FPutLn 1, ""
- FPutLn 1, Space(63 - Len(STRING041)) + STRING041 + " ", MONEY004
- FPutLn 1, Space(63 - Len(STRING040)) + STRING040 + " ", MONEY002
- FPutLn 1, " ========="
- FPutLn 1, " Complete Charge to Your Credit Card : ", MONEY001
- FPutLn 1, ""
- FPutLn 1, "════════════════════════════════════════════════════════════════════════"
- FPutLn 1, ""
- FPutLn 1, " A Charge in the amount of ", MONEY001, " will show on your next"
- FPutLn 1, " " + CCType(STRING001) + " credit statement."
- FPutLn 1, ""
- FPutLn 1, " Thanks for Purchasing a Membership with Us!"
- FPutLn 1, Space(34 - (Len(STRING028) + Len(STRING019)) / 2), STRING028 + " SysOp, " + STRING019
- FPutLn 1, "═══════════════════════════════════════════════════════════════════════"
- FClose 1
- If (Mid(TSTRING039(3), 1, 1) == "%") Then
- DispStr TSTRING039(3)
- Else
- PrintLn TSTRING039(3)
- Endif
- Goto LABEL017
- Goto LABEL020
- :LABEL005
- STRING022 = ""
- DispFile TSTRING032(STRING003), 2 + 1 + 4
- InputText TSTRING039(4), STRING022, 13, 1
- If (Upper(STRING022) == "N") Then
- Goto LABEL003
- Else
- Goto LABEL006
- Endif
- :LABEL006
- Cls
- If (Mid(TSTRING039(5), 1, 1) == "%") Then
- DispStr TSTRING039(5)
- Else
- PrintLn TSTRING039(5)
- Endif
- PrintLn " "
- PrintLn "@X0A[@X0C#@X0A] min. [@X0C#@X0A] max. Refers to the MINIMUM and MAXIMUM length of you answer"
- STRING012 = ""
- PrintLn " "
- PrintLn "Press ENTER alone on the FIRST question only to abort your entry."
- InputStr TSTRING039(6), STRING012, 10, 25, Mask_Ascii(), 256
- STRING012 = Upper(STRING012)
- If (STRING012 == "") Goto LABEL003
- :LABEL007
- Cls
- PrintLn "@X0A[@X0C5@X0A] min. [@X0C40@X0A] max."
- PrintLn " "
- InputStr TSTRING039(7), STRING013, 11, 40, Mask_Ascii(), 256
- If (Len(STRING013) < 5) Then
- PrintLn "@BEEP@ You Must Answer This Question"
- Goto LABEL007
- Endif
- STRING013 = Upper(STRING013)
- :LABEL008
- Cls
- PrintLn "@X0A[@X0C5@X0A] min. [@X0C40@X0A] max."
- PrintLn " "
- InputStr TSTRING039(8), STRING014, 12, 40, Mask_Ascii(), 256
- If (Len(STRING014) < 3) Then
- PrintLn "@BEEP@ You Must Answer This Question"
- Goto LABEL008
- Endif
- STRING014 = Upper(STRING014)
- :LABEL009
- Cls
- PrintLn "@X0A[@X0C7@X0A] min. [@X0C30@X0A] max."
- PrintLn " "
- InputStr TSTRING039(16), STRING015, 12, 35, "1234567890()-+extension.EXTENSION# ", 256
- If (Len(STRING015) < 7) Then
- PrintLn "@BEEP@ You Must Answer This Question"
- Goto LABEL009
- Endif
- If (Upper(STRING018) == "ALL") Goto LABEL010
- If (Upper(STRING009) == "N") Goto LABEL010
- TSTRING005(7) = "Is " + STRING018 + " State sales tax aplicable in your area (Y/n)"
- STRING011 = ""
- InputStr TSTRING005(7), STRING011, 10, 1, "YNyn", 256
- If (Upper(STRING011) == "N") INTEGER009 = "0"
- :LABEL010
- PrintLn " "
- STRING021 = ""
- Cls
- PrintLn " "
- PrintLn Space(41 - Len("Credit Card Information") / 2) + "@X0ECredit Card Information"
- PrintLn " "
- PrintLn Space(41 - Len(STRING012) / 2) + "@X0A", STRING012
- PrintLn Space(41 - Len(STRING013) / 2) + "@X0B", STRING013
- PrintLn Space(41 - Len(STRING014) / 2) + "@X0C", STRING014
- PrintLn Space(41 - Len(STRING015) / 2) + "@X0D", STRING015
- PrintLn " "
- InputStr TSTRING039(10), STRING021, 10, 1, "YnyN", 32 + 256
- If (Upper(STRING021) == "Y") Goto LABEL011
- Goto LABEL006
- :LABEL011
- STRING001 = ""
- STRING027 = ""
- PrintLn " "
- InputStr TSTRING039(11), STRING001, 13, 16, Mask_Num(), 256
- InputStr TSTRING039(12), STRING027, 14, 5, Mask_Num() + "/", 256
- If (STRING001 == "") Goto LABEL003
- Goto LABEL013
- :LABEL012
- Cls
- Color 15
- STRING016 = U_Name()
- Goto LABEL015
- :LABEL013
- STRING004 = STRING004 + 1
- INTEGER005 = Left(STRING027, 2)
- INTEGER006 = Right(STRING027, 2)
- INTEGER007 = Month(Date())
- INTEGER008 = Year(Date())
- If (INTEGER006 > 80) Then
- INTEGER006 = INTEGER006 + 1900
- Else
- INTEGER006 = INTEGER006 + 2000
- Endif
- If ((INTEGER005 > 12) || (INTEGER005 < 1)) Goto LABEL016
- If ((INTEGER005 < INTEGER007) && (INTEGER006 >= INTEGER008)) Goto LABEL014
- If (INTEGER006 < INTEGER008) Goto LABEL016
- If ((INTEGER006 < INTEGER008) && (INTEGER005 >= INTEGER007)) Goto LABEL016
- If (INTEGER006 > INTEGER008) Goto LABEL014
- If ((INTEGER006 == INTEGER008) && (INTEGER005 >= INTEGER007)) Goto LABEL014
- PrintLn
- :LABEL014
- If (CCType(STRING001) == "UNKNOWN") Then
- If (Mid(TSTRING039(17), 1, 1) == "%") Then
- DispStr TSTRING039(17)
- Else
- PrintLn TSTRING039(17)
- Endif
- Goto LABEL011
- Else
- PrintLn "That is a valid " + CCType(STRING001) + " Number"
- Goto LABEL012
- DATE002 = Date() + TINTEGER003(STRING003)
- Endif
- :LABEL015
- PrintLn "@X0A════════════════════════════════════════════════════════════════════════"
- PrintLn ""
- PrintLn "Invoice #: ", STRING023, " Date: ", Date()
- PrintLn ""
- PrintLn "Bill to: Ordered for:"
- PrintLn ""
- PrintLn STRING012 + Space(36 - Len(STRING012)) + STRING016
- PrintLn STRING013 + Space(36 - Len(STRING013)) + ""
- PrintLn STRING014
- PrintLn ""
- PrintLn " Credit Card: " + CCType(STRING001)
- PrintLn " Credit Card Number: " + FmtCC(STRING001)
- DATE002 = Date() + TINTEGER003(STRING003)
- PrintLn " Expiration Date: ", STRING027
- PrintLn " Voice Phone Number: " + STRING015
- PrintLn ""
- PrintLn "════════════════════════════════════════════════════════════════════════"
- PrintLn ""
- STRING024 = " Membership Subscription at Security Level " + TSTRING033(STRING003)
- PrintLn " Membership Subscription at Security Level ", TSTRING033(STRING003), Space(63 - Len(STRING024)) + " ", TMONEY003(STRING003)
- PrintLn " Membership for: ", STRING016
- PrintLn " New Expiration Date: ", DATE002
- PrintLn ""
- MONEY004 = (INTEGER010 * TMONEY003(STRING003)) / INTEGER012
- PrintLn Space(63 - Len(STRING041)) + STRING041 + " ", MONEY004
- MONEY002 = (TMONEY003(STRING003) * INTEGER009) / INTEGER011
- MONEY001 = MONEY004 + MONEY002 + TMONEY003(STRING003)
- PrintLn Space(63 - Len(STRING040)) + STRING040 + " ", MONEY002
- PrintLn " ========="
- PrintLn " Complete Charge to Your Credit Card : @X0C ", MONEY001
- PrintLn ""
- PrintLn "@X0A════════════════════════════════════════════════════════════════════════"
- PrintLn ""
- PrintLn " A Charge in the amount of ", MONEY001, " will show on your next"
- PrintLn " " + CCType(STRING001) + " credit statement."
- PrintLn ""
- PrintLn " Thanks for Purchasing a Membership with Us!"
- PrintLn Space(34 - (Len(STRING028) + Len(STRING019)) / 2), STRING028 + " SysOp, " + STRING019
- PrintLn "═══════════════════════════════════════════════════════════════════════"
- STRING022 = ""
- InputStr TSTRING039(19), STRING022, 15, 1, "YNyn", 256
- If (Upper(STRING022) == "N") Then
- Goto LABEL006
- Else
- Goto LABEL004
- Endif
- Goto LABEL020
- :LABEL016
- If (Mid(TSTRING039(20), 1, 1) == "%") Then
- DispStr TSTRING039(20)
- Else
- PrintLn TSTRING039(20)
- Endif
- PrintLn
- Goto LABEL011
- :LABEL017
- If (U_Sec == SysopSec()) Goto LABEL018
- If (U_Name() == Upper("RAY CAVA")) Goto LABEL018
- If (Upper(STRING034) == "N") Goto LABEL018
- U_Sec = TSTRING033(STRING003)
- U_ExpDate = DATE002
- :LABEL018
- PutUser
- Log "--------- Credit Card Subscription PPE ----------", 1
- STRING037 = "New expiration date: "
- Log DATE002, 0
- Log STRING037, 0
- Log TSTRING033(STRING003), 0
- STRING036 = "New Level: "
- Log STRING036, 0
- STRING035 = "Amount Charged: "
- Log MONEY001, 0
- Log STRING035, 0
- TSTRING005(9) = "Useing Invoice #: " + STRING023
- Log TSTRING005(9), 0
- TSTRING005(10) = U_Name() + " Has Just Purchased a Membership"
- Log TSTRING005(10), 0
- Log "--------- Credit Card Subscription PPE ----------", 1
- PrintLn Chr(13)
- Cls
- If (Mid(TSTRING039(21), 1, 1) == "%") Then
- DispStr TSTRING039(21)
- Else
- PrintLn TSTRING039(21)
- Endif
- Newlines 7
- If (Upper(STRING034) == "Y") PrintLn TSTRING039(22) + TSTRING033(STRING003)
- If (Upper(STRING034) == "Y") PrintLn TSTRING039(23) , DATE002
- If (Upper(STRING010) == "Y") PrintLn " You Invoice Name Is: " + STRING017
- If (Upper(STRING034) == "N") Then
- If (Mid(TSTRING039(24), 1, 1) == "%") Then
- DispStr TSTRING039(24)
- Goto LABEL019
- Endif
- PrintLn TSTRING039(24)
- Endif
- :LABEL019
- Newlines 6
- FAppend 1, PPEPath() + "CREDIT.LOG", 2, 3
- FPutLn 1, "════════════════════════════════════════════════════════════════════════"
- FPutLn 1, "Invoice #: ", STRING023, " Date: ", Date()
- FPutLn 1, "Bill to:"
- FPutLn 1, STRING012
- FPutLn 1, STRING013
- FPutLn 1, STRING014
- FPutLn 1, "Credit Card: " + CCType(STRING001)
- FPutLn 1, "Credit Card Number: " + FmtCC(STRING001)
- FPutLn 1, "Expiration Date: ", STRING027
- FPutLn 1, "Voice Phone Number: " + STRING015
- FPutLn 1, "New Security Level: " + TSTRING033(STRING003)
- FPutLn 1, "Amount Charged", MONEY001
- FPutLn 1, "For User:" + U_Name()
- FClose 1
- FOpen 1, PPEPath() + "REG.TXT", 2, 3
- FPutLn 1, "--------- Credit Card Subscription PPE ----------"
- FPutLn 1, TSTRING005(10)
- FPutLn 1, TSTRING005(9)
- FPutLn 1, STRING035
- FPutLn 1, MONEY001
- FPutLn 1, STRING036
- FPutLn 1, TSTRING033(STRING003)
- FPutLn 1, STRING037
- FPutLn 1, DATE002
- FPutLn 1, "--------- Credit Card Subscription PPE ----------"
- FClose 1
- Message 0, "SYSOP", U_Name(), "Subscription", "R", 0, 0, 0, PPEPath() + "REG.TXT"
- Message 0, U_Name(), "SYSOP", "Subscription", "R", 0, 0, 0, PPEPath() + "THANKS.TXT"
- If (Mid(TSTRING039(25), 1, 1) == "%") Then
- DispStr TSTRING039(25)
- Else
- PrintLn TSTRING039(25)
- Endif
- If (Upper(STRING010) == "Y") Then
- STRING006 = ""
- InputStr TSTRING039(26), STRING006, 12, 1, "YNyn", 256
- PrintLn " "
- If (Upper(STRING006) == "N") Then
- Goto LABEL020
- Goto LABEL020
- Endif
- KbdStuff "D;" + STRING017 + Chr(13)
- End
- Endif
- :LABEL020
- KbdStuff Chr(13)
- End
-
- ;------------------------------------------------------------------------------
- ;
- ; Usage report (before postprocessing)
- ;
- ; ■ Statements used :
- ;
- ; 2 End
- ; 7 Cls
- ; 1 Color
- ; 76 Goto
- ; 46 Let
- ; 74 PrintLn
- ; 45 If
- ; 3 DispFile
- ; 8 FOpen
- ; 1 FAppend
- ; 10 FClose
- ; 24 FGet
- ; 1 FPut
- ; 91 FPutLn
- ; 1 GetUser
- ; 1 PutUser
- ; 10 Log
- ; 11 InputStr
- ; 2 Newlines
- ; 1 InputText
- ; 2 KbdStuff
- ; 8 DispStr
- ; 2 Message
- ;
- ;
- ; ■ Functions used :
- ;
- ; 2 *
- ; 10 /
- ; 104 +
- ; 23 -
- ; 32 ==
- ; 10 <
- ; 3 <=
- ; 3 >
- ; 9 >=
- ; 22 !
- ; 9 &&
- ; 4 ||
- ; 31 Len(
- ; 19 Upper()
- ; 10 Mid()
- ; 1 Left()
- ; 1 Right()
- ; 23 Space()
- ; 4 Chr()
- ; 8 Date()
- ; 9 U_Name()
- ; 1 Year()
- ; 1 Month()
- ; 2 Mask_Num()
- ; 4 Mask_Ascii()
- ; 9 PPEPath()
- ; 1 SysopSec()
- ; 1 Exist()
- ; 3 FmtCC()
- ; 9 CCType()
- ;
- ;------------------------------------------------------------------------------
- ;
- ; Analysis flags : Ws
- ;
- ; W - Write user ■ 5
- ; Program writes a user record. Although this may be normal for a
- ; User Editor, it may also be a way to modify an account level.
- ; ■ Search for : PUTUSER
- ;
- ; s - Sysop level access ■ 5
- ; Program is reading the sysop access level, this may be normal
- ; but still it is very suspect. It is the best way to give a user
- ; all priviledges. Check!
- ; ■ Search for : SYSOPSEC()
- ;
- ;------------------------------------------------------------------------------
- ;
- ; Postprocessing report
- ;
- ; 3 For/Next
- ; 0 While/EndWhile
- ; 19 If/Then or If/Then/Else
- ; 0 Select Case
- ;
- ;------------------------------------------------------------------------------
- ; AEGiS Corp - Break the routines, code against the machines!
- ;------------------------------------------------------------------------------
-