new handler for RPL_INVITING 341, fixes #1007
authorJohannes Huber <johu@gmx.de>
Tue, 27 Jul 2010 02:12:49 +0000 (04:12 +0200)
committerManuel Nickschas <sputnick@quassel-irc.org>
Tue, 10 Aug 2010 18:45:26 +0000 (20:45 +0200)
src/core/ircserverhandler.cpp
src/core/ircserverhandler.h

index 033d6c8..4c421da 100644 (file)
@@ -1039,6 +1039,23 @@ void IrcServerHandler::handle333(const QString &prefix, const QList<QByteArray>
                   tr("Topic set by %1 on %2") .arg(serverDecode(params[1]), QDateTime::fromTime_t(channelDecode(channel, params[2]).toUInt()).toString()));
 }
 
+/* RPL_INVITING - "<nick> <channel>*/
+void IrcServerHandler::handle341(const QString &prefix, const QList<QByteArray> &params) {
+  Q_UNUSED(prefix);
+  if(!checkParamCount("IrcServerHandler::handle341()", params, 2))
+    return;
+
+  QString nick = serverDecode(params[0]);
+
+  IrcChannel *channel = network()->ircChannel(serverDecode(params[1]));
+  if(!channel) {
+    qWarning() << "IrcServerHandler::handle341(): unknown channel:" << params[1];
+    return;
+  }
+  
+  emit displayMsg(Message::Server, BufferInfo::ChannelBuffer, channel->name(), tr("%1 has been invited to %2").arg(nick).arg(channel->name()));
+}
+
 /*  RPL_WHOREPLY: "<channel> <user> <host> <server> <nick>
               ( "H" / "G" > ["*"] [ ( "@" / "+" ) ] :<hopcount> <real name>" */
 void IrcServerHandler::handle352(const QString &prefix, const QList<QByteArray> &params) {
index 652c808..30f2d1d 100644 (file)
@@ -76,6 +76,7 @@ public slots:
   void handle331(const QString &prefix, const QList<QByteArray> &params);   // RPL_NOTOPIC
   void handle332(const QString &prefix, const QList<QByteArray> &params);   // RPL_TOPIC
   void handle333(const QString &prefix, const QList<QByteArray> &params);   // Topic set by...
+  void handle341(const QString &prefix, const QList<QByteArray> &params);   // RPL_INVITING
   void handle352(const QString &prefix, const QList<QByteArray> &params);   // RPL_WHOREPLY
   void handle353(const QString &prefix, const QList<QByteArray> &params);   // RPL_NAMREPLY
   void handle369(const QString &prefix, const QList<QByteArray> &params);   // RPL_ENDOFWHOWAS