home *** CD-ROM | disk | FTP | other *** search
/ Carsten's PPE Collection / Carstens_PPE_Collection_2007.zip / T / THTMT213.ZIP / CHECK.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-01-04  |  5KB  |  306 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 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Integer  INTEGER002
  20.     Integer  INTEGER003
  21.     Integer  INTEGER004
  22.     Integer  INTEGER005
  23.     String   STRING001
  24.     String   STRING002
  25.     String   STRING003
  26.     String   STRING004
  27.     String   STRING005
  28.     String   STRING006
  29.     String   STRING007
  30.     String   STRING008
  31.     String   STRING009
  32.     String   STRING010
  33.     String   STRING011
  34.     String   STRING012
  35.     String   STRING013
  36.     String   STRING014
  37.     String   STRING015
  38.     String   STRING016
  39.     String   STRING017
  40.     String   STRING018
  41.     String   STRING019
  42.     String   STRING020
  43.     String   STRING021
  44.  
  45. ;------------------------------------------------------------------------------
  46.  
  47.     FDefIn 1
  48.     FDefOut 2
  49.     FOpen 1, PPEPath() + PPEName() + ".cnf", 0, 0
  50.     FGet 1, STRING010
  51.     FGet 1, STRING020
  52.     FGet 1, STRING021
  53.     FGet 1, STRING019
  54.     FGet 1, STRING009
  55.     FClose 1
  56.     If (STRING010 == NoChar()) Goto LABEL014
  57.     GetUser
  58.     STRING001 = 3
  59.     INTEGER002 = 0
  60.     INTEGER003 = 0
  61.     INTEGER004 = 0
  62.     INTEGER005 = 0
  63.     FOpen 1, PPEPath() + "tht-info.cfg", 0, 0
  64.     FGet 1, STRING002
  65.     FClose 1
  66.     Tokenize U_Name()
  67.     If (TokCount() == 3) Then
  68.         GetToken STRING016
  69.         GetToken STRING017
  70.         GetToken STRING018
  71.         STRING016 = Strip(STRING016, " ")
  72.         STRING017 = Strip(STRING017, " ")
  73.         STRING016 = Strip(STRING016, ".")
  74.         STRING017 = Strip(STRING017, ".")
  75.         STRING016 = Left(STRING016, 3)
  76.         STRING017 = Right(STRING018, 4)
  77.         If (Exist(PPEPath() + "apps\" + STRING016 + "_" + STRING017 + ".vot")) Then
  78.         Else
  79.             GetToken STRING016
  80.             GetToken STRING017
  81.             STRING016 = Strip(STRING016, " ")
  82.             STRING017 = Strip(STRING017, " ")
  83.             STRING016 = Strip(STRING016, ".")
  84.             STRING017 = Strip(STRING017, ".")
  85.             STRING016 = Left(STRING016, 3)
  86.             STRING017 = Right(STRING017, 4)
  87.             If (Exist(PPEPath() + "apps\" + STRING016 + "_" + STRING017 + ".vot")) Then
  88.             Endif
  89.             FOpen 2, PPEPath() + "apps\" + STRING016 + "_" + STRING017 + ".vot", 0, 0
  90.             :LABEL001
  91.             If (Ferr(2)) Goto LABEL003
  92.             FGet 2, STRING011
  93.             Tokenize STRING011
  94.             If (TokCount() == 4) Then
  95.                 GetToken STRING012
  96.                 GetToken STRING013
  97.                 GetToken STRING014
  98.                 GetToken STRING015
  99.                 If (STRING015 == "Y") Inc INTEGER004
  100.                 If (STRING015 == "N") Inc INTEGER005
  101.                 Goto LABEL002
  102.             Endif
  103.             If (TokCount() == 3) Then
  104.                 GetToken STRING012
  105.                 GetToken STRING013
  106.                 GetToken STRING014
  107.                 AnsiPos 30, STRING001
  108.                 If (STRING014 == "Y") Inc INTEGER004
  109.                 If (STRING014 == "N") Inc INTEGER005
  110.                 Goto LABEL002
  111.             Endif
  112.             If (TokCount() == 2) Then
  113.                 GetToken STRING012
  114.                 GetToken STRING013
  115.                 AnsiPos 30, STRING001
  116.                 If (STRING013 == "Y") Inc INTEGER004
  117.                 If (STRING013 == "N") Inc INTEGER005
  118.                 Inc STRING001
  119.             Endif
  120.             :LABEL002
  121.             Goto LABEL001
  122.             :LABEL003
  123.             STRING007 = INTEGER004
  124.             STRING008 = INTEGER005
  125.             FClose 2
  126.             Cls
  127.             AnsiPos 7, 1
  128.             PrintLn "@X7ENew User@X7F'@X7Es Voting Results @X7Ffrom @X74Master Beta @X7F@ @X74<<@X7ETHT@X74>>@X07"
  129.             AnsiPos 30, 2
  130.             PrintLn "@X1Fv 2@X0F@X1F.@X0C@X1C02@X07"
  131.             AnsiPos 6, 3
  132.             PrintLn "@X34╔════════════════════════════════════════════════════╗@X07"
  133.             AnsiPos 6, 4
  134.             PrintLn "@X34║  @X3E" + U_Name() + "@POS:25@" + "  @X30" + U_City + "@POS:59@@X34║@X07"
  135.             AnsiPos 6, 5
  136.             PrintLn "@X34║              @X39Your Current Stats @POS:59@@X34║@X07"
  137.             AnsiPos 6, 6
  138.             PrintLn "@X34║@POS:59@@X34║@X07"
  139.             AnsiPos 6, 7
  140.             PrintLn "@X04@X34║@X38Votes for You> @X30" + STRING007 + "@POS:59@@X34║@X07"
  141.             AnsiPos 6, 8
  142.             PrintLn "@X34║@POS:59@@X34║@X07"
  143.             AnsiPos 6, 9
  144.             PrintLn "@X34║@X38Votes against You> @X30" + STRING008 + "@POS:59@@X34║@X07"
  145.             AnsiPos 6, 10
  146.             PrintLn "@X34║@POS:59@║@X07"
  147.             AnsiPos 6, 11
  148.             PrintLn "@X34║@X3EYou Need @X31" + STRING020 + "@X3E Votes to gain Access to the Board" + "@POS:59@@X34║@X07"
  149.             AnsiPos 6, 12
  150.             PrintLn "@X34║@POS:59@║@X07"
  151.             AnsiPos 6, 13
  152.             PrintLn "@X34╚════════════════════════════════════════════════════╝@X07"
  153.             FreshLine
  154.             Wait
  155.             If (INTEGER004 >= STRING020) Goto LABEL004
  156.             If (INTEGER005 >= STRING021) Goto LABEL009
  157.             If (STRING009 == YesChar()) Goodbye
  158.             Goto LABEL014
  159.             :LABEL004
  160.             U_Sec = STRING019
  161.             PutUser
  162.             AnsiPos 6, 14
  163.             PrintLn "@X0EYou have been accepted as a @X0CUSER @X0Eon this Board@X07"
  164.             FOpen 1, PPEPath() + "apps\waiting.app", 2, 0
  165.             FAppend 2, PPEPath() + "apps\waiting.tmp", 1, 0
  166.             :LABEL005
  167.             If (Ferr(1)) Goto LABEL007
  168.             FGet 1, STRING004
  169.             Tokenize STRING004
  170.             GetToken STRING005
  171.             GetToken STRING006
  172.             If (STRING004 == "") Goto LABEL008
  173.             If (STRING005 + " " + STRING006 == U_Name()) Then
  174.                 PrintLn 
  175.                 Goto LABEL006
  176.             Endif
  177.             FDPutLn STRING004 + Chr(13) + Chr(10)
  178.             :LABEL006
  179.             Goto LABEL005
  180.             :LABEL007
  181.             FClose 2
  182.             :LABEL008
  183.             FClose 1
  184.             FClose 2
  185.             Copy PPEPath() + "APPS\waiting.tmp", PPEPath() + "APPS\waiting.app"
  186.             Delete PPEPath() + "APPS\waiting.tmp"
  187.             Delete PPEPath() + "apps\" + STRING016 + "_" + STRING017 + ".vot"
  188.             Delete PPEPath() + "apps\" + STRING016 + "_" + STRING017 + ".GRP"
  189.             Delete PPEPath() + "apps\" + STRING016 + "_" + STRING017 + ".cmt"
  190.             For STRING003 = STRING002 To 1 Step -1
  191.                 Delete PPEPath() + "apps\" + STRING016 + "_" + STRING017 + "." + STRING003
  192.             Next
  193.             Wait
  194.             Goto LABEL014
  195.             :LABEL009
  196.             PrintLn "@X0CSorry but your Application has been Refused@X8C!!!!@X07"
  197.             U_Sec = "0"
  198.             PutUser
  199.             FOpen 1, PPEPath() + "apps\waiting.app", 2, 0
  200.             FAppend 2, PPEPath() + "apps\waiting.tmp", 1, 0
  201.             :LABEL010
  202.             If (Ferr(1)) Goto LABEL012
  203.             FGet 1, STRING004
  204.             Tokenize STRING004
  205.             GetToken STRING005
  206.             GetToken STRING006
  207.             If (STRING004 == "") Goto LABEL013
  208.             If (STRING005 + " " + STRING006 == U_Name()) Then
  209.                 PrintLn 
  210.                 Goto LABEL011
  211.             Endif
  212.             FDPutLn STRING004 + Chr(13) + Chr(10)
  213.             :LABEL011
  214.             Goto LABEL010
  215.             :LABEL012
  216.             :LABEL013
  217.             FClose 2
  218.             FClose 1
  219.             Copy PPEPath() + "APPS\waiting.tmp", PPEPath() + "APPS\waiting.app"
  220.             Delete PPEPath() + "APPS\waiting.tmp"
  221.             Goto LABEL014
  222.         Endif
  223.     Endif
  224.     :LABEL014
  225.     FClose 1
  226.     FClose 2
  227.     End
  228.  
  229. ;------------------------------------------------------------------------------
  230. ;
  231. ; Usage report (before postprocessing)
  232. ;
  233. ; ■ Statements used :
  234. ;
  235. ;    1       End
  236. ;    1       Cls
  237. ;    2       Wait
  238. ;    31      Goto 
  239. ;    23      Let 
  240. ;    17      PrintLn 
  241. ;    24      If 
  242. ;    5       FOpen 
  243. ;    2       FAppend 
  244. ;    10      FClose 
  245. ;    9       FGet 
  246. ;    1       GetUser
  247. ;    2       PutUser
  248. ;    6       Delete 
  249. ;    7       Inc 
  250. ;    4       Tokenize 
  251. ;    18      GetToken 
  252. ;    1       Goodbye
  253. ;    16      AnsiPos 
  254. ;    1       FreshLine
  255. ;    1       FDefIn 
  256. ;    1       FDefOut 
  257. ;    2       FDPutLn 
  258. ;    2       Copy 
  259. ;
  260. ;
  261. ; ■ Functions used :
  262. ;
  263. ;    3       -
  264. ;    70      +
  265. ;    16      ==
  266. ;    1       <
  267. ;    1       <=
  268. ;    4       >=
  269. ;    12      !
  270. ;    2       &&
  271. ;    1       ||
  272. ;    2       Left()
  273. ;    2       Right()
  274. ;    3       Ferr()
  275. ;    4       Chr()
  276. ;    4       U_Name()
  277. ;    1       NoChar()
  278. ;    1       YesChar()
  279. ;    8       Strip()
  280. ;    19      PPEPath()
  281. ;    2       Exist()
  282. ;    1       PPEName()
  283. ;    4       TokCount()
  284. ;
  285. ;------------------------------------------------------------------------------
  286. ;
  287. ; Analysis flags : W
  288. ;
  289. ; W - Write user ■ 5
  290. ;     Program writes a user record. Although this may be normal for a
  291. ;     User Editor, it may also be a way to modify an account level.
  292. ;     ■ Search for : PUTUSER
  293. ;
  294. ;------------------------------------------------------------------------------
  295. ;
  296. ; Postprocessing report
  297. ;
  298. ;    1       For/Next
  299. ;    0       While/EndWhile
  300. ;    8       If/Then or If/Then/Else
  301. ;    0       Select Case
  302. ;
  303. ;------------------------------------------------------------------------------
  304. ;                 AEGiS Corp - Break the routines, code against the machines!
  305. ;------------------------------------------------------------------------------
  306.