home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / n / newsflash / !BBS / BBS / Scripts / LongFList < prev    next >
Encoding:
Text File  |  1996-09-17  |  6.0 KB  |  236 lines

  1. {
  2. | Long file list for NewsFlash
  3. | Alex Howarth (14 September 1996)
  4.  
  5. REPORT "Long file list"
  6. OPENFILEBASE
  7. READFAREA FILEAREA
  8. IF FILEAREAACCESS AND CANVIEW THEN
  9.   STD CLS
  10.   BFG 2}Scanning area #{PRINT FILEAREA} ({PRINT FILEAREANAME}) ....{STD
  11.   NL
  12.   filenum%=FIRSTFILE
  13.   REPEAT
  14.     NL
  15.     READFILE filenum%
  16.     BFG 7
  17.     FORMATNUM filenum%,0,6 TO filenum
  18.     PRINT filenum
  19.     BFG 3
  20.     TAB 8 PRINT FILEBASENAME
  21.     BFG 7
  22.     TAB 22
  23.     PRINT FILEBASESIZE} bytes,{
  24.     cps%=BAUDRATE/10| nasty maths
  25.     dlr%=(FILEBASESIZE/cps%)/60| make no claims for accuracy :)
  26.     BFG 7} approx {PRINT dlr%} mins {
  27.     IF FILEBASETIMES=1 THEN
  28.       suffix=""
  29.     ELSE
  30.       suffix="s"
  31.     ENDIF
  32.     }(downloaded {PRINT FILEBASETIMES} time{PRINT suffix}){
  33.     NL
  34.     }Uploaded by {
  35.     BFG 2
  36.     IF FILEBASEUSER=0 THEN
  37.       PRINT SYSOPNAME
  38.       |PRINT "Sysop"
  39.     ELSE
  40.       READUSER FILEBASEUSER,0,USERN
  41.       PRINT USERN+" (#"+FILEBASEUSER+")"
  42.     ENDIF
  43.     BFG 7 PRINT " on "+FILEBASEDATE NL
  44.     BFG 7
  45.     PRINT "Short description: "
  46.     IF SHORTD>=0 THEN
  47.       BFG 3 SHOWDESCRIPTION SHORTD
  48.     ELSE
  49.       BFG 1
  50.       PRINT "No description available"
  51.     ENDIF
  52.     IF LONGD>=0 THEN
  53.       NL
  54.       BFG 7
  55.       PRINT "Long description:"
  56.       BFG 3
  57.       NL
  58.       SHOWDESCRIPTION LONGD
  59.     ENDIF
  60.     NL NL
  61.     BFG 6}<RETURN>{BFG 7}/{BFG 6}N{BFG 7}ext ({BFG 6}D{BFG 7})ownload ({
  62.     BFG 6}P{BFG 7})revious ({BFG 6}Q{BFG 7})ueue {
  63.     IF SYSOP OR USERNUMBER=FILEBASEUSER THEN
  64.       }({BFG 6}M{BFG 7})odify ({BFG 6}A{BFG 7})bort{
  65.       NL
  66.       }({BFG 6}S{BFG 7})tatus ({BFG 6}E{BFG 7})dit queue : {
  67.       GETr option,"NDPAQMSE"
  68.     ELSE
  69.       BFG 6}A{BFG 7}bort{
  70.       NL
  71.       }({BFG 6}S{BFG 7})tatus ({BFG 6}E{BFG 7})dit queue : {
  72.       GETr option,"NDPAQSE"
  73.     ENDIF
  74.     IF option="A" THEN
  75.       PRINT "abort"
  76.       CLOSEFILEBASE
  77.       END
  78.     ENDIF
  79.     IF option="Q" THEN
  80.       FLASH BFG 5 PRINT FILEBASENAME STD BFG 2} added to queue{
  81.       STD TAGFILE filenum%
  82.       filenum%=NEXTFILE
  83.     ENDIF
  84.     IF option="P" THEN
  85.         BFG 2 PRINT "previous"
  86.       filenum%=PREVFILE
  87.     ENDIF
  88.     IF option="E" THEN
  89.       | queue editor
  90.       | repeat loop and print of tags
  91.       | display, ask user remove/clear/download etc
  92.     ENDIF
  93.     IF option="S" THEN
  94.       BFG 2 PRINT "status"
  95.       NL NL BFG 5 PRINT "Your status : "
  96.       IF TAGGEDFILES<1 THEN
  97.         BFG 5}[ {BFG 1}Queued ({BFG 7}0{BFG 1}){BFG 5} ]{
  98.       ELSE
  99.         BFG 5}[ {BFG 1}Queued ({BFG 7 PRINT TAGGEDFILES BFG 1}){BFG 5} ]{
  100.       ENDIF
  101.       BFG 5} [{BFG 1} Time left ({BFG 7 PRINT TIMELEFT/6000} mins{BFG 1}){BFG 5} ]{
  102.       BFG 5} [{BFG 1} Time online ({BFG 7 PRINT TIMEONLINE/6000} mins{BFG 1}){BFG 5} ]{
  103.     ENDIF
  104.     IF option="D" THEN
  105.       IF FILEAREAACCESS AND CANREAD THEN
  106.         BFG 2 PRINT "Download"
  107.         REPORT "Downloading"
  108.         NL
  109.         BFG 2 PRINT"Z"
  110.         BFG 7 PRINT"modem / "
  111.         BFG 2 PRINT"Y"
  112.         BFG 7 PRINT"modem / "
  113.         BFG 2 PRINT"B"
  114.         BFG 7 PRINT"YmodemB / "
  115.         BFG 2 PRINT"X"
  116.         BFG 7 PRINT"modem / "
  117.         BFG 2 PRINT"1"
  118.         BFG 7 PRINT"Xmodem1K / "
  119.         BFG 2 PRINT"C"
  120.         BFG 7 PRINT"XmodemCRC / "
  121.         BFG 2 PRINT"Q"
  122.         BFG 7 PRINT"ueue / "
  123.         BFG 2 PRINT"A"
  124.         BFG 7 PRINT"bort"
  125.         GET protocol,"ZYBX1CQA"
  126.         IF protocol="Z" THEN
  127.           protocol="Zmodem"
  128.           xfer%=5
  129.         ENDIF
  130.         IF protocol="Y" THEN
  131.           protocol="Ymodem"
  132.           xfer%=3
  133.         ENDIF
  134.         IF protocol="B" THEN
  135.           protocol="YmodemB"
  136.           xfer%=4
  137.         ENDIF
  138.         IF protocol="X" THEN
  139.           protocol="Xmodem"
  140.           xfer%=0
  141.         ENDIF
  142.         IF protocol="1" THEN
  143.           protocol="Xmodem1K"
  144.           xfer%=2
  145.         ENDIF
  146.         IF protocol="C" THEN
  147.           protocol="XmodemCRC"
  148.           xfer%=1
  149.         ENDIF
  150.         IF protocol="A" THEN
  151.           protocol="Abort"
  152.           xfer%=99
  153.         ENDIF
  154.         IF protocol="Q" THEN
  155.           |xfer%=50
  156.           | Queue file
  157.           TAGFILE filenum%
  158.           NL
  159.           FLASH BFG 5 PRINT FILEBASENAME STD BFG 2} added to queue{
  160.           xfer%=99 | to skip the download
  161.         ENDIF
  162.         IF xfer%<>99 THEN
  163.           NL
  164.           BFG 3 PRINT "1 file for download ("+FILEBASESIZE+" bytes)...."
  165.           NL
  166.           BFG 2
  167.           PRINT "Start your "+protocol+" download now" NL
  168.           BFG 7 NL
  169.           DOWNLOAD filenum%,xfer%
  170.           NL
  171.         ENDIF
  172.       ELSE
  173.         BFG 1 NL
  174.         PRINT "You do not have access to download from this area"
  175.         NL
  176.       ENDIF
  177.     ENDIF
  178.     IF option="M" THEN
  179.       BFG 2 PRINT "modify"
  180.       NL BFG 7
  181.       BFG 1}D{BFG 7}delete file {BFG 1}L{BFG 7}ong description {
  182.       BFG 1}S{BFG 7}hort description {BFG 1}A{BFG 7}bort: {BFG 7
  183.       GET option,"DLSA"
  184.       IF option="D" THEN
  185.         BFG 2 PRINT "delete file"
  186.         BFG 1 NL
  187.         PRINT "Are you sure you want to delete file" BFG 5 
  188.         PRINT "#"+FILENUM%+" " BFG 7}[y/{BFG 1}N{BFG 7}]{
  189.         GETd option,"NY"
  190.         IF option="Y" THEN
  191.           BFG 1 PRINT " Yes"
  192.           DELETEFILE filenum%
  193.           NL
  194.           BFG 2 PRINT "File" BFG 5 PRINT " #"+filenum% BFG 2
  195.           PRINT " has been deleted"
  196.           | move on a file in the linked list
  197.           filenum%=NEXTFILE
  198.         ENDIF
  199.       ENDIF
  200.       IF option="S" THEN
  201.         BFG 2 PRINT "modify short desc."
  202.         DECLARE newsd,61
  203.         NL
  204.         BFG 3
  205.         }Short description:{
  206.         BATTR 3,1 INPUTc newsd,61 STD
  207.         SETSHORTDESCRIPTION filenum%,newsd
  208.         NL
  209.       ENDIF
  210.       IF option="L" THEN
  211.         BFG 2 PRINT "modify long desc."
  212.         NL NL BFG 1 PRINT "/A" BFG 7
  213.         PRINT " on a blank line will leave the description unchanged" NL
  214.         BFG 6 PRINT "Enter long description.." NL
  215.         WRITEMESSAGE 1,ok%
  216.         IF ok% THEN
  217.           SETLONGDESCRIPTION filenum%
  218.         ENDIF
  219.       ENDIF
  220.     ENDIF
  221.     IF option="N" OR option="" THEN
  222.       | next
  223.       BFG 2 PRINT "next"
  224.       filenum%=NEXTFILE
  225.     ENDIF
  226.     NL    
  227.   UNTIL filenum%=0
  228. ELSE
  229.   BFG 1
  230.   PRINT "You do not have access to this area"
  231.   NL
  232. ENDIF
  233. CLOSEFILEBASE
  234. NL
  235. GOSUB anykey
  236. }