From 72943b2c720c1d94b145b4fa61bfb89d65d4ef9c Mon Sep 17 00:00:00 2001 From: om Date: Wed, 25 Jan 2006 20:24:46 +0000 Subject: Add InsertMode function to helperfuncs.(cpp|h) for easily adding modes to the CHANMODES section of the 005 numeric git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2897 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/helperfuncs.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'src/helperfuncs.cpp') diff --git a/src/helperfuncs.cpp b/src/helperfuncs.cpp index 767cb7caa..2923041fc 100644 --- a/src/helperfuncs.cpp +++ b/src/helperfuncs.cpp @@ -1373,3 +1373,26 @@ std::string GetFullProgDir(char** argv, int argc) return otherdir; } +int InsertMode(std::string &output, const char* mode, unsigned short section) +{ + unsigned short currsection = 1; + unsigned int pos = output.find("CHANMODES=", 0) + 10; // +10 for the length of "CHANMODES=" + + if(section > 4 || section == 0) + { + log(DEBUG, "InsertMode: CHANMODES doesn't have a section %dh :/", section); + return 0; + } + + for(; pos < output.size(); pos++) + { + if(section == currsection) + break; + + if(output[pos] == ',') + currsection++; + } + + output.insert(pos, mode); + return 1; +} -- cgit v1.2.3