class ModuleDeaf : public Module
{
User_d m1;
-
std::string deaf_bypasschars;
std::string deaf_bypasschars_uline;
ModuleDeaf()
: m1(this)
{
- if (!ServerInstance->Modes->AddMode(&m1))
- throw ModuleException("Could not add new modes!");
+ }
+
+ void init()
+ {
+ ServerInstance->Modules->AddService(m1);
OnRehash(NULL);
Implementation eventlist[] = { I_OnUserPreMessage, I_OnUserPreNotice, I_OnRehash };
- ServerInstance->Modules->Attach(eventlist, this, 3);
+ ServerInstance->Modules->Attach(eventlist, this, sizeof(eventlist)/sizeof(Implementation));
}
-
virtual void OnRehash(User* user)
{
- ConfigReader conf;
- deaf_bypasschars = conf.ReadValue("deaf", "bypasschars", 0);
- deaf_bypasschars_uline = conf.ReadValue("deaf", "bypasscharsuline", 0);
+ ConfigTag* tag = ServerInstance->Config->ConfValue("deaf");
+ deaf_bypasschars = tag->getString("bypasschars");
+ deaf_bypasschars_uline = tag->getString("bypasscharsuline");
}
virtual ModResult OnUserPreNotice(User* user,void* dest,int target_type, std::string &text, char status, CUList &exempt_list)
}
}
- virtual ~ModuleDeaf()
- {
- }
-
virtual Version GetVersion()
{
return Version("Provides usermode +d to block channel messages and channel notices", VF_VENDOR);
}
-
};
MODULE_INIT(ModuleDeaf)