diff options
author | Attila Molnar <attilamolnar@hush.com> | 2014-10-27 15:26:20 +0100 |
---|---|---|
committer | Attila Molnar <attilamolnar@hush.com> | 2014-10-27 15:26:20 +0100 |
commit | 3a3ff949670c61a4a8856e1391222e156eb1cd17 (patch) | |
tree | fd8023fefa4829ceea428ec424608ef9aace1d9a /src/modules/m_delaymsg.cpp | |
parent | cba05046ce20eed4c429093296eb481bf95d7e07 (diff) | |
parent | c99a43968f6a04c7d5d3038b4e39d14c22aa6e89 (diff) |
Merge insp20
Diffstat (limited to 'src/modules/m_delaymsg.cpp')
-rw-r--r-- | src/modules/m_delaymsg.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/modules/m_delaymsg.cpp b/src/modules/m_delaymsg.cpp index 06a05db02..c906e2c30 100644 --- a/src/modules/m_delaymsg.cpp +++ b/src/modules/m_delaymsg.cpp @@ -47,6 +47,7 @@ class DelayMsgMode : public ParamMode<DelayMsgMode, LocalIntExt> class ModuleDelayMsg : public Module { DelayMsgMode djm; + bool allownotice; public: ModuleDelayMsg() : djm(this) { @@ -55,6 +56,7 @@ class ModuleDelayMsg : public Module Version GetVersion() CXX11_OVERRIDE; void OnUserJoin(Membership* memb, bool sync, bool created, CUList&) CXX11_OVERRIDE; ModResult OnUserPreMessage(User* user, void* dest, int target_type, std::string& text, char status, CUList& exempt_list, MessageType msgtype) CXX11_OVERRIDE; + void ReadConfig(ConfigStatus& status) CXX11_OVERRIDE; }; ModeAction DelayMsgMode::OnSet(User* source, Channel* chan, std::string& parameter) @@ -97,7 +99,7 @@ ModResult ModuleDelayMsg::OnUserPreMessage(User* user, void* dest, int target_ty if ((!user) || (!IS_LOCAL(user))) return MOD_RES_PASSTHRU; - if ((target_type != TYPE_CHANNEL) || (msgtype != MSG_PRIVMSG)) + if ((target_type != TYPE_CHANNEL) || ((!allownotice) && (msgtype == MSG_NOTICE))) return MOD_RES_PASSTHRU; Channel* channel = (Channel*) dest; @@ -130,4 +132,10 @@ ModResult ModuleDelayMsg::OnUserPreMessage(User* user, void* dest, int target_ty return MOD_RES_PASSTHRU; } +void ModuleDelayMsg::ReadConfig(ConfigStatus& status) +{ + ConfigTag* tag = ServerInstance->Config->ConfValue("delaymsg"); + allownotice = tag->getBool("allownotice", true); +} + MODULE_INIT(ModuleDelayMsg) |