X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_ircv3.cpp;h=b7dd0e81bbfcd1e50a00f9f5aa198ec27804d0e2;hb=a5d110282a864fd2e91b51ce360a977cd0643657;hp=06765d69665cf6203949950bf5e097c8fd193788;hpb=c244b6686cdd906e126542609ee27d913131d66d;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_ircv3.cpp b/src/modules/m_ircv3.cpp index 06765d696..b7dd0e81b 100644 --- a/src/modules/m_ircv3.cpp +++ b/src/modules/m_ircv3.cpp @@ -75,16 +75,20 @@ class ModuleIRCv3 : public Module ModuleIRCv3() : cap_accountnotify(this, "account-notify"), cap_awaynotify(this, "away-notify"), cap_extendedjoin(this, "extended-join") + { + } + + void init() { OnRehash(NULL); Implementation eventlist[] = { I_OnUserJoin, I_OnPostJoin, I_OnSetAway, I_OnEvent, I_OnRehash }; - ServerInstance->Modules->Attach(eventlist, this, 5); + ServerInstance->Modules->Attach(eventlist, this, sizeof(eventlist)/sizeof(Implementation)); } void OnRehash(User* user) { ConfigTag* conf = ServerInstance->Config->ConfValue("ircv3"); - accountnotify = conf->getBool("accoutnotify", true); + accountnotify = conf->getBool("accountnotify", conf->getBool("accoutnotify", true)); awaynotify = conf->getBool("awaynotify", true); extendedjoin = conf->getBool("extendedjoin", true); } @@ -218,7 +222,7 @@ class ModuleIRCv3 : public Module { // Send the away notify line if the current member is local, has the away-notify cap and isn't excepted User* member = IS_LOCAL(it->first); - if ((member) && (cap_awaynotify.ext.get(member)) && (last_excepts.find(member) == last_excepts.end())) + if ((member) && (cap_awaynotify.ext.get(member)) && (last_excepts.find(member) == last_excepts.end()) && (it->second != memb)) { member->Write(line); }