]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_ircv3_chghost.cpp
Replace all references to IRCv3.2 with IRCv3.
[user/henk/code/inspircd.git] / src / modules / m_ircv3_chghost.cpp
index af3503108a556b58aed417e9981c68dcfe7e22fd..fd142803f2444db8ac1681e4b474a56f4c14d0bd 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")
        {
        }
 
        void OnChangeIdent(User* user, const std::string& newident) CXX11_OVERRIDE
        {
-               DoChgHost(user, newident, user->dhost);
+               DoChgHost(user, newident, user->GetDisplayedHost());
        }
 
        void OnChangeHost(User* user, const std::string& newhost) CXX11_OVERRIDE
@@ -50,7 +54,7 @@ class ModuleIRCv3ChgHost : public Module
 
        Version GetVersion() CXX11_OVERRIDE
        {
-               return Version("Provides the chghost IRCv3.2 extension", VF_VENDOR);
+               return Version("Provides the chghost IRCv3 extension", VF_VENDOR);
        }
 };