diff options
| author | 2019-07-27 19:12:29 +0100 | |
|---|---|---|
| committer | 2019-07-27 19:12:29 +0100 | |
| commit | ada6646b6546e936f5f9d91f63f9f9fc6f651ef5 (patch) | |
| tree | 817e2f69b601d4bbf0ef720a69240050c915560d /src/modules/m_spanningtree/misccommands.cpp | |
| parent | Remove code relating to v3 API changes and v2 module compatibility. (diff) | |
| parent | Improve the "max connections exceeded" oper snotice. (diff) | |
Merge branch 'insp3' into master.
Diffstat (limited to 'src/modules/m_spanningtree/misccommands.cpp')
| -rw-r--r-- | src/modules/m_spanningtree/misccommands.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/modules/m_spanningtree/misccommands.cpp b/src/modules/m_spanningtree/misccommands.cpp index 827ea2562..bccdf5016 100644 --- a/src/modules/m_spanningtree/misccommands.cpp +++ b/src/modules/m_spanningtree/misccommands.cpp @@ -29,6 +29,41 @@ #include "commands.h" #include "treeserver.h" +void CmdBuilder::FireEvent(Server* target, const char* cmd, ClientProtocol::TagMap& taglist) +{ + FOREACH_MOD_CUSTOM(Utils->Creator->GetMessageEventProvider(), ServerProtocol::MessageEventListener, OnBuildMessage, (target, cmd, taglist)); + UpdateTags(); +} + +void CmdBuilder::FireEvent(User* target, const char* cmd, ClientProtocol::TagMap& taglist) +{ + FOREACH_MOD_CUSTOM(Utils->Creator->GetMessageEventProvider(), ServerProtocol::MessageEventListener, OnBuildMessage, (target, cmd, taglist)); + UpdateTags(); +} + +void CmdBuilder::UpdateTags() +{ + std::string taglist; + if (!tags.empty()) + { + char separator = '@'; + for (ClientProtocol::TagMap::const_iterator iter = tags.begin(); iter != tags.end(); ++iter) + { + taglist.push_back(separator); + separator = ';'; + taglist.append(iter->first); + if (!iter->second.value.empty()) + { + taglist.push_back('='); + taglist.append(iter->second.value); + } + } + taglist.push_back(' '); + } + content.replace(0, tagsize, taglist); + tagsize = taglist.length(); +} + CmdResult CommandSNONotice::Handle(User* user, Params& params) { ServerInstance->SNO.WriteToSnoMask(params[0][0], "From " + user->nick + ": " + params[1]); |
