void IrcServerHandler::handleKick(QString prefix, QList<QByteArray> params) {
network()->updateNickFromMask(prefix);
- IrcUser *victim = network()->ircUser(serverDecode(params[1]));
+ IrcUser *victim = network()->ircUser(params[1]);
QString channel = serverDecode(params[0]);
Q_ASSERT(victim);
QString msg;
if(params.count() > 2) // someone got a reason!
- msg = QString("%1 %2").arg(victim->nick()).arg(bufferDecode(channel, params[2]));
+ msg = QString("%1 %2").arg(victim->nick()).arg(channelDecode(channel, params[2]));
else
msg = victim->nick();
return;
}
- if(network()->isChannelName(params[0])) {
+ if(network()->isChannelName(serverDecode(params[0]))) {
// Channel Modes
emit displayMsg(Message::Mode, BufferInfo::ChannelBuffer, serverDecode(params[0]), serverDecode(params).join(" "), prefix);
? nickFromMask(prefix)
: prefix;
- networkConnection()->ctcpHandler()->parse(Message::Notice, sender, target, userDecode(prefix, params[1]));
+ networkConnection()->ctcpHandler()->parse(Message::Notice, sender, target, userDecode(sender, params[1]));
}
void IrcServerHandler::handlePart(QString prefix, QList<QByteArray> params) {
void IrcServerHandler::handleTopic(QString prefix, QList<QByteArray> params) {
IrcUser *ircuser = network()->updateNickFromMask(prefix);
QString channel = serverDecode(params[0]);
- QString topic = bufferDecode(channel, params[1]);
+ QString topic = channelDecode(channel, params[1]);
Q_ASSERT(ircuser);
network()->ircChannel(channel)->setTopic(topic);
void IrcServerHandler::handle301(QString prefix, QList<QByteArray> params) {
Q_UNUSED(prefix);
QString nickName = serverDecode(params[0]);
- QString awayMessage = serverDecode(params.last());
+ QString awayMessage = userDecode(nickName, params.last());
IrcUser *ircuser = network()->ircUser(nickName);
if(ircuser) {
(real life: "<nick> <integer> <integer> :seconds idle, signon time) */
//TODO: parse real life message
void IrcServerHandler::handle317(QString prefix, QList<QByteArray> params) {
- Q_UNUSED(prefix)
- IrcUser *ircuser = network()->ircUser(serverDecode(params[0]));
+ Q_UNUSED(prefix);
+ QString nick = serverDecode(params[0]);
+ IrcUser *ircuser = network()->ircUser(nick);
if(ircuser) {
QDateTime now = QDateTime::currentDateTime();
int idleSecs = serverDecode(params[1]).toInt();
ircuser->setIdleTime(now.addSecs(idleSecs));
emit displayMsg(Message::Server, BufferInfo::StatusBuffer, "", tr("[Whois] %1 is idling for %2 seconds").arg(ircuser->nick()).arg(ircuser->idleTime().secsTo(now)));
} else {
- emit displayMsg(Message::Server, BufferInfo::StatusBuffer, "", tr("[Whois] idle message: %1").arg(serverDecode(params).join(" ")));
+ emit displayMsg(Message::Server, BufferInfo::StatusBuffer, "", tr("[Whois] idle message: %1").arg(userDecode(nick, params).join(" ")));
}
}
void IrcServerHandler::handle332(QString prefix, QList<QByteArray> params) {
Q_UNUSED(prefix);
QString channel = serverDecode(params[0]);
- QString topic = bufferDecode(channel, params[1]);
+ QString topic = channelDecode(channel, params[1]);
network()->ircChannel(channel)->setTopic(topic);
emit displayMsg(Message::Server, BufferInfo::ChannelBuffer, channel, tr("Topic for %1 is \"%2\"").arg(channel, topic));
}
void IrcServerHandler::handle333(QString prefix, QList<QByteArray> params) {
Q_UNUSED(prefix);
QString channel = serverDecode(params[0]);
- emit displayMsg(Message::Server, BufferInfo::ChannelBuffer, channel, tr("Topic set by %1 on %2") .arg(bufferDecode(channel, params[1]), QDateTime::fromTime_t(bufferDecode(channel, params[2]).toUInt()).toString()));
+ emit displayMsg(Message::Server, BufferInfo::ChannelBuffer, channel,
+ tr("Topic set by %1 on %2") .arg(serverDecode(params[1]), QDateTime::fromTime_t(channelDecode(channel, params[2]).toUInt()).toString()));
}
/* RPL_WHOREPLY: "<channel> <user> <host> <server> <nick>