72 lines
2.3 KiB
C++
72 lines
2.3 KiB
C++
#include "sparrowmodule.h"
|
|
#include "message.h"
|
|
#include "basemodule.h"
|
|
#include <QStringList>
|
|
|
|
SparrowModule::SparrowModule()
|
|
{
|
|
|
|
}
|
|
|
|
bool SparrowModule::messageHandler(Message msg)
|
|
{
|
|
if(msg.command.compare("JOIN") == 0
|
|
&& msg.target.compare("#"+getChan()) == 0
|
|
&& msg.nick.compare(getNick()) != 0)
|
|
{
|
|
answer = say("Bienvenue sur #epicsparrow "+msg.nick+"!");
|
|
return true;
|
|
}
|
|
else if(msg.command.compare(QString("PRIVMSG"), Qt::CaseInsensitive) == 0)
|
|
{
|
|
User* user = getUsers()->getFromNick(msg.nick);
|
|
if(msg.args.startsWith("!control ") && user->isOp())
|
|
{
|
|
QString command = msg.args.remove(0, 9);
|
|
answer = command + "\r\n";
|
|
return true;
|
|
}
|
|
else if(msg.args.compare("!version") == 0)
|
|
{
|
|
answer = say("sparrowModule v1.1");
|
|
return true;
|
|
}
|
|
else if(msg.args.compare("re", Qt::CaseInsensitive) == 0)
|
|
{
|
|
answer = say("Re");
|
|
return true;
|
|
}
|
|
else if(msg.args.startsWith("!devzone"))
|
|
{
|
|
QStringList paramList = msg.args.split(' ');
|
|
if(paramList.size() == 1)
|
|
answer = say("devzone : http://epicsparrow.com/en/devzone");
|
|
else if(paramList.size() > 2)
|
|
answer = say("available links : lino, whiteboard, gitlab");
|
|
else
|
|
{
|
|
QString param = paramList[1];
|
|
if(param.compare("whiteboard") == 0)
|
|
answer = say("whiteboard : http://webwhiteboard.com/#7w9fcmeg");
|
|
else if(param.compare("gitlab") == 0)
|
|
answer = say("gitlab : https://git.epicsparrow.com");
|
|
else if(param.compare("lino") == 0)
|
|
answer = say("lino : http://linoit.com/groups/EpicSparrow/canvases/EpicSparrow");
|
|
else if(param.compare("plop") == 0)
|
|
answer = say("plop : http://www.plop.org");
|
|
else if(param.compare("pastebin") == 0)
|
|
answer = say("plop : http://www.pastebin.com");
|
|
else
|
|
answer = say("%1 : https://www.google.fr/#q=%2").arg(param).arg(param);
|
|
}
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
QString SparrowModule::getName()
|
|
{
|
|
return "sparrow";
|
|
}
|