diff --git a/mystic/nodespy_term.pas b/mystic/nodespy_term.pas new file mode 100644 index 0000000..edb452e --- /dev/null +++ b/mystic/nodespy_term.pas @@ -0,0 +1,98 @@ +Unit NodeSpy_Term; + +{$I M_OPS.PAS} + +Interface + +Implementation + +Uses + m_Strings, + m_FileIO, + m_IniReader, + NodeSpy_Common; + +{$I NODESPY_ANSITERM.PAS} + +Type + PhoneRec = Record + Name : String[40]; + Address : String[60]; + User : String[30]; + Password : String[20]; + StatusBar : Boolean; + End; + +Var + Book : Array[1..200] of PhoneRec; + +Procedure InitializeBook; +Var + Count : Byte; +Begin + FillChar (Book, SizeOf(Book), 0); + + For Count := 1 to 200 Do + Book[Count].StatusBar := True; + + Book[1].Name := 'Mystic BBS Local Login'; + Book[1].Address := 'localhost:' + strI2S(Config.INetTNPort); +End; + +Procedure WriteBook; +Var + OutFile : Text; + Buffer : Array[1..4096] of Char; + Count : SmallInt; +Begin + Assign (OutFile, 'nodespy.phn'); + SetTextBuf (OutFile, Buffer); + ReWrite (OutFile); + + For Count := 1 to 200 Do Begin + WriteLn(OutFile, '[' + strI2S(Count) + ']'); + WriteLn(OutFile, #9 + 'name=' + Book[Count].Name); + WriteLn(OutFile, #9 + 'address=' + Book[Count].Address); + WriteLn(OutFile, #9 + 'user=' + Book[Count].User); + WriteLn(OutFile, #9 + 'pass=' + Book[Count].Password); + WriteLn(OutFile, #9 + 'statusbar=', Ord(Book[Count].StatusBar)); + WriteLn(OutFile, ''); + End; + + Close (OutFile); +End; + +Procedure LoadBook; +Var + INI : TIniReader; + Count : SmallInt; +Begin + ShowMsgBox (2, 'Loading phonebook'); + + INI := TIniReader.Create('nodespy.phn'); + + For Count := 1 to 200 Do Begin + Book[Count].Name := INI.ReadString(strI2S(Count), 'name', ''); + Book[Count].Address := INI.ReadString(strI2S(Count), 'address', ''); + Book[Count].User := INI.ReadString(strI2S(Count), 'user', ''); + Book[Count].Password := INI.ReadString(strI2S(Count), 'pass', ''); + Book[Count].StatusBar := INI.ReadString(strI2S(Count), 'statusbar', '1') = '1'; + End; + + INI.Free; +End; + +Procedure Terminal; +Begin + If Not FileExist('nodespy.phn') Then Begin + ShowMsgBox(2, 'Creating phone book'); + + InitializeBook; + WriteBook; + End Else + LoadBook; + + DrawTerminalAnsi; +End; + +End. \ No newline at end of file