]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_services_account.cpp
Use CommandBase::Params instead of std::vector<std::string>.
[user/henk/code/inspircd.git] / src / modules / m_services_account.cpp
index 05cc2b4167ce3b67cddcb2bd292fb3127f7021ea..c3f7155a6ff239e3e632676cee1ccd349b31060f 100644 (file)
@@ -25,6 +25,7 @@
 #include "inspircd.h"
 #include "modules/account.h"
 #include "modules/exemption.h"
+#include "modules/whois.h"
 
 enum
 {
@@ -188,7 +189,7 @@ class ModuleServicesAccount : public Module, public Whois::EventListener
                        m5.RemoveMode(user);
        }
 
-       ModResult OnUserPreMessage(User* user, void* dest, int target_type, std::string& text, char status, CUList& exempt_list, MessageType msgtype) CXX11_OVERRIDE
+       ModResult OnUserPreMessage(User* user, const MessageTarget& target, MessageDetails& details) CXX11_OVERRIDE
        {
                if (!IS_LOCAL(user))
                        return MOD_RES_PASSTHRU;
@@ -196,9 +197,9 @@ class ModuleServicesAccount : public Module, public Whois::EventListener
                std::string *account = accountname.get(user);
                bool is_registered = account && !account->empty();
 
-               if (target_type == TYPE_CHANNEL)
+               if (target.type == MessageTarget::TYPE_CHANNEL)
                {
-                       Channel* c = (Channel*)dest;
+                       Channel* c = target.Get<Channel>();
                        ModResult res = CheckExemption::Call(exemptionprov, user, c, "regmoderated");
 
                        if (c->IsModeSet(m2) && !is_registered && res != MOD_RES_ALLOW)
@@ -208,9 +209,9 @@ class ModuleServicesAccount : public Module, public Whois::EventListener
                                return MOD_RES_DENY;
                        }
                }
-               else if (target_type == TYPE_USER)
+               else if (target.type == MessageTarget::TYPE_USER)
                {
-                       User* u = (User*)dest;
+                       User* u = target.Get<User>();
 
                        if (u->IsModeSet(m3) && !is_registered)
                        {