#include "inspircd.h"
-#include "u_listmode.h"
-
-/* $ModDesc: Provides the ability to allow channel operators to be exempt from certain modes. */
+#include "listmode.h"
/** Handles channel mode +X
*/
return true;
}
- bool TellListTooLong(User* user, Channel* chan, std::string &word)
+ void TellListTooLong(User* user, Channel* chan, std::string &word)
{
user->WriteNumeric(959, "%s %s %s :Channel exemptchanops list is full", user->nick.c_str(), chan->name.c_str(), word.c_str());
- return true;
}
void TellAlreadyOnList(User* user, Channel* chan, std::string &word)
public:
ExemptChanOps ec;
ExemptHandler(Module* me) : ec(me) {}
-
+
ModeHandler* FindMode(const std::string& mid)
{
if (mid.length() == 1)
unsigned int mypfx = chan->GetPrefixValue(user);
std::string minmode;
- modelist* list = ec.extItem.get(chan);
+ ListModeBase::ModeList* list = ec.GetList(chan);
if (list)
{
- for (modelist::iterator i = list->begin(); i != list->end(); ++i)
+ for (ListModeBase::ModeList::iterator i = list->begin(); i != list->end(); ++i)
{
std::string::size_type pos = (*i).mask.find(':');
if (pos == std::string::npos)
ExemptHandler eh;
public:
-
ModuleExemptChanOps() : eh(this)
{
}
- void init()
+ void init() CXX11_OVERRIDE
{
ServerInstance->Modules->AddService(eh.ec);
Implementation eventlist[] = { I_OnRehash, I_OnSyncChannel };
ServerInstance->OnCheckExemption = &ServerInstance->HandleOnCheckExemption;
}
- Version GetVersion()
+ Version GetVersion() CXX11_OVERRIDE
{
return Version("Provides the ability to allow channel operators to be exempt from certain modes.",VF_VENDOR);
}
- void OnRehash(User* user)
+ void OnRehash(User* user) CXX11_OVERRIDE
{
eh.ec.DoRehash();
}
- void OnSyncChannel(Channel* chan, Module* proto, void* opaque)
+ void OnSyncChannel(Channel* chan, Module* proto, void* opaque) CXX11_OVERRIDE
{
eh.ec.DoSyncChannel(chan, proto, opaque);
}