-void CtcpHandler::handlePing(CtcpType ctcptype, const QString &prefix, const QString &target, const QString ¶m) {
+void CtcpHandler::handleClientinfo(CtcpType ctcptype, const QString &prefix, const QString &target, const QString ¶m, QString &reply) {
+ Q_UNUSED(target)
+ if(ctcptype == CtcpQuery) {
+ QStringList supportedHandlers;
+ foreach(QString handler, providesHandlers()) {
+ supportedHandlers << handler.toUpper();
+ }
+ reply = supportedHandlers.join(" ");
+ emit displayMsg(Message::Server, BufferInfo::StatusBuffer, "", tr("Received CTCP CLIENTINFO request from %1").arg(prefix));
+ } else {
+ // display clientinfo answer
+ emit displayMsg(Message::Server, BufferInfo::StatusBuffer, "", tr("Received CTCP CLIENTINFO answer from %1: %2")
+ .arg(nickFromMask(prefix)).arg(param));
+ }
+}
+
+void CtcpHandler::handlePing(CtcpType ctcptype, const QString &prefix, const QString &target, const QString ¶m, QString &reply) {