;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Program : QWK Commander 1.1 ;;
;; PpeName : QWK.PPE ;;
;; Made by : FluX /PR ;;
;; Made date : 01.19.96 ;;
;; Last updated : 01.20.96 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
String CfgFile
String Str(5)
String Menu
String CfgMenu
String Exiting
String Par
String Cmdln
Integer X(12),Y(12),MsgsAll,msgs,i
Declare Procedure Init()
Declare Procedure Config()
Declare Procedure GetMsgs()
Declare Procedure Command()
Declare Procedure PrintStat()
Begin
Init()
GetMsgs()
PrintStat()
Command()
AnsiPos 1,17
End
Procedure GetMsgs()
GetUser
For i = 0 to HiConfNum()
Let MsgsAll = HiMsgNum() - U_Lmr(0)
Let Msgs = Msgs + MsgsAll
Next i
EndProc
Procedure PrintStat()
Cls
DispFile Menu,0
GetUser
AnsiPos X(1),Y(1)
Let Par = ReadLine(CfgFile,13)
Par = ReplaceStr(Par,"%INF%",string(MsgsAll))
Print Par
AnsiPos X(2),Y(2)
Let Par = ReadLine(CfgFile,13)
Par = ReplaceStr(Par,"%INF%",string(QWKLimits(0)))
Print Par
AnsiPos X(3),Y(3)
Let Par = ReadLine(CfgFile,13)
Par = ReplaceStr(Par,"%INF%",string(QWKLimits(1)))
Print Par
AnsiPos X(4),Y(4)
Let Par = ReadLine(CfgFile,13)
Par = ReplaceStr(Par,"%INF%",string(QWKLimits(2)))
Print Par
AnsiPos X(5),Y(5)
Let Par = ReadLine(CfgFile,13)
Par = ReplaceStr(Par,"%INF%",string(QWKLimits(3)))
Print Par
EndProc
Procedure Command()
String Com
AnsiPos X(7),Y(7)
Print Str(5)
AnsiPos X(6),Y(6)
InputStr "_",Com, 7, 1, "1234",Newline
Select Case (Com)
Case 1
AnsiPos X(7),Y(7)
Print Str(1)
AnsiPos 1,17
KbdStuff "QWK D" + Chr(13)
Case 2
AnsiPos X(7),Y(7)
Print Str(2)
AnsiPos 1,17
KbdStuff "QWK U" + Chr(13)
Case 3
AnsiPos X(7),Y(7)
Print Str(3)
Config()
PrintStat()
Command()
Else
AnsiPos X(7),Y(7)
Print Left(Str(4),25)
End Select
EndProc
Procedure Config()
Integer MM ; Max msgs in qwk
Integer MC ; Max msgs in conf
Integer PER ; Personal attach limit
Integer PUB ; Public attach limit
AnsiPos X(8),Y(8)
Print " "
AnsiPos X(8),Y(8)
DispFile CfgMenu,0
AnsiPos X(9),Y(9)
InputStr "_", MM, 7, 4, "1234567890", Newline
AnsiPos X(10),Y(10)
InputStr "_", MC, 7, 4, "1234567890", Newline
AnsiPos X(11),Y(11)
InputStr "_", PER, 7, 4, "1234567890", Newline
AnsiPos X(12),Y(12)
InputStr "_", PUB, 7, 4, "1234567890", Newline
GetUser
If (MM = "") Let MM = QWKLimits(0)
If (MC = "") Let MC = QWKLimits(1)
If (PER = "") Let PER = QWKLimits(2)
If (PUB = "") Let PUB = QWKLimits(3)
QWKLimits 0,mm
QWKLimits 1,mc
QWKLimits 2,per
QWKLimits 3,pub
PutUser
EndProc
Procedure Init()
If (!PSA(8)) Then
PrintLn "@X0CSorry, but QWK Support PSA are not installed on this system, tell sysop!@X07"
FreshLine
End
EndIf
Integer i,n
Let CmdLn = GetToken()
Select Case (CmdLn)
Case "D","d"
KbdStuff "QWK D" + Chr(13)
End
Case "U","u"
KbdStuff "QWK U" + Chr(13)
End
End Select
Let CfgFile = PpePath() + "QWK.CFG"
Let Menu = PpePath() + "QWK.PCB"
Let CfgMenu = PpePath() + "QWK.CNF"
Let n = 1
For i = 1 to 12
Tokenize ReadLine(CfgFile,i)
Let X(i) = GetToken()
Let Y(i) = GetToken()
Next i
For i = 14 to 18
Let Str(n) = ReadLine(CfgFile,i)
Inc n
Next i
EndProc