]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_ojoin.cpp
m_remove Recognize /REMOVE <chan> <nick>
[user/henk/code/inspircd.git] / src / modules / m_ojoin.cpp
index 83a0494805a5aa4a0b9f8ec5385d5d787177e584..e4314873bcb073998cb14d0013dde61e5e9569ce 100644 (file)
@@ -84,16 +84,14 @@ class CommandOjoin : public SplitCommand
 
 /** channel mode +Y
  */
-class NetworkPrefix : public ModeHandler
+class NetworkPrefix : public PrefixMode
 {
  public:
        NetworkPrefix(Module* parent, char NPrefix)
-               : ModeHandler(parent, "official-join", 'Y', PARAM_ALWAYS, MODETYPE_CHANNEL)
+               : PrefixMode(parent, "official-join", 'Y')
        {
-               list = true;
                prefix = NPrefix;
                levelrequired = INT_MAX;
-               m_paramtype = TR_NICK;
                prefixrank = NETWORK_VALUE;
        }
 
@@ -106,12 +104,6 @@ class NetworkPrefix : public ModeHandler
 
                return MOD_RES_PASSTHRU;
        }
-
-       ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string &parameter, bool adding)
-       {
-               return MODEACTION_ALLOW;
-       }
-
 };
 
 class ModuleOjoin : public Module
@@ -138,7 +130,6 @@ class ModuleOjoin : public Module
                mycommand.npmh = np;
 
                ServerInstance->Modules->AddService(*np);
-               ServerInstance->Modules->AddService(mycommand);
        }
 
        ModResult OnUserPreJoin(LocalUser* user, Channel* chan, const std::string& cname, std::string& privs, const std::string& keygiven) CXX11_OVERRIDE
@@ -171,7 +162,7 @@ class ModuleOjoin : public Module
                if (source == memb->user)
                        return MOD_RES_PASSTHRU;
 
-               source->WriteNumeric(484, source->nick+" "+memb->chan->name+" :Can't kick "+memb->user->nick+" as they're on official network business.");
+               source->WriteNumeric(ERR_RESTRICTED, memb->chan->name+" :Can't kick "+memb->user->nick+" as they're on official network business.");
                return MOD_RES_DENY;
        }