]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_operlog.cpp
Merge insp20
[user/henk/code/inspircd.git] / src / modules / m_operlog.cpp
index cf816897bd93d0132b79c9c383179d758acd9e08..68f50bf6d046e47ebbc77067321b54b225afdd75 100644 (file)
@@ -28,10 +28,7 @@ class ModuleOperLog : public Module
  public:
        void init() CXX11_OVERRIDE
        {
-               Implementation eventlist[] = { I_OnPreCommand, I_On005Numeric, I_OnRehash };
-               ServerInstance->Modules->Attach(eventlist, this, sizeof(eventlist)/sizeof(Implementation));
                ServerInstance->SNO->EnableSnomask('r', "OPERLOG");
-               OnRehash(NULL);
        }
 
        Version GetVersion() CXX11_OVERRIDE
@@ -39,7 +36,7 @@ class ModuleOperLog : public Module
                return Version("A module which logs all oper commands to the ircd log at default loglevel.", VF_VENDOR);
        }
 
-       void OnRehash(User* user) CXX11_OVERRIDE
+       void ReadConfig(ConfigStatus& status) CXX11_OVERRIDE
        {
                tosnomask = ServerInstance->Config->ConfValue("operlog")->getBool("tosnomask", false);
        }
@@ -50,13 +47,12 @@ class ModuleOperLog : public Module
                if (!validated)
                        return MOD_RES_PASSTHRU;
 
-               if ((user->IsOper()) && (IS_LOCAL(user)) && (user->HasPermission(command)))
+               if ((user->IsOper()) && (user->HasPermission(command)))
                {
-                       Command* thiscommand = ServerInstance->Parser->GetHandler(command);
+                       Command* thiscommand = ServerInstance->Parser.GetHandler(command);
                        if ((thiscommand) && (thiscommand->flags_needed == 'o'))
                        {
-                               std::string line = irc::stringjoiner(parameters).GetJoined();
-                               std::string msg = "[" + user->GetFullRealHost() + "] " + command + " " + line;
+                               std::string msg = "[" + user->GetFullRealHost() + "] " + command + " " + irc::stringjoiner(parameters);
                                ServerInstance->Logs->Log(MODNAME, LOG_DEFAULT, "OPERLOG: " + msg);
                                if (tosnomask)
                                        ServerInstance->SNO->WriteGlobalSno('r', msg);