aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/muc/muc.lib.lua
diff options
context:
space:
mode:
authorWaqas Hussain <waqas20@gmail.com>2010-02-18 14:28:52 +0500
committerWaqas Hussain <waqas20@gmail.com>2010-02-18 14:28:52 +0500
commita1067595c6f33be3ff91907a18daa66c5ee3967f (patch)
tree47f739a8b33386ae441199e109dac7ad395f62d9 /plugins/muc/muc.lib.lua
parent36d1513d7fc6321c9ecd0abceac8dd0cdcbfedcc (diff)
downloadprosody-a1067595c6f33be3ff91907a18daa66c5ee3967f.tar.gz
prosody-a1067595c6f33be3ff91907a18daa66c5ee3967f.zip
MUC: Allow role changes based on JIDs.
(transplanted from a4879b1e6cde5aedb6bd5827d710b6dba5e8a736)
Diffstat (limited to 'plugins/muc/muc.lib.lua')
-rw-r--r--plugins/muc/muc.lib.lua3
1 files changed, 3 insertions, 0 deletions
diff --git a/plugins/muc/muc.lib.lua b/plugins/muc/muc.lib.lua
index ad45bbfd..e6f459ae 100644
--- a/plugins/muc/muc.lib.lua
+++ b/plugins/muc/muc.lib.lua
@@ -514,6 +514,9 @@ function room_mt:handle_to_room(origin, stanza) -- presence changes and groupcha
if not item.attr.jid and item.attr.nick then -- COMPAT Workaround for Miranda sending 'nick' instead of 'jid' when changing affiliation
local occupant = self._occupants[self.jid.."/"..item.attr.nick];
if occupant then item.attr.jid = occupant.jid; end
+ elseif not item.attr.nick and item.attr.jid then
+ local nick = self._jid_nick[item.attr.jid];
+ if nick then item.attr.nick = select(3, jid_split(nick)); end
end
local reason = item.tags[1] and item.tags[1].name == "reason" and #item.tags[1] == 1 and item.tags[1][1];
if item.attr.affiliation and item.attr.jid and not item.attr.role then