From: Marcus Eggenberger Date: Fri, 31 Oct 2008 13:11:37 +0000 (+0100) Subject: fixing BR #303 partially - introducing unban X-Git-Tag: 0.3.1~101 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=56a94f68d52fc3942b296a7dfb304775a3af77f6 fixing BR #303 partially - introducing unban --- diff --git a/src/core/userinputhandler.cpp b/src/core/userinputhandler.cpp index 3219d4d0..da3cc24a 100644 --- a/src/core/userinputhandler.cpp +++ b/src/core/userinputhandler.cpp @@ -77,6 +77,14 @@ void UserInputHandler::handleAway(const BufferInfo &bufferInfo, const QString &m } void UserInputHandler::handleBan(const BufferInfo &bufferInfo, const QString &msg) { + banOrUnban(bufferInfo, msg, true); +} + +void UserInputHandler::handleUnban(const BufferInfo &bufferInfo, const QString &msg) { + banOrUnban(bufferInfo, msg, false); +} + +void UserInputHandler::banOrUnban(const BufferInfo &bufferInfo, const QString &msg, bool ban) { QString banChannel; QString banUser; @@ -109,7 +117,8 @@ void UserInputHandler::handleBan(const BufferInfo &bufferInfo, const QString &ms banUser = params.join(" "); } - QString banMsg = QString("MODE %1 +b %2").arg(banChannel, banUser); + QString banMode = ban ? "+b" : "-b"; + QString banMsg = QString("MODE %1 %2 %3").arg(banChannel, banMode, banUser); emit putRawLine(serverEncode(banMsg)); } diff --git a/src/core/userinputhandler.h b/src/core/userinputhandler.h index 436b2546..ea248f3f 100644 --- a/src/core/userinputhandler.h +++ b/src/core/userinputhandler.h @@ -18,8 +18,8 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ -#ifndef _USERINPUTHANDLER_H_ -#define _USERINPUTHANDLER_H_ +#ifndef USERINPUTHANDLER_H +#define USERINPUTHANDLER_H #include "basichandler.h" @@ -36,6 +36,7 @@ public: public slots: void handleAway(const BufferInfo &bufferInfo, const QString &text); void handleBan(const BufferInfo &bufferInfo, const QString &text); + void handleUnban(const BufferInfo &bufferInfo, const QString &text); void handleCtcp(const BufferInfo &bufferInfo, const QString &text); void handleDeop(const BufferInfo &bufferInfo, const QString &text); void handleDevoice(const BufferInfo &bufferInfo, const QString &text); @@ -66,6 +67,7 @@ public slots: private: void expand(const QString &alias, const BufferInfo &bufferInfo, const QString &msg); + void banOrUnban(const BufferInfo &bufferInfo, const QString &text, bool ban); };