mirror of
https://github.com/znc/znc.git
synced 2026-07-02 16:02:02 +02:00
Handle more messages in partyline
partyline channels now also know about notices, /me and ctcp. git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@1758 726aef4b-f618-498e-8847-2d620e286838
This commit is contained in:
+23
-3
@@ -365,7 +365,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
virtual EModRet OnUserMsg(CString& sTarget, CString& sMessage) {
|
||||
virtual EModRet HandleMessage(const CString& sCmd, const CString& sTarget, const CString& sMessage) {
|
||||
if (sTarget.empty()) {
|
||||
return CONTINUE;
|
||||
}
|
||||
@@ -388,13 +388,13 @@ public:
|
||||
return HALT;
|
||||
}
|
||||
|
||||
PutChan(sTarget, ":?" + m_pUser->GetUserName() + "!" + m_pUser->GetIdent() + "@" + sHost + " PRIVMSG " + sTarget + " :" + sMessage, true, false);
|
||||
PutChan(sTarget, ":?" + m_pUser->GetUserName() + "!" + m_pUser->GetIdent() + "@" + sHost + " " + sCmd + " " + sTarget + " :" + sMessage, true, false);
|
||||
} else {
|
||||
CString sNick = sTarget.LeftChomp_n(1);
|
||||
CUser* pUser = CZNC::Get().FindUser(sNick);
|
||||
|
||||
if (pUser) {
|
||||
pUser->PutUser(":?" + m_pUser->GetUserName() + "!" + m_pUser->GetIdent() + "@" + sHost + " PRIVMSG " + pUser->GetIRCNick().GetNick() + " :" + sMessage);
|
||||
pUser->PutUser(":?" + m_pUser->GetUserName() + "!" + m_pUser->GetIdent() + "@" + sHost + " " + sCmd + " " + pUser->GetIRCNick().GetNick() + " :" + sMessage);
|
||||
} else {
|
||||
m_pClient->PutClient(":" + GetIRCServer(m_pUser) + " 403 " + m_pUser->GetIRCNick().GetNick() + " " + sTarget + " :No such znc user: " + sNick + "");
|
||||
}
|
||||
@@ -403,6 +403,26 @@ public:
|
||||
return HALT;
|
||||
}
|
||||
|
||||
virtual EModRet OnUserMsg(CString& sTarget, CString& sMessage) {
|
||||
return HandleMessage("PRIVMSG", sTarget, sMessage);
|
||||
}
|
||||
|
||||
virtual EModRet OnUserNotice(CString& sTarget, CString& sMessage) {
|
||||
return HandleMessage("NOTICE", sTarget, sMessage);
|
||||
}
|
||||
|
||||
virtual EModRet OnUserAction(CString& sTarget, CString& sMessage) {
|
||||
return HandleMessage("PRIVMSG", sTarget, "\001ACTION " + sMessage + "\001");
|
||||
}
|
||||
|
||||
virtual EModRet OnUserCTCP(CString& sTarget, CString& sMessage) {
|
||||
return HandleMessage("PRIVMSG", sTarget, "\001" + sMessage + "\001");
|
||||
}
|
||||
|
||||
virtual EModRet OnUserCTCPReply(CString& sTarget, CString& sMessage) {
|
||||
return HandleMessage("NOTICE", sTarget, "\001" + sMessage + "\001");
|
||||
}
|
||||
|
||||
virtual void OnModCommand(const CString& sLine) {
|
||||
CString sCommand = sLine.Token(0);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user