diff --git a/src/buddy.cpp b/src/buddy.cpp index b0b69caea32a7fa096a85f4479f7f90e6400bee0..98e43e22688a3bb9c216253b7f62e8d1895ca5cd 100644 --- a/src/buddy.cpp +++ b/src/buddy.cpp @@ -153,4 +153,18 @@ void Buddy::buddyChanged() { } } +std::string Buddy::JIDToLegacyName(const Swift::JID &jid) { + std::string name; + if (jid.getUnescapedNode() == jid.getNode()) { + name = jid.getNode(); + if (name.find_last_of("%") != std::string::npos) { + name.replace(name.find_last_of("%"), 1, "@"); + } + } + else { + name = jid.getUnescapedNode(); + } + return name; +} + }