summaryrefslogtreecommitdiff
path: root/src/modules/m_services.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/m_services.cpp')
-rw-r--r--src/modules/m_services.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/modules/m_services.cpp b/src/modules/m_services.cpp
index dd1506717..d3e9066e8 100644
--- a/src/modules/m_services.cpp
+++ b/src/modules/m_services.cpp
@@ -37,6 +37,24 @@ class ModuleServices : public Module
Srv->AddExtendedMode('R',MT_CLIENT,false,0,0);
Srv->AddExtendedMode('M',MT_CHANNEL,false,0,0);
}
+
+ 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 + "rRM";
+ }
+ temp2 = temp2 + temp1 + " ";
+ }
+ output = temp2.substr(0,temp2.length()-1);
+ }
virtual int OnExtendedMode(userrec* user, void* target, char modechar, int type, bool mode_on, string_list &params)
{