#include <vector>
#include "users.h"
#include "channels.h"
-#include "helperfuncs.h"
+
#include "modules.h"
#include "inspircd.h"
class cmd_park : public command_t
{
public:
- cmd_park (InspIRCd* Instance) : command_t(Instance,"PARK", 0, 0)
+ cmd_park (InspIRCd* Instance) : command_t(Instance,"PARK", 0, 0)
{
this->source = "m_park.so";
}
- void Handle (const char** parameters, int pcnt, userrec *user)
+ CmdResult Handle (const char** parameters, int pcnt, userrec *user)
{
/** Parking. easy stuff.
*
if (othersessions >= ConcurrentParks)
{
user->WriteServ("927 "+std::string(user->nick)+" :You are already parked up to the maximum number of allowed times.");
+ return CMD_FAILURE;
}
else
{
pi.host = user->host;
pi.parktime = time(NULL);
pinfo.push_back(pi);
+ return CMD_SUCCESS;
}
}
class cmd_parkstats : public command_t
{
public:
- cmd_parkstats (InspIRCd* Instance) : command_t(Instance,"PARKSTATS", 'o', 0)
+ cmd_parkstats (InspIRCd* Instance) : command_t(Instance,"PARKSTATS", 'o', 0)
{
this->source = "m_park.so";
}
- void Handle (const char** parameters, int pcnt, userrec *user)
+ CmdResult Handle (const char** parameters, int pcnt, userrec *user)
{
char status[MAXBUF];
snprintf(status,MAXBUF,"NOTICE %s :There are a total of %lu parked clients on this server, with a maximum of %lu parked sessions allowed per user.",user->nick,(unsigned long)pinfo.size(),(unsigned long)ConcurrentParks);
user->WriteServ(std::string(status));
+ return CMD_SUCCESS;
}
};
class cmd_unpark : public command_t
{
public:
- cmd_unpark (InspIRCd* Instance) : command_t(Instance,"UNPARK", 0, 2)
+ cmd_unpark (InspIRCd* Instance) : command_t(Instance,"UNPARK", 0, 2)
{
this->source = "m_park.so";
syntax = "<nick> <key>";
}
- void Handle (const char** parameters, int pcnt, userrec *user)
+ CmdResult Handle (const char** parameters, int pcnt, userrec *user)
{
/** Unparking. complicated stuff.
*
if (!unpark)
{
user->WriteServ("942 %s %s :Invalid user specified.",user->nick, parameters[0]);
- return;
+ return CMD_FAILURE;
}
awaylog* awy;
unpark->GetExt("park_awaylog", awy);
if (!awy)
{
user->WriteServ("943 %s %s :This user is not parked.",user->nick, unpark->nick);
- return;
+ return CMD_FAILURE;
}
if (*key == atoi(parameters[1]))
{
else
{
user->WriteServ("928 "+std::string(user->nick)+" :Incorrect park key.");
+ return CMD_FAILURE;
}
+
+ return CMD_SUCCESS;
}
};