home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 12 / CD_ASCQ_12_0294.iso / vrac / netmail.zip / NETMAIL.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-02-11  |  5KB  |  313 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  INTEGER001
  20.     Integer  INTEGER002
  21.     Integer  INTEGER003
  22.     Integer  INTEGER004
  23.     Integer  INTEGER005
  24.     Integer  INTEGER006
  25.     Integer  INTEGER007
  26.     Integer  INTEGER008
  27.     Integer  INTEGER009
  28.     Integer  INTEGER010
  29.     Integer  INTEGER011
  30.     Integer  INTEGER012
  31.     Integer  INTEGER013
  32.     Integer  INTEGER014
  33.     Integer  INTEGER015
  34.     Integer  INTEGER016
  35.     String   STRING001
  36.     String   STRING002
  37.     String   STRING003
  38.     String   STRING004
  39.     String   STRING005
  40.     String   STRING006
  41.     String   STRING007
  42.     String   STRING008
  43.     String   STRING009
  44.     String   STRING010
  45.     String   STRING011
  46.  
  47. ;------------------------------------------------------------------------------
  48.  
  49.     INTEGER005 = 1
  50.     INTEGER006 = 3625
  51.     INTEGER001 = 0
  52.     INTEGER002 = 0
  53.     INTEGER003 = 0
  54.     INTEGER004 = 0
  55.     INTEGER012 = 0
  56.     INTEGER013 = 0
  57.     INTEGER014 = 0
  58.     INTEGER015 = 0
  59.     INTEGER016 = 0
  60.     STRING008 = Chr(13) + Chr(10)
  61.     STRING003 = ""
  62.     STRING009 = "N"
  63.     STRING010 = "N"
  64.     STRING011 = "Y"
  65.     STRING005 = ""
  66.     GetUser
  67.     If (U_Expert == 0) Then
  68.         Cls
  69.     Endif
  70.     FOpen 1, PPEPath() + PPEName() + ".CFG", 0, 0
  71.     FGet 1, INTEGER005
  72.     FGet 1, INTEGER006
  73.     FGet 1, INTEGER008
  74.     FGet 1, INTEGER009
  75.     FGet 1, INTEGER010
  76.     FGet 1, INTEGER011
  77.     If (Ferr(1)) Then
  78.         PrintLn "Please inform the SYSOP that there is a problem with the CONFIG file."
  79.         FClose 1
  80.     Else
  81.         FClose 1
  82.         If ((U_Expert == 0) && Exist(PPEPath() + "Wlcm*.*")) Then
  83.             DispFile PPEPath() + "Wlcm", 2 + 1 + 4
  84.         Endif
  85.         While (TokCount() > 0) Do
  86.             STRING001 = STRING001 + " " + GetToken()
  87.         EndWhile
  88.         STRING001 = Trim(STRING001, " ")
  89.         InputText "Name (Enter)=ABORT ?", STRING001, 15, 25
  90.         Newline
  91.         If (Len(Trim(STRING001, " ")) < 1) Then
  92.             Goto LABEL006
  93.         Endif
  94.         InputText "Subject (ENTER)=Abort ?", STRING007, 15, 60
  95.         Newline
  96.         If (Len(STRING007) < 1) Then
  97.             Goto LABEL006
  98.         Endif
  99.         :LABEL001
  100.         If ((U_Expert == 0) && Exist(PPEPath() + "ADDR*.*")) Then
  101.             DispFile PPEPath() + "ADDR", 2 + 1 + 4
  102.             InputText "", STRING002, 15, 30
  103.         Else
  104.             InputText "@X0FAddress to Send To (ENTER)=Abort ?", STRING002, 15, 30
  105.         Endif
  106.         Newline
  107.         If (Len(Trim(STRING002, " ")) < 1) Then
  108.             Goto LABEL006
  109.         Endif
  110.         STRING002 = Trim(STRING002, " ")
  111.         For INTEGER007 = 1 To Len(STRING002)
  112.             STRING006 = Mid(STRING002, INTEGER007, 1)
  113.             If (STRING006 == ":") Then
  114.                 INTEGER001 = S2I(STRING004, 10)
  115.                 STRING004 = ""
  116.                 INTEGER012 = 1
  117.                 Continue
  118.             Endif
  119.             If (STRING006 == "/") Then
  120.                 INTEGER002 = S2I(STRING004, 10)
  121.                 STRING004 = ""
  122.                 INTEGER013 = 1
  123.                 Continue
  124.             Endif
  125.             If (STRING006 == ".") Then
  126.                 If (INTEGER014 == 0) Then
  127.                     INTEGER003 = S2I(STRING004, 10)
  128.                     STRING004 = ""
  129.                     INTEGER014 = 1
  130.                     Goto LABEL002
  131.                 Endif
  132.                 STRING004 = STRING004 + STRING006
  133.                 :LABEL002
  134.                 Continue
  135.             Endif
  136.             If (STRING006 == "@") Then
  137.                 INTEGER004 = S2I(STRING004, 10)
  138.                 STRING004 = ""
  139.                 INTEGER015 = 1
  140.                 Continue
  141.             Endif
  142.             STRING004 = STRING004 + STRING006
  143.         Next
  144.         If (Len(STRING004) > 0) Then
  145.             If (INTEGER014 > 0) Then
  146.                 If (INTEGER015 > 0) Then
  147.                     STRING003 = Trim(STRING004, " ")
  148.                     INTEGER016 = 1
  149.                     Goto LABEL003
  150.                 Endif
  151.                 INTEGER004 = S2I(STRING004, 10)
  152.                 INTEGER015 = 1
  153.                 :LABEL003
  154.                 Goto LABEL004
  155.             Endif
  156.             INTEGER003 = S2I(STRING004, 10)
  157.             INTEGER014 = 1
  158.         Endif
  159.         :LABEL004
  160.         If (INTEGER012 == 0) INTEGER001 = INTEGER005
  161.         If (INTEGER013 == 0) INTEGER002 = INTEGER006
  162.         If (INTEGER014 == 0) Then
  163.             PrintLn "Your address is improperly formatted, please try again."
  164.             Newline
  165.             Goto LABEL001
  166.         Endif
  167.         STRING002 = Trim(I2S(INTEGER001, 10), " ")
  168.         STRING002 = STRING002 + ":" + Trim(I2S(INTEGER002, 10), " ")
  169.         STRING002 = STRING002 + "/" + Trim(I2S(INTEGER003, 10), " ")
  170.         If (INTEGER015 == 1) Then
  171.             STRING002 = STRING002 + "." + Trim(I2S(INTEGER004, 10), " ")
  172.         Endif
  173.         If (INTEGER016 == 1) Then
  174.             STRING002 = STRING002 + "@" + STRING003
  175.         Endif
  176.         If ((U_Expert == 0) && Exist(PPEPath() + "Ugnt*.*")) Then
  177.             DispFile PPEPath() + "Ugnt", 2 + 1 + 4
  178.         Else
  179.             PrintLn "Urgency Level:"
  180.             If (U_Sec >= INTEGER008) Then
  181.                 PrintLn "     (I)mmediate"
  182.             Endif
  183.             If (U_Sec >= INTEGER009) Then
  184.                 PrintLn "     (C)rash"
  185.             Endif
  186.             If (U_Sec >= INTEGER010) Then
  187.                 PrintLn "     (H)old"
  188.             Endif
  189.             If (U_Sec >= INTEGER011) Then
  190.                 PrintLn "     (D)irect"
  191.             Endif
  192.             PrintLn "     (N)ormal"
  193.             Print "Urgency Level (Enter)=Normal"
  194.         Endif
  195.         If (U_Sec >= INTEGER008) Then
  196.             STRING010 = STRING010 + "I"
  197.         Endif
  198.         If (U_Sec >= INTEGER009) Then
  199.             STRING010 = STRING010 + "C"
  200.         Endif
  201.         If (U_Sec >= INTEGER010) Then
  202.             STRING010 = STRING010 + "H"
  203.         Endif
  204.         If (U_Sec >= INTEGER011) Then
  205.             STRING010 = STRING010 + "D"
  206.         Endif
  207.         InputStr "", STRING009, 15, 1, STRING010, 256 + 4 + 8
  208.         If (U_FSEP) Then
  209.             PromptStr 498, STRING011, 1, "Y", 256 + 8 + 4
  210.         Endif
  211.         STRING005 = "E" + Chr(13) + Chr(10)
  212.         STRING005 = STRING005 + STRING001 + STRING008
  213.         STRING005 = STRING005 + STRING007 + STRING008
  214.         STRING005 = STRING005 + "N" + STRING008
  215.         If (U_FSE == 0) Then
  216.             If (U_FSEP == 1) Then
  217.                 If (STRING011 == "Y") Then
  218.                     STRING005 = STRING005 + "Y" + STRING008
  219.                     Goto LABEL005
  220.                 Endif
  221.                 STRING005 = STRING005 + "N" + STRING008
  222.             Endif
  223.         Endif
  224.         :LABEL005
  225.         STRING005 = STRING005 + "(" + STRING002 + ")" + STRING008
  226.         If (STRING009 == "I") Then
  227.             STRING005 = STRING005 + "(IMMEDIATE)" + STRING008
  228.         Endif
  229.         If (STRING009 == "D") Then
  230.             STRING005 = STRING005 + "(DIRECT)" + STRING008
  231.         Endif
  232.         If (STRING009 == "H") Then
  233.             STRING005 = STRING005 + "(HOLD)" + STRING008
  234.         Endif
  235.         If (STRING009 == "C") Then
  236.             STRING005 = STRING005 + "(CRASH)" + STRING008
  237.         Endif
  238.     Endif
  239.     :LABEL006
  240.     PrintLn "    NetMailer -- v1.3    "
  241.     PrintLn "(c) 1994 Tranquility Base"
  242.     PrintLn "   All Rights Reserved   "
  243.     If (Len(STRING005) > 0) Then
  244.         KbdStuff STRING005
  245.     Endif
  246.     End
  247.  
  248. ;------------------------------------------------------------------------------
  249. ;
  250. ; Usage report (before postprocessing)
  251. ;
  252. ; ■ Statements used :
  253. ;
  254. ;    1       End
  255. ;    1       Cls
  256. ;    55      Goto 
  257. ;    65      Let 
  258. ;    1       Print 
  259. ;    11      PrintLn 
  260. ;    40      If 
  261. ;    3       DispFile 
  262. ;    1       FOpen 
  263. ;    2       FClose 
  264. ;    6       FGet 
  265. ;    1       GetUser
  266. ;    1       InputStr 
  267. ;    1       PromptStr 
  268. ;    4       Newline
  269. ;    4       InputText 
  270. ;    1       KbdStuff 
  271. ;
  272. ;
  273. ; ■ Functions used :
  274. ;
  275. ;    60      +
  276. ;    21      ==
  277. ;    4       <
  278. ;    1       <=
  279. ;    5       >
  280. ;    10      >=
  281. ;    38      !
  282. ;    5       &&
  283. ;    1       ||
  284. ;    7       Len(
  285. ;    1       Mid()
  286. ;    1       Ferr()
  287. ;    4       Chr()
  288. ;    9       Trim()
  289. ;    7       PPEPath()
  290. ;    1       GetToken()
  291. ;    3       Exist()
  292. ;    4       I2S()
  293. ;    6       S2I()
  294. ;    1       PPEName()
  295. ;    1       TokCount()
  296. ;
  297. ;------------------------------------------------------------------------------
  298. ;
  299. ; Analysis flags : No flag
  300. ;
  301. ;------------------------------------------------------------------------------
  302. ;
  303. ; Postprocessing report
  304. ;
  305. ;    1       For/Next
  306. ;    1       While/EndWhile
  307. ;    36      If/Then or If/Then/Else
  308. ;    0       Select Case
  309. ;
  310. ;------------------------------------------------------------------------------
  311. ;                 AEGiS Corp - Break the routines, code against the machines!
  312. ;------------------------------------------------------------------------------
  313.