summaryrefslogtreecommitdiff
path: root/src/modules/m_knock.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/m_knock.cpp')
-rw-r--r--src/modules/m_knock.cpp20
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;