mirror of
https://github.com/znc/znc.git
synced 2026-08-06 08:52:57 +02:00
Added support for buffering of /me actions
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@602 726aef4b-f618-498e-8847-2d620e286838
This commit is contained in:
+12
-3
@@ -383,11 +383,20 @@ void CClient::ReadLine(const CString& sData) {
|
||||
return;
|
||||
}
|
||||
|
||||
CChan* pChan = m_pUser->FindChan(sTarget);
|
||||
|
||||
if (sCTCP.Token(0).CaseCmp("ACTION") == 0) {
|
||||
if (pChan && pChan->KeepBuffer()) {
|
||||
pChan->AddBuffer(":" + GetNickMask() + " PRIVMSG " + sTarget + " :\001" + sCTCP + "\001");
|
||||
}
|
||||
#ifdef _MODULES
|
||||
CZNC::Get().GetModules().SetClient(this);
|
||||
MODULECALLRET(OnUserCTCP(sTarget, sCTCP));
|
||||
CZNC::Get().GetModules().SetClient(NULL);
|
||||
} else {
|
||||
CZNC::Get().GetModules().SetClient(this);
|
||||
MODULECALLRET(OnUserCTCP(sTarget, sCTCP));
|
||||
CZNC::Get().GetModules().SetClient(NULL);
|
||||
#endif
|
||||
}
|
||||
|
||||
PutIRC("PRIVMSG " + sTarget + " :\001" + sCTCP + "\001");
|
||||
return;
|
||||
}
|
||||
|
||||
+6
-5
@@ -716,14 +716,15 @@ bool CIRCSock::OnPrivMsg(CNick& Nick, CString& sMessage) {
|
||||
bool CIRCSock::OnChanCTCP(CNick& Nick, const CString& sChan, CString& sMessage) {
|
||||
CChan* pChan = m_pUser->FindChan(sChan);
|
||||
if (pChan) {
|
||||
MODULECALL(OnChanCTCP(Nick, *pChan, sMessage));
|
||||
|
||||
if (pChan->IsDetached()) {
|
||||
return true;
|
||||
// Record a /me
|
||||
if (sMessage.Token(0).CaseCmp("ACTION") == 0 && (pChan->KeepBuffer() || !m_pUser->IsUserAttached())) {
|
||||
pChan->AddBuffer(":" + Nick.GetNickMask() + " PRIVMSG " + sChan + " :\001" + sMessage + "\001");
|
||||
} else {
|
||||
MODULECALL(OnChanCTCP(Nick, *pChan, sMessage));
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
return (pChan && pChan->IsDetached());
|
||||
}
|
||||
|
||||
bool CIRCSock::OnChanNotice(CNick& Nick, const CString& sChan, CString& sMessage) {
|
||||
|
||||
Reference in New Issue
Block a user