]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modes/cmode_o.cpp
extern time_t TIME -> InspIRCd::Time()
[user/henk/code/inspircd.git] / src / modes / cmode_o.cpp
index e8c3cbed7e0f7b1be121ce7a1eeacbcb29194a2f..63588b45624875f339306347cba4903dcebee220 100644 (file)
@@ -8,44 +8,36 @@
 #include "channels.h"
 #include "users.h"
 #include "helperfuncs.h"
-#include "message.h"
 #include "commands.h"
 #include "modules.h"
 #include "inspstring.h"
 #include "hashcomp.h"
 #include "modes/cmode_o.h"
 
-extern InspIRCd* ServerInstance;
-extern InspIRCd* ServerInstance;
-extern std::vector<Module*> modules;
-extern std::vector<ircd_module*> factory;
-extern int MODCOUNT;
-extern time_t TIME;
-
-ModeChannelOp::ModeChannelOp() : ModeHandler('o', 1, 1, true, MODETYPE_CHANNEL, false)
+ModeChannelOp::ModeChannelOp(InspIRCd* Instance) : ModeHandler(Instance, 'o', 1, 1, true, MODETYPE_CHANNEL, false)
 {
 }
 
 ModePair ModeChannelOp::ModeSet(userrec* source, userrec* dest, chanrec* channel, const std::string &parameter)
 {
-        userrec* x = Find(parameter);
-        if (x)
-        {
-                if (cstatus(x, channel) == STATUS_OP)
-                {
-                        return std::make_pair(true, x->nick);
-                }
-                else
-                {
-                        return std::make_pair(false, parameter);
-                }
-        }
+       userrec* x = ServerInstance->FindNick(parameter);
+       if (x)
+       {
+               if (channel->GetStatus(x) == STATUS_OP)
+               {
+                       return std::make_pair(true, x->nick);
+               }
+               else
+               {
+                       return std::make_pair(false, parameter);
+               }
+       }
        return std::make_pair(false, parameter);
 }
 
 ModeAction ModeChannelOp::OnModeChange(userrec* source, userrec* dest, chanrec* channel, std::string &parameter, bool adding)
 {
-       int status = cstatus(source, channel);
+       int status = channel->GetStatus(source);
 
        /* Call the correct method depending on wether we're adding or removing the mode */
        if (adding)
@@ -66,7 +58,7 @@ ModeAction ModeChannelOp::OnModeChange(userrec* source, userrec* dest, chanrec*
 
 std::string ModeChannelOp::AddOp(userrec *user,const char* dest,chanrec *chan,int status)
 {
-       userrec *d = ModeParser::SanityChecks(user,dest,chan,status);
+       userrec *d = ServerInstance->ModeGrok->SanityChecks(user,dest,chan,status);
 
        if (d)
        {
@@ -87,14 +79,14 @@ std::string ModeChannelOp::AddOp(userrec *user,const char* dest,chanrec *chan,in
                        }
                }
 
-               return ModeParser::Grant(d,chan,UCMODE_OP);
+               return ServerInstance->ModeGrok->Grant(d,chan,UCMODE_OP);
        }
        return "";
 }
 
 std::string ModeChannelOp::DelOp(userrec *user,const char *dest,chanrec *chan,int status)
 {
-       userrec *d = ModeParser::SanityChecks(user,dest,chan,status);
+       userrec *d = ServerInstance->ModeGrok->SanityChecks(user,dest,chan,status);
 
        if (d)
        {
@@ -118,7 +110,7 @@ std::string ModeChannelOp::DelOp(userrec *user,const char *dest,chanrec *chan,in
                        }
                }
 
-               return ModeParser::Revoke(d,chan,UCMODE_OP);
+               return ServerInstance->ModeGrok->Revoke(d,chan,UCMODE_OP);
        }
        return "";
 }