#include "inspircd.h"
#include "users.h"
#include "commands.h"
-#include "helperfuncs.h"
+
#include "commands/cmd_join.h"
-extern InspIRCd* ServerInstance;
+
void cmd_join::Handle (const char** parameters, int pcnt, userrec *user)
{
if (ServerInstance->Parser->LoopCall(user, this, parameters, pcnt, 0, 1))
return;
- if (IsValidChannelName(parameters[0]))
+ if (ServerInstance->IsChannel(parameters[0]))
{
- add_channel(user, parameters[0], parameters[1], false);
+ chanrec::JoinUser(ServerInstance, user, parameters[0], false, parameters[1]);
return;
}
}
if (ServerInstance->Parser->LoopCall(user, this, parameters, pcnt, 0))
return;
- if (IsValidChannelName(parameters[0]))
+ if (ServerInstance->IsChannel(parameters[0]))
{
- add_channel(user, parameters[0], "", false);
+ chanrec::JoinUser(ServerInstance, user, parameters[0], false);
return;
}
}
- WriteServ(user->fd,"403 %s %s :Invalid channel name",user->nick, parameters[0]);
+ user->WriteServ("403 %s %s :Invalid channel name",user->nick, parameters[0]);
}