}
char status = 0;
const char* target = parameters[0];
- if ((*target == '@') || (*target == '%') || (*target == '+'))
+ if (ServerInstance->Modes->FindPrefix(*target))
{
status = *target;
target++;
{
if ((chan->IsModeSet('n')) && (!chan->HasUser(user)))
{
- user->WriteServ("404 %s %s :Cannot send to channel (no external messages)", user->nick, chan->name);
+ user->WriteNumeric(404, "%s %s :Cannot send to channel (no external messages)", user->nick, chan->name);
return CMD_FAILURE;
}
if ((chan->IsModeSet('m')) && (chan->GetStatus(user) < STATUS_VOICE))
{
- user->WriteServ("404 %s %s :Cannot send to channel (+m)", user->nick, chan->name);
+ user->WriteNumeric(404, "%s %s :Cannot send to channel (+m)", user->nick, chan->name);
return CMD_FAILURE;
}
}
/* Check again, a module may have zapped the input string */
if (temp.empty())
{
- user->WriteServ("412 %s :No text to send", user->nick);
+ user->WriteNumeric(412, "%s :No text to send", user->nick);
return CMD_FAILURE;
}
else
{
/* no such nick/channel */
- user->WriteServ("401 %s %s :No such nick/channel",user->nick, target);
+ user->WriteNumeric(401, "%s %s :No such nick/channel",user->nick, target);
return CMD_FAILURE;
}
return CMD_SUCCESS;
if (dest && strcasecmp(dest->server, targetserver + 1))
{
/* Incorrect server for user */
- user->WriteServ("401 %s %s :No such nick/channel",user->nick, parameters[0]);
+ user->WriteNumeric(401, "%s %s :No such nick/channel",user->nick, parameters[0]);
return CMD_FAILURE;
}
}
{
if (!*parameters[1])
{
- user->WriteServ("412 %s :No text to send", user->nick);
+ user->WriteNumeric(412, "%s :No text to send", user->nick);
return CMD_FAILURE;
}
if (IS_AWAY(dest))
{
/* auto respond with aweh msg */
- user->WriteServ("301 %s %s :%s",user->nick,dest->nick,dest->awaymsg);
+ user->WriteNumeric(301, "%s %s :%s",user->nick,dest->nick,dest->awaymsg);
}
int MOD_RESULT = 0;
else
{
/* no such nick/channel */
- user->WriteServ("401 %s %s :No such nick/channel",user->nick, parameters[0]);
+ user->WriteNumeric(401, "%s %s :No such nick/channel",user->nick, parameters[0]);
return CMD_FAILURE;
}
return CMD_SUCCESS;