home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / NUFILZ11.ZIP / NEWFILES.PPE (.txt) < prev   
PCBoard Programming Language Executable  |  1993-09-09  |  6KB  |  271 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.     Date     DATE001
  20.     Integer  INTEGER001
  21.     Integer  INTEGER002
  22.     Integer  INTEGER003
  23.     Integer  INTEGER004
  24.     String   STRING001
  25.     String   STRING002
  26.     String   STRING003
  27.     String   STRING004
  28.     String   TSTRING005(100)
  29.     String   STRING006
  30.     String   STRING007
  31.     String   STRING008
  32.     String   STRING009
  33.     String   STRING010
  34.     String   STRING011
  35.     String   STRING012
  36.     String   STRING013
  37.     String   STRING014
  38.     String   STRING015
  39.  
  40. ;------------------------------------------------------------------------------
  41.  
  42.     DATE001 = "10-24-93"
  43.     PrintLn 
  44.     If (Date() > DATE001) Then
  45.         PrintLn "@X0FPPE @X0Btrial period @X0Fhas @X0CEXPIRED@X0F - please tell @X0Esysop @X0Fto register it@X07"
  46.         End
  47.     Endif
  48.     PrintLn "@X0FThis PPE is @X0EUNREGISTERED @X0F- please @X0Cregister @X0Fby " + String(DATE001) + " or it will @X0Dexpire@X07"
  49.     PrintLn 
  50.     STRING007 = ReadLine(PCBDat(), 31)
  51.     STRING008 = ReadLine(STRING007, 16)
  52.     STRING009 = ReadLine(PCBDat(), 27)
  53.     PrintLn "@X0B┌─────────────────────────────────────────────────────────────────────────┐@X07"
  54.     PrintLn "@X0B│ @X0FThe @X0Enew @X0Afile @X0Dnames  @X0Fwill automatically be placed in a downloadable list @X0B│@X07"
  55.     PrintLn "@X0B│ @X0Fcalled @X0CNEWFILES.ZIP @X0Fand will be @X0Bflagged for download.                   │@X07"
  56.     PrintLn "@X0B└─────────────────────────────────────────────────────────────────────────┘@X07"
  57.     PrintLn 
  58.     PrintLn 
  59.     STRING014 = "flag.lst"
  60.     STRING015 = "newfiles.lst"
  61.     If (Exist(STRING014)) Delete STRING014
  62.     If (Exist(STRING015)) Delete STRING015
  63.     STRING010 = Strip(U_LDate(), "-")
  64.     InputStr "@X0AWhat date to scan from @X0E(C/R for last date on)@X07 ", STRING010, 14, 6, "0123456789-", 2 + 4 + 256
  65.     If (STRING010 == "") Then
  66.         STRING010 = U_LDate()
  67.     Else
  68.         STRING010 = STRING010
  69.     Endif
  70.     STRING004 = ""
  71.     STRING012 = ""
  72.     PrintLn 
  73.     PrintLn " @X07E@X0Fnter the range of file directories you want to scan for new files."
  74.     PrintLn " @X07Y@X0Fou may enter a @X0Esingle @X0Fdirectory, a @X0Erange @X0Fof directories or"
  75.     PrintLn " @X0DU @X0Ffor the upload directory or @X0CA @X0Ffor all directories @X0EQ)uit@X07"
  76.     PrintLn 
  77.     InputStr " @X0BFrom - (@X0Fdirectory to begin the scan or @X0Ainput a single directory@X0B) @X07", STRING004, 14, 3, "0123456789UuAa", 2 + 8 + 4 + 64
  78.     Select Case (STRING004)
  79.         Case ""
  80.             End
  81.         Case "A"
  82.             Goto LABEL001
  83.         Case "U"
  84.             STRING011 = "U"
  85.             Goto LABEL001
  86.         Case "Q"
  87.     End Select
  88.     InputStr " @X0ATo - (@X0Fdirectory in range to end the scan - @X0EC/R if single dir@X0A) @X07", STRING012, 15, 3, "0123456789Uu", 2 + 8 + 4 + 128
  89.     PrintLn 
  90.     If (STRING012 == "") Goto LABEL001
  91.     STRING012 = "-" + STRING012
  92.     :LABEL001
  93.     PrintLn " T@X0Fhe @X0Afile directories @X07a@X0Fre @X07b@X0Feing @X07s@X0Fcanned @X07f@X0From @X0E(@X0F", STRING010, "@X0E)@X07"
  94.     Newlines 2
  95.     PrintLn " The range of directories scanned is @X0E(@X0F", STRING004, STRING012, "@X0E)@X07"
  96.     PrintLn 
  97.     PrintLn "          @X07M@X0Faking @X07N@X0Few @X07F@X0Files @X07L@X0Fist - @X07T@X0Fhis @X07m@X0Fay @X07t@X0Fake a @X07l@X0Fittle @X07t@X0Fime @X07@X07"
  98.     Select Case (STRING004)
  99.         Case "U"
  100.             STRING011 = STRING004
  101.         Case "A"
  102.             STRING011 = STRING004
  103.         Case Else
  104.             STRING011 = STRING004 + STRING012
  105.     End Select
  106.     STRING014 = "newfilz" + String(PcbNode())
  107.     STRING015 = ".zip"
  108.     STRING013 = STRING008 + STRING014
  109.     OpenCap "newfiles.lst", INTEGER001
  110.     KbdStuff Chr(13)
  111.     Dir "N;" + STRING010 + ";" + STRING011 + ";NS"
  112.     CloseCap 
  113.     PrintLn 
  114.     PrintLn "          @X0EZipping @X0FFile list and moving to upload directory@X07"
  115.     PrintLn 
  116.     ShowOff
  117.     Shell 1, INTEGER001, "PKZIP", " -ex " + STRING013 + " NEWFILES.LST"
  118.     PrintLn 
  119.     ShowOn
  120.     STRING004 = ""
  121.     PrintLn "  @X0F Would you like to @X0Aflag @X0Fthe @X0Bfile list @X0Fand @X0Aflag@X07"
  122.     PrintLn 
  123.     InputStr "   @X0Fthe files @X0Ffor @X0Edownload @X0F(up to 40 files) @X0Dautomatically@X07", STRING004, 14, 1, "YyNn", 2 + 4 + 8
  124.     Newlines 2
  125.     If (STRING004 == "Y") Goto LABEL002
  126.     PrintLn 
  127.     PrintLn " @X0AYou can either download the list now or it will be @X0Eflagged @X0Afor later download@X07"
  128.     PrintLn 
  129.     PrintLn 
  130.     PrintLn "          @X0CPlease @X0Bdont forget to @X0Fdownload@X0E " + STRING014 + ".zip@X0F before logging off."
  131.     PrintLn 
  132.     KbdStuff "flag " + STRING013 + STRING015
  133.     End
  134.     KbdStuff "d;NEWFILES.ZIP;z"
  135.     Shell 1, STRING003, "dsz sz " + STRING008 + " newfiles.zip", ""
  136.     PrintLn 
  137.     STRING004 = ""
  138.     InputStr " Would you like to flag the new files for download now", STRING004, 14, 1, "YyNn", 2 + 4 + 8 + 256
  139.     If (STRING004 == "") Goto LABEL006
  140.     If (STRING004 == "Y") Goto LABEL002
  141.     If (STRING004 == "N") Goto LABEL006
  142.     :LABEL002
  143.     PrintLn 
  144.     PrintLn "    Currently @X0Bmaking @X0Fa list of files to @X0Cflag! @X0FPlease be patient@X07"
  145.     PrintLn 
  146.     INTEGER004 = 1
  147.     If (Exist("flag.lst")) Delete "flag.lst"
  148.     FOpen 1, "newfiles.lst", 0, 0
  149.     FOpen 2, "flag.lst", 2, 0
  150.     INTEGER002 = 0
  151.     INTEGER003 = 0
  152.     :LABEL003
  153.     If (Ferr(1)) Goto LABEL005
  154.     INTEGER002 = INTEGER002 + 1
  155.     INTEGER003 = INTEGER003 + 1
  156.     INTEGER004 = INTEGER004 + 1
  157.     FGet 1, STRING001
  158.     STRING002 = Left(STRING001, 13)
  159.     If (Left(STRING001, 13) == "             ") Goto LABEL004
  160.     If (Left(STRING001, 8) == "Scanning") Goto LABEL004
  161.     TSTRING005(INTEGER002) = STRING002
  162.     STRING002 = Upper(STRING002)
  163.     STRING002 = Strip(STRING002, " ")
  164.     STRING002 = RTrim(STRING002, "P")
  165.     STRING002 = RTrim(STRING002, "I")
  166.     STRING002 = RTrim(STRING002, "Z")
  167.     STRING002 = RTrim(STRING002, ".")
  168.     STRING002 = STRING002 + " "
  169.     Print "."
  170.     FPut 2, STRING002
  171.     :LABEL004
  172.     Goto LABEL003
  173.     :LABEL005
  174.     ShowOn
  175.     INTEGER003 = 0
  176.     For INTEGER003 = 1 To INTEGER002
  177.         STRING006 = STRING006 + TSTRING005(INTEGER003)
  178.     Next
  179.     PrintLn 
  180.     PrintLn "   The @X0BFiles @X0Fwill now be @X0Cflagged @X0Ffor @X0Adownload@X07"
  181.     KbdStuff "flag"
  182.     KbdFile "flag.lst"
  183.     :LABEL006
  184.     Delete "newfiles.lst"
  185.     FClose 1
  186.     FClose 2
  187.  
  188. ;------------------------------------------------------------------------------
  189. ;
  190. ; Usage report (before postprocessing)
  191. ;
  192. ; ■ Statements used :
  193. ;
  194. ;    3       End
  195. ;    27      Goto 
  196. ;    40      Let 
  197. ;    1       Print 
  198. ;    38      PrintLn 
  199. ;    20      If 
  200. ;    2       FOpen 
  201. ;    2       FClose 
  202. ;    1       FGet 
  203. ;    1       FPut 
  204. ;    4       Delete 
  205. ;    5       InputStr 
  206. ;    2       Newlines 
  207. ;    2       Shell 
  208. ;    4       KbdStuff 
  209. ;    1       Dir 
  210. ;    1       KbdFile 
  211. ;    1       OpenCap 
  212. ;    1       CloseCap 
  213. ;    2       ShowOn
  214. ;    1       ShowOff
  215. ;
  216. ;
  217. ; ■ Functions used :
  218. ;
  219. ;    37      +
  220. ;    14      ==
  221. ;    1       <
  222. ;    1       <=
  223. ;    1       >
  224. ;    2       >=
  225. ;    10      !
  226. ;    2       &&
  227. ;    1       ||
  228. ;    1       Upper()
  229. ;    3       Left()
  230. ;    1       Ferr()
  231. ;    1       Chr()
  232. ;    4       RTrim()
  233. ;    1       Date()
  234. ;    2       U_LDate()
  235. ;    2       Strip()
  236. ;    2       String()
  237. ;    2       PCBDat()
  238. ;    1       PcbNode()
  239. ;    3       ReadLine()
  240. ;    3       Exist()
  241. ;
  242. ;------------------------------------------------------------------------------
  243. ;
  244. ; Analysis flags : Sd
  245. ;
  246. ; S - Shell to DOS ■ 5
  247. ;     This may be normal if the PPE need to execute an external command,
  248. ;     but may be actually anything... nasty (formating HD, rebooting,...)
  249. ;     or usefull (sorting, maintenance,...). Check!
  250. ;     ■ Search for : SHELL
  251. ;
  252. ; d - Access PCBOARD.DAT ■ 2
  253. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  254. ;     for many PPE so they can find various informations on the system
  255. ;     (system paths, max number of lines in messages, ...) but it may also
  256. ;     be a way to gather vital informations.
  257. ;     ■ Search for : PCBDAT()
  258. ;
  259. ;------------------------------------------------------------------------------
  260. ;
  261. ; Postprocessing report
  262. ;
  263. ;    1       For/Next
  264. ;    0       While/EndWhile
  265. ;    2       If/Then or If/Then/Else
  266. ;    2       Select Case
  267. ;
  268. ;------------------------------------------------------------------------------
  269. ;                 AEGiS Corp - Break the routines, code against the machines!
  270. ;------------------------------------------------------------------------------
  271.