23 #include "ircdelayedoperationban.h"
25 #include "irc/entities/ircuserprefix.h"
26 #include "irc/ircnetworkadapter.h"
27 #include "irc/ircresponseparser.h"
29 DClass<IRCDelayedOperationBan>
37 QString cleanNickname()
const
46 const QString &channel, const QString &nickname, QObject *parent)
50 d->nickname = nickname;
52 this->connect(d->network->responseParser(),
53 SIGNAL(whoIsUser(QString,QString,QString,QString)),
54 SLOT(onWhoIsUser(QString,QString,QString)));
57 IRCDelayedOperationBan::~IRCDelayedOperationBan()
61 void IRCDelayedOperationBan::start()
63 d->network->sendMessage(QString(
"/whois %1").arg(d->cleanNickname()));
66 void IRCDelayedOperationBan::onWhoIsUser(
const QString &nickname,
const QString &user,
67 const QString &hostName)
71 QString banString =
"*!*@" + hostName;
72 d->network->sendMessage(QString(
"/mode %1 +b %2").arg(d->channel, banString));
73 d->network->sendMessage(QString(
"/kick %1 %2 %3").arg(d->channel, d->nickname, d->reason));
77 void IRCDelayedOperationBan::setReason(
const QString &reason)