diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-03-27 20:20:15 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-03-27 20:20:15 +0000 |
commit | 28c82e83802100a2b7b6dadf5333a199c9fbe663 (patch) | |
tree | 8cbc6288a51f6baeb9b06f4ca7c40185fbcfa3d2 /src/modules/m_knock.cpp | |
parent | aea30280acf0a8faaca910815cad4e9530565685 (diff) |
Added 005 numeric handling to most of the modules
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@921 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modules/m_knock.cpp')
-rw-r--r-- | src/modules/m_knock.cpp | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/modules/m_knock.cpp b/src/modules/m_knock.cpp index dc4263335..474dd4014 100644 --- a/src/modules/m_knock.cpp +++ b/src/modules/m_knock.cpp @@ -64,7 +64,25 @@ class ModuleKnock : public Module Srv->AddExtendedMode('K',MT_CHANNEL,false,0,0); Srv->AddCommand("KNOCK",handle_knock,0,2); } - + + virtual void On005Numeric(std::string &output) + { + std::stringstream line(output); + std::string temp1, temp2; + while (!line.eof()) + { + line >> temp1; + if (temp1.substr(0,10) == "CHANMODES=") + { + // append the chanmode to the end + temp1 = temp1.substr(10,temp1.length()); + temp1 = "CHANMODES=" + temp1 + "K"; + } + temp2 = temp2 + temp1 + " "; + } + output = temp2.substr(0,temp2.length()-1) + std::string(" KNOCK"); + } + virtual ~ModuleKnock() { delete Srv; |