diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-03-27 19:46:15 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-03-27 19:46:15 +0000 |
commit | aea30280acf0a8faaca910815cad4e9530565685 (patch) | |
tree | ece725042769ff33f5ff3502cd2e440412f1cea0 /src/modules | |
parent | dac485fc0946c9b351e317d7233062b453696ead (diff) |
Fixed detection of missing opertypes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@920 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modules')
-rw-r--r-- | src/modules/m_blockcolor.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/modules/m_blockcolor.cpp b/src/modules/m_blockcolor.cpp index fb98709a4..dc86d6e15 100644 --- a/src/modules/m_blockcolor.cpp +++ b/src/modules/m_blockcolor.cpp @@ -15,6 +15,7 @@ */ #include <stdio.h> +#include <sstream> #include "users.h" #include "channels.h" #include "modules.h" @@ -31,6 +32,25 @@ class ModuleBlockColor : public Module Srv = new Server; Srv->AddExtendedMode('c',MT_CHANNEL,false,0,0); } + + virtual void On005Numeric(std::string &output) + { + // we don't really have a limit... + 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 + "c"; + } + temp2 = temp2 + temp1 + " "; + } + output = temp2.substr(0,temp2.length()-1); + } virtual int OnUserPreMessage(userrec* user,void* dest,int target_type, std::string &text) { |