#include "inspircd.h"
-/* $ModDesc: Forces opers to join the specified channel(s) on oper-up */
-
class ModuleOperjoin : public Module
{
std::string operChan;
}
public:
- void init()
- {
- OnRehash(NULL);
- Implementation eventlist[] = { I_OnPostOper, I_OnRehash };
- ServerInstance->Modules->Attach(eventlist, this, sizeof(eventlist)/sizeof(Implementation));
- }
-
-
- virtual void OnRehash(User* user)
+ void ReadConfig(ConfigStatus& status) CXX11_OVERRIDE
{
ConfigTag* tag = ServerInstance->Config->ConfValue("operjoin");
tokenize(operChan,operChans);
}
- virtual Version GetVersion()
+ Version GetVersion() CXX11_OVERRIDE
{
return Version("Forces opers to join the specified channel(s) on oper-up", VF_VENDOR);
}
- virtual void OnPostOper(User* user, const std::string &opertype, const std::string &opername)
+ void OnPostOper(User* user, const std::string &opertype, const std::string &opername) CXX11_OVERRIDE
{
LocalUser* localuser = IS_LOCAL(user);
if (!localuser)
return;
for (std::vector<std::string>::const_iterator i = operChans.begin(); i != operChans.end(); ++i)
- if (ServerInstance->IsChannel(*i, ServerInstance->Config->Limits.ChanMax))
+ if (ServerInstance->IsChannel(*i))
Channel::JoinUser(localuser, *i, override);
std::string chanList = localuser->oper->getConfig("autojoin");
tokenize(chanList, typechans);
for (std::vector<std::string>::const_iterator it = typechans.begin(); it != typechans.end(); ++it)
{
- if (ServerInstance->IsChannel(*it, ServerInstance->Config->Limits.ChanMax))
+ if (ServerInstance->IsChannel(*it))
{
Channel::JoinUser(localuser, *it, override);
}