X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_operprefix.cpp;h=640f2c5d8dcf98a5f07b33692c365f2e0e99d0a1;hb=8cebe2878f3878afce6f643d93668155cb26801d;hp=6614b867bf1ee6cd64c7ff5413ee674b61a03d0b;hpb=08164c9502c3a9db1810d2e8e1d291280b975aee;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_operprefix.cpp b/src/modules/m_operprefix.cpp index 6614b867b..640f2c5d8 100644 --- a/src/modules/m_operprefix.cpp +++ b/src/modules/m_operprefix.cpp @@ -3,7 +3,7 @@ * +------------------------------------+ * * InspIRCd: (C) 2002-2009 InspIRCd Development Team - * See: http://www.inspircd.org/wiki/index.php/Credits + * See: http://wiki.inspircd.org/Credits * * This program is free but copyrighted software; see * the file COPYING for details. @@ -19,7 +19,7 @@ #include "inspircd.h" -static char prefixchar; +#define OPERPREFIX_VALUE 1000000 std::set* SetupExt(User* user) { @@ -51,11 +51,11 @@ void AddPrefixChan(User* user, Channel* channel) class OperPrefixMode : public ModeHandler { public: - OperPrefixMode(InspIRCd* Instance) : ModeHandler(Instance, 'y', 1, 1, true, MODETYPE_CHANNEL, false, prefixchar) { } + OperPrefixMode(InspIRCd* Instance, char pfx) : ModeHandler(Instance, 'y', 1, 1, true, MODETYPE_CHANNEL, false, pfx, pfx, TR_NICK) { } unsigned int GetPrefixRank() { - return 40000; + return OPERPREFIX_VALUE; } ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding, bool servermode) @@ -111,11 +111,9 @@ class ModuleOperPrefixMode : public Module ModuleOperPrefixMode(InspIRCd* Me) : Module(Me) { ConfigReader Conf(ServerInstance); - std::string tmp; - tmp = Conf.ReadValue("operprefix", "prefix", "!", 0, false); - strlcpy(&prefixchar,tmp.c_str(),2); + std::string pfx = Conf.ReadValue("operprefix", "prefix", "!", 0, false); - opm = new OperPrefixMode(ServerInstance); + opm = new OperPrefixMode(ServerInstance, pfx[0]); if ((!ServerInstance->Modes->AddMode(opm))) throw ModuleException("Could not add a new mode!"); @@ -129,9 +127,9 @@ class ModuleOperPrefixMode : public Module DelPrefixChan(user, channel); else AddPrefixChan(user, channel); - char modeline[]="+y"; + char modeline[] = "+y"; if (negate) - modeline [0]='-'; + modeline[0] = '-'; std::vector modechange; modechange.push_back(channel->name); modechange.push_back(modeline); @@ -189,7 +187,7 @@ class ModuleOperPrefixMode : public Module { for (UCListIter v = user->chans.begin(); v != user->chans.end(); v++) { - ModePair ms=opm->ModeSet(NULL, NULL , v->first, user->nick); + ModePair ms = opm->ModeSet(NULL, NULL , v->first, user->nick); if (ms.first) { PushChanMode(v->first, user, true);