]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_ircv3_chghost.cpp
Implement IRCv3 message tag support.
[user/henk/code/inspircd.git] / src / modules / m_ircv3_chghost.cpp
index 0a9e055b4d32a089de0c52f773331cc2fa251f42..aa53612cb60533113d3ed83e967a3bec95baedf3 100644 (file)
 class ModuleIRCv3ChgHost : public Module
 {
        Cap::Capability cap;
+       ClientProtocol::EventProvider protoevprov;
 
        void DoChgHost(User* user, const std::string& ident, const std::string& host)
        {
-               std::string line(1, ':');
-               line.append(user->GetFullHost()).append(" CHGHOST ").append(ident).append(1, ' ').append(host);
-               IRCv3::WriteNeighborsWithCap(user, line, cap);
+               ClientProtocol::Message msg("CHGHOST", user);
+               msg.PushParamRef(ident);
+               msg.PushParamRef(host);
+               ClientProtocol::Event protoev(protoevprov, msg);
+               IRCv3::WriteNeighborsWithCap(user, protoev, cap);
        }
 
  public:
        ModuleIRCv3ChgHost()
                : cap(this, "chghost")
+               , protoevprov(this, "CHGHOST")
        {
        }