* | Inspire Internet Relay Chat Daemon |
* +------------------------------------+
*
- * InspIRCd: (C) 2002-2009 InspIRCd Development Team
+ * InspIRCd: (C) 2002-2010 InspIRCd Development Team
* See: http://wiki.inspircd.org/Credits
*
* This program is free but copyrighted software; see
ServerInstance->Modules->Attach(eventlist, this, 4);
OnRehash(NULL);
- ServerInstance->Modules->PublishInterface("ChannelBanList", this);
}
virtual Version GetVersion()
{
- return Version("Provides the ability to allow channel operators to be exempt from certain modes.",VF_VENDOR|VF_COMMON,API_VERSION);
+ return Version("Provides the ability to allow channel operators to be exempt from certain modes.",VF_VENDOR);
}
virtual void OnRehash(User* user)
ec.DoSyncChannel(chan, proto, opaque);
}
- virtual ModResult OnChannelRestrictionApply(Membership* memb, Channel* chan, const char* restriction)
+ virtual ModResult OnChannelRestrictionApply(User* user, Channel* chan, const char* restriction)
{
irc::spacesepstream allowstream(alwaysexempt), denystream(neverexempt);
std::string current;
- if (memb->getRank() != OP_VALUE)
+ if (chan->GetPrefixValue(user) != OP_VALUE)
return MOD_RES_PASSTHRU; // They're not opped, so we don't exempt them
while(denystream.GetToken(current))
if (!strcasecmp(restriction, current.c_str())) return MOD_RES_PASSTHRU; // This mode is set to never allow exemptions in the config
return MOD_RES_PASSTHRU;
}
-
- virtual ~ModuleExemptChanOps()
- {
- ServerInstance->Modules->UnpublishInterface("ChannelBanList", this);
- }
};
MODULE_INIT(ModuleExemptChanOps)