]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/cmd_away.cpp
Spotted problem: must clear out all prefixes attached to a user when they quit or...
[user/henk/code/inspircd.git] / src / cmd_away.cpp
index f882904c20a3d92cbd287b3758cc824ad7ecde87..64c16e914400bf0c826af17345be610423a63f8d 100644 (file)
 #include "users.h"
 #include "modules.h"
 #include "commands.h"
-#include "helperfuncs.h"
+
 #include "commands/cmd_away.h"
 
-extern ServerConfig* Config;
-extern InspIRCd* ServerInstance;
-extern int MODCOUNT;
-extern std::vector<Module*> modules;
-extern std::vector<ircd_module*> factory;
 
 
-void cmd_away::Handle (char **parameters, int pcnt, userrec *user)
+void cmd_away::Handle (const char** parameters, int pcnt, userrec *user)
 {
-       if (pcnt)
+       if ((pcnt) && (*parameters[0]))
        {
                strlcpy(user->awaymsg,parameters[0],MAXAWAY);
-               WriteServ(user->fd,"306 %s :You have been marked as being away",user->nick);
+               user->WriteServ("306 %s :You have been marked as being away",user->nick);
                FOREACH_MOD(I_OnSetAway,OnSetAway(user));
        }
        else
        {
                *user->awaymsg = 0;
-               WriteServ(user->fd,"305 %s :You are no longer marked as being away",user->nick);
+               user->WriteServ("305 %s :You are no longer marked as being away",user->nick);
                FOREACH_MOD(I_OnCancelAway,OnCancelAway(user));
        }
 }