diff --git a/cfgs/config/advanced.cfg b/cfgs/config/advanced.cfg index e454880..59fe751 100644 --- a/cfgs/config/advanced.cfg +++ b/cfgs/config/advanced.cfg @@ -130,6 +130,10 @@ AKAMATCHNET YES ; Enable aka matching in netmail. ; (use the "From" field only). ;AKAMATCHFROMTO ALWAYS ; Use default area AKA, instead of AKA from "To" +// +AKAMatchManually No +;AKAMatchManually Yes + ---------------------------------------------------------------------- -- NODELISTS AND USERLISTS diff --git a/cfgs/config/advanced.rus b/cfgs/config/advanced.rus index 7233452..dd27eee 100644 --- a/cfgs/config/advanced.rus +++ b/cfgs/config/advanced.rus @@ -98,6 +98,11 @@ AKAMatchFromTo No ; ; выбирать AKA на основании поля To. ;AKAMatchFromTo Always ; Использовать AKA по умолчанию для арии, вместо AKA из поля To +// После всех правил автоматического подбора АКА, будет предложено +// выбрать другой/скорректировать АКА из списка. (по умолчанию: No) +AKAMatchManually No +;AKAMatchManually Yes + ---------------------------------------------------------------------- -- НОДЛИСТЫ И СПИСКИ ПОЛЬЗОВАТЕЛЕЙ (USERLISTS) diff --git a/docs/notework.txt b/docs/notework.txt index 5be12b7..5820478 100644 --- a/docs/notework.txt +++ b/docs/notework.txt @@ -10,11 +10,15 @@ ______________________________________________________________________ Notes for GoldED+ 1.1.5, /snapshot/ ______________________________________________________________________ + ++ New config file token: AKAMatchManually (yes/no). If set to "yes" then manual + selection of the AKA is forced. + (Patch from Ianos Gnatiuc 2:5030/830.17) + + New macros in message template for echomail messages: - @echopath - path to echoarea base (fill pathname like specified in config), + @echopath - path to echoarea base (full pathname like specified in config), @echoname - echoarea name (areatag), @echotype - echoarea base type (OPUS, JAM, Squish, PCBoard, ...). - (Patch from Ianos Gnatiuc 2:5030/830.17) + Golded+/lnx: Adopt clipboard usage to newest versions of Midnight Commander. diff --git a/golded3/gccfgg.cpp b/golded3/gccfgg.cpp index 3085848..0016ef5 100644 --- a/golded3/gccfgg.cpp +++ b/golded3/gccfgg.cpp @@ -687,6 +687,7 @@ CfgGed::CfgGed() { addressbookadd = YES; addresslookupfirst = false; akamatchfromto = NO; + akamatchmanually = false; areaautoid = AUTOID_LONG; areacopydirect = false; areacopyaddid = false; diff --git a/golded3/gccfgg.h b/golded3/gccfgg.h index cebb2fb..a762bf0 100644 --- a/golded3/gccfgg.h +++ b/golded3/gccfgg.h @@ -39,6 +39,7 @@ const word CRC_AKAMATCHECHO = 0xF0C1; const word CRC_AKAMATCHFROMTO = 0xD8B9; const word CRC_AKAMATCHING = 0x869A; const word CRC_AKAMATCHLOCAL = 0x4AC4; +const word CRC_AKAMATCHMANUALLY = 0x9F9C; const word CRC_AKAMATCHNET = 0xFD6E; const word CRC_AREA = 0x010B; const word CRC_AREAAUTOID = 0x365D; diff --git a/golded3/gccfgg0.cpp b/golded3/gccfgg0.cpp index 4728703..b818705 100644 --- a/golded3/gccfgg0.cpp +++ b/golded3/gccfgg0.cpp @@ -192,6 +192,7 @@ SwitchA: case CRC_AKAMATCH : CfgAkamatch (); break; case CRC_AKAMATCHFROMTO : CfgAkamatchfromto (); break; case CRC_AKAMATCHING : CfgAkamatching (); break; + case CRC_AKAMATCHMANUALLY : CfgAkamatchmanually (); break; case CRC_AREAAUTOID : CfgAreaautoid (); break; case CRC_AREACFMREPLYTO : CfgAreacfmreplyto (); break; case CRC_AREACOPYADDID : CfgAreacopyaddid (); break; diff --git a/golded3/gccfgg1.cpp b/golded3/gccfgg1.cpp index a450952..136ead8 100644 --- a/golded3/gccfgg1.cpp +++ b/golded3/gccfgg1.cpp @@ -191,6 +191,13 @@ void CfgAkamatching() { // ------------------------------------------------------------------ +void CfgAkamatchmanually() +{ + CFG->akamatchmanually = (0 != GetYesno(val)); +} + +// ------------------------------------------------------------------ + void CfgArea() { AL.GetArea(val); diff --git a/golded3/gcprot.h b/golded3/gcprot.h index 9bce2cb..b26c1fb 100644 --- a/golded3/gcprot.h +++ b/golded3/gcprot.h @@ -42,6 +42,7 @@ void CfgAkamatchecho (); void CfgAkamatchfromto (); void CfgAkamatching (); void CfgAkamatchlocal (); +void CfgAkamatchmanually (); void CfgAkamatchnet (); void CfgArea (); void CfgAreaautoid (); diff --git a/golded3/gecfgg.h b/golded3/gecfgg.h index 3f306ca..fbf528f 100644 --- a/golded3/gecfgg.h +++ b/golded3/gecfgg.h @@ -141,6 +141,7 @@ public: std::vector aka; std::vector akamatch; int akamatchfromto; + bool akamatchmanually; int areaautoid; Echo areacfmreplyto; bool areacopydirect; diff --git a/golded3/gepost.cpp b/golded3/gepost.cpp index c742ea5..a3fe918 100644 --- a/golded3/gepost.cpp +++ b/golded3/gepost.cpp @@ -907,6 +907,8 @@ void MakeMsg(int mode, GMsg* omsg, bool ignore_replyto) { AkaMatch(&aka_addr, &omsg->orig); AA->SetAka(aka_addr); } + + if (CFG->akamatchmanually) ChangeAka(); } if((mode == MODE_REPLYCOMMENT) and not omsg->fwdorig.net) {