- SpamList* spamlist = (SpamList*)chan->GetExt("spam_list");
- if (spamlist)
- {
- for (SpamList::iterator i = spamlist->begin(); i != spamlist->end(); i++)
- {
- if (line.find(*i) != std::string::npos)
- {
- WriteServ(user->fd,"936 %s %s %s :Your message contained a censored word, and was blocked",user->nick, chan->name, i->c_str());
- return 1;
- }
- }
- }
- return 0;
+ public:
+
+ ModuleChanFilter(InspIRCd* Me)
+ : Module(Me)
+ {
+ cf = new ChanFilter(ServerInstance);
+ if (!ServerInstance->Modes->AddMode(cf))
+ throw ModuleException("Could not add new modes!");
+
+ cf->DoImplements(this);
+ Implementation eventlist[] = { I_OnCleanup, I_OnChannelDelete, I_OnRehash, I_OnUserPreMessage, I_OnUserPreNotice, I_OnSyncChannel };
+ ServerInstance->Modules->Attach(eventlist, this, 6);
+
+ ServerInstance->Modules->PublishInterface("ChannelBanList", this);