diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/cmd_invite.cpp | 6 | ||||
-rw-r--r-- | src/configreader.cpp | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/cmd_invite.cpp b/src/cmd_invite.cpp index a6e82d281..72902998c 100644 --- a/src/cmd_invite.cpp +++ b/src/cmd_invite.cpp @@ -86,6 +86,12 @@ CmdResult cmd_invite::Handle (const char** parameters, int pcnt, userrec *user) case ServerConfig::INVITE_ANNOUNCE_OPS: c->WriteAllExceptSender(user, true, '@', "NOTICE %s :*** %s invited %s into the channel", c->name, user->nick, u->nick); break; + case ServerConfig::INVITE_ANNOUNCE_DYNAMIC: + if (c->IsModeSet('i')) + c->WriteAllExceptSender(user, true, '@', "NOTICE %s :*** %s invited %s into the channel", c->name, user->nick, u->nick); + else + c->WriteChannelWithServ(ServerInstance->Config->ServerName, "NOTICE %s :*** %s invited %s into the channel", c->name, user->nick, u->nick); + break; default: /* Nobody */ break; diff --git a/src/configreader.cpp b/src/configreader.cpp index 06a86a775..a22e0c620 100644 --- a/src/configreader.cpp +++ b/src/configreader.cpp @@ -361,6 +361,8 @@ bool ValidateInvite(ServerConfig* conf, const char* tag, const char* value, Valu conf->AnnounceInvites = ServerConfig::INVITE_ANNOUNCE_OPS; else if (v == "all") conf->AnnounceInvites = ServerConfig::INVITE_ANNOUNCE_ALL; + else if (v == "dynamic") + conf->AnnounceInvites = ServerConfig::INVITE_ANNOUNCE_DYNAMIC; else conf->AnnounceInvites = ServerConfig::INVITE_ANNOUNCE_NONE; |