summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mod_muc/mod_muc_room.erl11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/mod_muc/mod_muc_room.erl b/src/mod_muc/mod_muc_room.erl
index 30e8897b..894abd53 100644
--- a/src/mod_muc/mod_muc_room.erl
+++ b/src/mod_muc/mod_muc_room.erl
@@ -2667,14 +2667,21 @@ send_kickban_presence(JID, Reason, Code, NewAffiliation, StateData) ->
end, LJIDs).
send_kickban_presence1(UJID, Reason, Code, Affiliation, StateData) ->
- {ok, #user{jid = _RealJID,
+ {ok, #user{jid = RealJID,
nick = Nick}} =
?DICT:find(jlib:jid_tolower(UJID), StateData#state.users),
SAffiliation = affiliation_to_list(Affiliation),
+ BannedJIDString = jlib:jid_to_string(RealJID),
lists:foreach(
fun({_LJID, Info}) ->
+ JidAttrList = case (Info#user.role == moderator) orelse
+ ((StateData#state.config)#config.anonymous
+ == false) of
+ true -> [{"jid", BannedJIDString}];
+ false -> []
+ end,
ItemAttrs = [{"affiliation", SAffiliation},
- {"role", "none"}],
+ {"role", "none"}] ++ JidAttrList,
ItemEls = case Reason of
"" ->
[];