ChanLogTargets logstreams;
public:
- ModuleChanLog() {
+ void init()
+ {
Implementation eventlist[] = { I_OnRehash, I_OnSendSnotice };
- ServerInstance->Modules->Attach(eventlist, this, 2);
+ ServerInstance->Modules->Attach(eventlist, this, sizeof(eventlist)/sizeof(Implementation));
OnRehash(NULL);
}
virtual void OnRehash(User *user)
{
- ConfigReader MyConf;
std::string snomasks;
std::string channel;
logstreams.clear();
- for (int i = 0; i < MyConf.Enumerate("chanlog"); i++)
+ ConfigTagList tags = ServerInstance->Config->ConfTags("chanlog");
+ for (ConfigIter i = tags.first; i != tags.second; ++i)
{
- channel = MyConf.ReadValue("chanlog", "channel", i);
- snomasks = MyConf.ReadValue("chanlog", "snomasks", i);
+ channel = i->second->getString("channel");
+ snomasks = i->second->getString("snomasks");
if (channel.empty() || snomasks.empty())
{
Channel *c = ServerInstance->FindChan(it->second);
if (c)
{
- c->WriteChannelWithServ(ServerInstance->Config->ServerName.c_str(), "PRIVMSG %s :%s", c->name.c_str(), buf);
+ c->WriteChannelWithServ(ServerInstance->Config->ServerName, "PRIVMSG %s :%s", c->name.c_str(), buf);
ServerInstance->PI->SendChannelPrivmsg(c, 0, buf);
}
}
char buf[MAXBUF];
snprintf(buf, MAXBUF, "\2%s\2: %s", type.c_str(), msg.c_str());
- c->WriteChannelWithServ(ServerInstance->Config->ServerName.c_str(), "PRIVMSG %s :%s", c->name.c_str(), buf);
+ c->WriteChannelWithServ(ServerInstance->Config->ServerName, "PRIVMSG %s :%s", c->name.c_str(), buf);
ServerInstance->PI->SendChannelPrivmsg(c, 0, buf);
Logging = false;
}