diff --git a/mystic/bbs_cfg_main.pas b/mystic/bbs_cfg_main.pas index ebd6a70..f6901b7 100644 --- a/mystic/bbs_cfg_main.pas +++ b/mystic/bbs_cfg_main.pas @@ -210,6 +210,7 @@ Begin 'E' : Configuration_EchoMailAddress(True); '3' : Configuration_OptionalFields; 'F' : Configuration_FileSettings; + 'M' : Configuration_MessageSettings; 'O' : Configuration_QWKSettings; 'X' : Break; Else diff --git a/mystic/bbs_cfg_syscfg.pas b/mystic/bbs_cfg_syscfg.pas index 88e5930..6c5f631 100644 --- a/mystic/bbs_cfg_syscfg.pas +++ b/mystic/bbs_cfg_syscfg.pas @@ -16,6 +16,7 @@ Procedure Configuration_TelnetServer; Procedure Configuration_POP3Server; Procedure Configuration_SMTPServer; Procedure Configuration_NNTPServer; +Procedure Configuration_MessageSettings; Implementation @@ -488,4 +489,48 @@ Begin Box.Free; End; +Procedure Configuration_MessageSettings; +Var + Box : TAnsiMenuBox; + Form : TAnsiMenuForm; + Topic : String[80]; +Begin + Topic := '|03(|09Message Settings|03) |01-|09> |15'; + + Box := TAnsiMenuBox.Create; + Form := TAnsiMenuForm.Create; + + Box.Open (4, 5, 77, 19); + + VerticalLine (27, 7, 17); + VerticalLine (65, 7, 14); + + Form.AddBol ('C', ' List Compression', 9, 7, 29, 7, 18, 3, @Config.MCompress, Topic + 'Compress numbers in area list?'); + Form.AddByte ('I', ' List Columns', 13, 8, 29, 8, 14, 3, 1, 2, @Config.MColumns, Topic + 'Columns in area list'); + Form.AddBol ('S', ' Show Message Header', 6, 9, 29, 9, 21, 3, @Config.MShowHeader, Topic + 'Redisplay header after each page'); + Form.AddBol ('B', ' Bases in Group List', 6, 10, 29, 10, 21, 3, @Config.MShowBases, Topic + 'Calculate bases in group list?'); + Form.AddByte ('X', ' Max AutoSig Lines', 8, 11, 29, 11, 19, 3, 1, 99, @Config.MaxAutoSig, Topic + 'Max autosig lines'); + Form.AddStr ('R', ' Crosspost ACS', 12, 12, 29, 12, 15, 30, 30, @Config.AcsCrossPost, Topic + 'ACS to allow crosspost messages'); + Form.AddStr ('A', ' Attachment ACS', 11, 13, 29, 13, 16, 30, 30, @Config.AcsFileAttach, Topic + 'ACS to allow file attachments'); + Form.AddStr ('S', ' Node Lookup ACS', 10, 14, 29, 14, 17, 30, 30, @Config.AcsNodeLookup, Topic + 'ACS to allow nodelist search'); + Form.AddBol ('T', ' External FSE', 13, 15, 29, 15, 14, 3, @Config.FSEditor, Topic + 'Use external editor'); + Form.AddStr ('F', ' FSE Command Line', 9, 16, 29, 16, 18, 40, 60, @Config.FSCommand, Topic + 'FSE command line'); + Form.AddStr ('D', ' Default Origin', 11, 17, 29, 17, 16, 40, 50, @Config.Origin, Topic + 'Origin line for new bases'); + + Form.AddAttr ('Q', ' Quote Color', 52, 7, 67, 7, 13, @Config.ColorQuote, Topic + 'Color for quoted text'); + Form.AddAttr ('E', ' Text Color' , 53, 8, 67, 8, 12, @Config.ColorText, Topic + 'Color for message text'); + Form.AddAttr ('O', ' Tear Color' , 53, 9, 67, 9, 12, @Config.ColorTear, Topic + 'Color for tear line'); + Form.AddAttr ('L', ' Origin Color', 51, 10, 67, 10, 14, @Config.ColorOrigin, Topic + 'Color for origin line'); + Form.AddAttr ('K', ' Kludge Color', 51, 11, 67, 11, 14, @Config.ColorKludge, Topic + 'Color for kludge line'); + Form.AddBol ('N', ' Netmail Crash', 50, 12, 67, 12, 15, 3, @Config.NetCrash, Topic + 'Use netmail crash flag'); + Form.AddBol ('M', ' Netmail Hold', 51, 13, 67, 13, 14, 3, @Config.NetHold, Topic + 'Use netmail hold flag'); + Form.AddBol ('1', ' Netmail Killsent', 47, 14, 67, 14, 18, 3, @Config.NetKillsent, Topic + 'Use netmail killsent flag'); + + Form.Execute; + Form.Free; + + Box.Close; + Box.Free; +End; + End. diff --git a/mystic/records.pas b/mystic/records.pas index 19a8977..08ca47b 100644 --- a/mystic/records.pas +++ b/mystic/records.pas @@ -97,36 +97,38 @@ Type SysopPW : String[15]; SystemPW : String[15]; FeedbackTo : String[30]; - Inactivity : Word; - LoginTime : Byte; - LoginAttempts : Byte; - PWAttempts : Byte; - PWChange : Word; - PWInquiry : Boolean; - DefStartMenu : String[20]; + Inactivity : Word; // Inactivity seconds (0=disabled) + DefStartMenu : String[20]; // Default start menu DefFallMenu : String[20]; DefThemeFile : String[20]; DefTermMode : Byte; DefScreenSize : Byte; DefScreenCols : Byte; - UseMatrix : Boolean; - MatrixMenu : String[20]; - MatrixPW : String[15]; - MatrixAcs : String[mysMaxAcsSize]; - AcsSysop : String[mysMaxAcsSize]; - AcsInvisLogin : String[mysMaxAcsSize]; - AcsSeeInvis : String[mysMaxAcsSize]; - AcsMultiLogin : String[mysMaxAcsSize]; - SysopMacro : Array[1..4] of String[80]; // Sysop Macros ChatStart : SmallInt; // Chat hour start ChatEnd : SmallInt; // Chat hour end: mins since midnight ChatFeedback : Boolean; // E-mail sysop if page isn't answered ChatLogging : Boolean; // Record SysOp chat to CHAT.LOG? + AcsSysop : String[mysMaxAcsSize]; + // LOGIN/MATRIX + LoginTime : Byte; + LoginAttempts : Byte; + PWAttempts : Byte; + PWChange : Word; + PWInquiry : Boolean; + UseMatrix : Boolean; + MatrixMenu : String[20]; + MatrixPW : String[15]; + MatrixAcs : String[mysMaxAcsSize]; + AcsInvisLogin : String[mysMaxAcsSize]; + AcsSeeInvis : String[mysMaxAcsSize]; + AcsMultiLogin : String[mysMaxAcsSize]; + // CONSOLE SETTINGS + SysopMacro : Array[1..4] of String[80]; // Sysop Macros f1-f4 UseStatusBar : Boolean; StatusColor1 : Byte; StatusColor2 : Byte; StatusColor3 : Byte; - // NEW USER SETTINGS + // NEW USER SETTINGS 1 AllowNewUsers : Boolean; NewUserSec : SmallInt; NewUserPW : String[15]; @@ -135,12 +137,13 @@ Type StartFGroup : Word; UseUSAPhone : Boolean; UserNameFormat : Byte; - UserDateType : Byte; // 1=MM/DD/YY 2=DD/MM/YY 3=YY/DD/MM 4=Ask - UserEditorType : Byte; // 0=Line 1=Full 2=Ask - UserHotKeys : Byte; // 0=no 1=yes 2=ask - UserFullChat : Byte; // 0=no 1=yes 2=ask - UserFileList : Byte; // 0=Normal 1=Lightbar 2=Ask - UserReadType : Byte; // 0=normal 1=ansi 2=ask + // NEW USER SETTINGS 2 + UserDateType : Byte; // 1=MM/DD/YY 2=DD/MM/YY 3=YY/DD/MM 4=Ask + UserEditorType : Byte; // 0=Line 1=Full 2=Ask + UserHotKeys : Byte; // 0=no 1=yes 2=ask + UserFullChat : Byte; // 0=no 1=yes 2=ask + UserFileList : Byte; // 0=Normal 1=Lightbar 2=Ask + UserReadType : Byte; // 0=normal 1=ansi 2=ask UserMailIndex : Byte; UserReadIndex : Byte; UserQuoteWin : Byte; @@ -159,25 +162,15 @@ Type AskUserNote : Boolean; AskScreenSize : Boolean; AskScreenCols : Boolean; + // NEW USER OPTIONAL OptionalField : Array[1..10] of RecUserOptionalField; // MESSAGE BASE SETTINGS MCompress : Boolean; MColumns : Byte; - MShowHeader : Boolean; // re-show msg header after pause + MShowHeader : Boolean; // re-show msg header after pause MShowBases : Boolean; MaxAutoSig : Byte; - qwkMaxBase : Word; - qwkMaxPacket : Word; - qwkArchive : String[4]; - qwkBBSID : String[8]; - qwkWelcome : String[mysMaxPathSize]; - qwkNews : String[mysMaxPathSize]; - qwkGoodbye : String[mysMaxPathSize]; Origin : String[50]; // Default origin line - NetAddress : Array[1..30] of RecEchoMailAddr; // echomail addresses - NetUplink : Array[1..30] of RecEchoMailAddr; // echomail uplink addresses - NetDomain : Array[1..30] of String[8]; // echomail domains (5D) - NetDesc : Array[1..30] of String[25]; // echomail network description NetCrash : Boolean; NetHold : Boolean; NetKillSent : Boolean; @@ -191,13 +184,26 @@ Type AcsNodeLookup : String[mysMaxAcsSize]; FSEditor : Boolean; FSCommand : String[60]; + // ECHOMAIL NETWORKS + NetAddress : Array[1..30] of RecEchoMailAddr; // echomail addresses + NetUplink : Array[1..30] of RecEchoMailAddr; // echomail uplink addresses + NetDomain : Array[1..30] of String[8]; // echomail domains (5D) + NetDesc : Array[1..30] of String[25]; // echomail network description + // OFFLINE MAIL (should include local qwk path) + qwkMaxBase : Word; + qwkMaxPacket : Word; + qwkArchive : String[4]; + qwkBBSID : String[8]; + qwkWelcome : String[mysMaxPathSize]; + qwkNews : String[mysMaxPathSize]; + qwkGoodbye : String[mysMaxPathSize]; // FILE BASE SETTINGS FCompress : Boolean; FColumns : Byte; FShowHeader : Boolean; FShowBases : Boolean; - FDupeScan : Byte; // 0=no 1=yes 2=global - UploadBase : Word; // Default upload file base + FDupeScan : Byte; // 0=no 1=yes 2=global + UploadBase : Word; // Default upload file base ImportDIZ : Boolean; FreeUL : LongInt; FreeCDROM : LongInt;