From 6ad7cdb4a2d740804916a41d82d0c6c4c0c1660f Mon Sep 17 00:00:00 2001 From: J-P Nurmi Date: Sun, 20 Sep 2015 11:38:59 +0200 Subject: [PATCH] Resolve #818: "Got ZNC?" is a little weird real name --- include/znc/IRCNetwork.h | 2 +- include/znc/User.h | 2 +- src/IRCNetwork.cpp | 2 +- src/User.cpp | 9 ++++++--- src/znc.cpp | 6 ++++-- 5 files changed, 13 insertions(+), 8 deletions(-) diff --git a/include/znc/IRCNetwork.h b/include/znc/IRCNetwork.h index 229748f3..0d0e18c8 100644 --- a/include/znc/IRCNetwork.h +++ b/include/znc/IRCNetwork.h @@ -175,7 +175,7 @@ public: const CString& GetNick(const bool bAllowDefault = true) const; const CString& GetAltNick(const bool bAllowDefault = true) const; const CString& GetIdent(const bool bAllowDefault = true) const; - const CString& GetRealName() const; + CString GetRealName() const; const CString& GetBindHost() const; const CString& GetEncoding() const; CString GetQuitMsg() const; diff --git a/include/znc/User.h b/include/znc/User.h index dc7c29e0..d32a3a01 100644 --- a/include/znc/User.h +++ b/include/znc/User.h @@ -156,7 +156,7 @@ public: const CString& GetNick(bool bAllowDefault = true) const; const CString& GetAltNick(bool bAllowDefault = true) const; const CString& GetIdent(bool bAllowDefault = true) const; - const CString& GetRealName() const; + CString GetRealName() const; const CString& GetBindHost() const; const CString& GetDCCBindHost() const; const CString& GetPass() const; diff --git a/src/IRCNetwork.cpp b/src/IRCNetwork.cpp index facc8669..96d0815f 100644 --- a/src/IRCNetwork.cpp +++ b/src/IRCNetwork.cpp @@ -1347,7 +1347,7 @@ const CString& CIRCNetwork::GetIdent(const bool bAllowDefault) const { return m_sIdent; } -const CString& CIRCNetwork::GetRealName() const { +CString CIRCNetwork::GetRealName() const { if (m_sRealName.empty()) { return m_pUser->GetRealName(); } diff --git a/src/User.cpp b/src/User.cpp index 8b8bedce..cc8ab9d0 100644 --- a/src/User.cpp +++ b/src/User.cpp @@ -60,7 +60,7 @@ CUser::CUser(const CString& sUserName) m_sNick(m_sCleanUserName), m_sAltNick(""), m_sIdent(m_sCleanUserName), - m_sRealName(sUserName), + m_sRealName(""), m_sBindHost(""), m_sDCCBindHost(""), m_sPass(""), @@ -884,7 +884,9 @@ CConfig CUser::ToConfig() const { config.AddKeyValuePair("Nick", GetNick()); config.AddKeyValuePair("AltNick", GetAltNick()); config.AddKeyValuePair("Ident", GetIdent()); - config.AddKeyValuePair("RealName", GetRealName()); + if (!m_sRealName.empty()) { + config.AddKeyValuePair("RealName", GetRealName()); + } config.AddKeyValuePair("BindHost", GetBindHost()); config.AddKeyValuePair("DCCBindHost", GetDCCBindHost()); config.AddKeyValuePair("QuitMsg", GetQuitMsg()); @@ -1247,12 +1249,13 @@ vector CUser::GetAllClients() const { return vClients; } + const CString& CUser::GetUserName() const { return m_sUserName; } const CString& CUser::GetCleanUserName() const { return m_sCleanUserName; } const CString& CUser::GetNick(bool bAllowDefault) const { return (bAllowDefault && m_sNick.empty()) ? GetCleanUserName() : m_sNick; } const CString& CUser::GetAltNick(bool bAllowDefault) const { return (bAllowDefault && m_sAltNick.empty()) ? GetCleanUserName() : m_sAltNick; } const CString& CUser::GetIdent(bool bAllowDefault) const { return (bAllowDefault && m_sIdent.empty()) ? GetCleanUserName() : m_sIdent; } -const CString& CUser::GetRealName() const { return m_sRealName.empty() ? m_sUserName : m_sRealName; } +CString CUser::GetRealName() const { return (!m_sRealName.Trim_n().empty()) ? m_sRealName : CZNC::GetTag(false); } const CString& CUser::GetBindHost() const { return m_sBindHost; } const CString& CUser::GetDCCBindHost() const { return m_sDCCBindHost; } const CString& CUser::GetPass() const { return m_sPass; } diff --git a/src/znc.cpp b/src/znc.cpp index 252a758f..a67f7e07 100644 --- a/src/znc.cpp +++ b/src/znc.cpp @@ -702,8 +702,10 @@ bool CZNC::WriteNewConfig(const CString& sConfigFile) { } CUtils::GetInput("Ident", sAnswer, sUser); vsLines.push_back("\tIdent = " + sAnswer); - CUtils::GetInput("Real name", sAnswer, "Got ZNC?"); - vsLines.push_back("\tRealName = " + sAnswer); + CUtils::GetInput("Real name", sAnswer, "", "optional"); + if (!sAnswer.empty()) { + vsLines.push_back("\tRealName = " + sAnswer); + } CUtils::GetInput("Bind host", sAnswer, "", "optional"); if (!sAnswer.empty()) { vsLines.push_back("\tBindHost = " + sAnswer);