From 9ff40fb603fadfe2f766319e23d013ccae45a424 Mon Sep 17 00:00:00 2001 From: mysticbbs Date: Sun, 14 Apr 2013 13:30:57 -0400 Subject: [PATCH] A32/Nodelist match option --- mystic/bbs_cfg_syscfg.pas | 6 +++--- mystic/bbs_msgbase.pas | 13 +++++++++++++ mystic/mutil_echoimport.pas | 2 +- mystic/records.pas | 6 +++--- mystic/whatsnew.txt | 6 ++++++ 5 files changed, 26 insertions(+), 7 deletions(-) diff --git a/mystic/bbs_cfg_syscfg.pas b/mystic/bbs_cfg_syscfg.pas index ed8bdeb..002651a 100644 --- a/mystic/bbs_cfg_syscfg.pas +++ b/mystic/bbs_cfg_syscfg.pas @@ -469,9 +469,9 @@ Begin 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, 20, 30, @Config.AcsCrossPost, Topic + 'ACS to allow crosspost messages'); - Form.AddStr ('A', ' Attachment ACS', 11, 13, 29, 13, 16, 20, 30, @Config.AcsFileAttach, Topic + 'ACS to allow file attachments'); - Form.AddStr ('S', ' Node Lookup ACS', 10, 14, 29, 14, 17, 20, 30, @Config.AcsNodeLookup, Topic + 'ACS to allow nodelist search'); + Form.AddBol ('S', ' Force NL Match', 11, 12, 29, 12, 16, 3, @Config.ForceNodeList, Topic + 'Force nodelist lookup match when sending netmail?'); + Form.AddStr ('R', ' Crosspost ACS', 12, 13, 29, 13, 15, 20, 30, @Config.AcsCrossPost, Topic + 'ACS to allow crosspost messages'); + Form.AddStr ('A', ' Attachment ACS', 11, 14, 29, 14, 16, 20, 30, @Config.AcsFileAttach, Topic + 'ACS to allow file attachments'); 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'); diff --git a/mystic/bbs_msgbase.pas b/mystic/bbs_msgbase.pas index f2c8136..45d6e41 100644 --- a/mystic/bbs_msgbase.pas +++ b/mystic/bbs_msgbase.pas @@ -182,6 +182,7 @@ Var Listed : LongInt; ListType : Byte; HasList : Boolean; + Addr : RecEchoMailAddr; Begin HasList := FileExist(Config.DataPath + 'nodelist.txt'); NodeList := TNodeListSearch.Create; @@ -268,6 +269,18 @@ Begin Break; End; + End Else + If (Listed = 0) And Not FromMenu And Not Config.ForceNodelist Then Begin + If strStr2Addr(Result, Addr) Then Begin + Session.io.PromptInfo[1] := strAddr2Str(Addr); + Session.io.PromptInfo[7] := MsgTo; + + If Session.io.GetYN(Session.GetPrompt(502), True) Then Begin + Result := strAddr2Str(NodeData.Address); + + Break; + End; + End; End Else Begin Session.io.PromptInfo[1] := strComma(Listed); diff --git a/mystic/mutil_echoimport.pas b/mystic/mutil_echoimport.pas index 00a672b..3001545 100644 --- a/mystic/mutil_echoimport.pas +++ b/mystic/mutil_echoimport.pas @@ -382,7 +382,7 @@ Begin (FileExt = 'SA') Then ImportPacketBundle(DirInfo.Name) Else - Log (2, '!', ' Unknown inbound file: ' + DirInfo.Name); + Log (2, '!', ' Unknown inbound file ' + DirInfo.Name); End; FindNext (DirInfo); diff --git a/mystic/records.pas b/mystic/records.pas index 7aafaef..5a9dc6f 100644 --- a/mystic/records.pas +++ b/mystic/records.pas @@ -23,7 +23,7 @@ Const mysSoftwareID = 'Mystic'; // no idea mysCopyYear = '1997-2013'; // its been a long time! - mysVersion = '1.10 A31'; // current version + mysVersion = '1.10 A32'; // current version mysDataChanged = '1.10 A11'; // version of last records change {$IFDEF WIN32} @@ -323,8 +323,8 @@ Type //inetSMTPPW : String[30]; //EmailValidationLevel //AllowEmailPWReset - - Reserved : Array[1..812] of Char; + ForceNodeList : Boolean; + Reserved : Array[1..811] of Char; End; Const diff --git a/mystic/whatsnew.txt b/mystic/whatsnew.txt index d6ba16a..ea685ba 100644 --- a/mystic/whatsnew.txt +++ b/mystic/whatsnew.txt @@ -3123,3 +3123,9 @@ wierdness during message replies let me know. + + + New option in System Config -> Message Base settings called "Forced NL + Match". If this is set to TRUE, Mystic will force a user who is sending + netmail to match an address found in the nodelist. If it is set to false + Mystic will still allow a user to search the nodelist, but if it does + not find a match they will still have the option to send the netmail.