Hello All!
I have a tiny, little MPL utility that you all might find useful. I call it, "Files Since Last Call". It's a little utility that I use to announce to callers how many files have been uploaded, and in which directories, since their last call. I place this in my prelogin menu.
MCI codes may, or may not show up correctly, so you may need to do some
editing on that front.
Just download with the 'X' command, take out all this unwanted text, and compile it.
fslc.mps
-----8<--------------------
Uses Cfg
Uses User
Uses FBase
Type
RecFileList = Record
FileName : String[70];
Size : LongInt;
DatTim : LongInt;
Uploader : String[30];
Flags : Byte;
Downloads : LongInt;
Rating : Byte;
DescPtr : LongInt;
DescLines : Byte;
End;
Var Files : RecFileList
Var TotFiles : Integer
Var Ok2,Ok : Boolean = True
Function ReadListEntry(FN:String;I:Integer):Boolean
Var Ret : Boolean=False
Var Fp : File
Begin
fAssign(Fp,CfgDataPath+FN+'.dir',66)
fReset(Fp)
If IoResult = 0 Then Begin
fSeek(Fp,(I-1)*SizeOf(Files))
If Not fEof(Fp) Then Begin
fRead(Fp,Files,SizeOf(Files))
Ret:=True
End
fClose(Fp)
End
ReadListEntry:=Ret
End
Procedure Main
Var Done : Boolean = False
Var I,H : Integer
Var S : String
Begin
H:=1
While GetFBase(H) Do Begin
If ACS(FBaseACS) Then Begin
I:=0
TotFiles:=0
While ReadListEntry(FBaseFN,I+1) Do Begin
If Files.DatTim >= UserLastOn Then Begin
TotFiles:=TotFiles+1
End
I:=I+1
End
If TotFiles > 0 Then Begin
If Ok Then Begin
WriteLn('|CR ::: There are new files
si ce your last visit:|CR')
Ok:=False
Ok2:=Ok
End
WriteLn(''+PadLt(Int2Str(TotFiles),5,' ')+ ' new file(s
in ' + FBaseName)
End
End
H:=H+1
End
End
Begin
GetThisUser
Main
If Not Ok Then Write('|CR |PA')
End
-----8<------------------------
"No matter where you go, there you are!" - B. Bonzai
--- Mystic BBS v1.10 A51 (Linux)
* Origin: Cyberia BBS | Cyberia.Darktech.Org | Kingwood, TX (46:1/116)
■ Synchronet ■ thePharcyde_ >>
telnet://bbs.pharcyde.org (Wisconsin)