diff --git a/Modules.cpp b/Modules.cpp index 173ea357..773d4830 100644 --- a/Modules.cpp +++ b/Modules.cpp @@ -503,6 +503,16 @@ bool CModule::PutUser(const CString& sLine) { bool CModule::PutStatus(const CString& sLine) { return (m_pUser) ? m_pUser->PutStatus(sLine, m_pClient) : false; } +unsigned int CModule::PutModule(const CTable& table, const CString& sIdent, const CString& sHost) { + if (!m_pUser) + return 0; + + unsigned int idx = 0; + CString sLine; + while (table.GetLine(idx++, sLine)) + PutModule(sLine, sIdent, sHost); + return idx - 1; +} bool CModule::PutModule(const CString& sLine, const CString& sIdent, const CString& sHost) { if (!m_pUser) return false; diff --git a/Modules.h b/Modules.h index 03212399..6e5d94f5 100644 --- a/Modules.h +++ b/Modules.h @@ -283,6 +283,7 @@ public: virtual bool PutUser(const CString& sLine); virtual bool PutStatus(const CString& sLine); virtual bool PutModule(const CString& sLine, const CString& sIdent = "", const CString& sHost = "znc.com"); + virtual unsigned int PutModule(const CTable& table, const CString& sIdent = "", const CString& sHost = "znc.com"); virtual bool PutModNotice(const CString& sLine, const CString& sIdent = "", const CString& sHost = "znc.com"); const CString& GetModName() const { return m_sModName; }