aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEvgeniy Khramtsov <ekhramtsov@process-one.net>2018-06-19 14:02:45 +0300
committerEvgeniy Khramtsov <ekhramtsov@process-one.net>2018-06-19 14:02:45 +0300
commit6acac7c93fd494f4a76a3f0b2f12f3d97cb75371 (patch)
tree4eb6e9ccbfaf8b3a31257c9f56c2bab5387b9f79 /src
parentmod_push_mnesia: Simplify record matching (diff)
Render roomname, allowinvites and allowpm in room disco#info
Diffstat (limited to 'src')
-rw-r--r--src/mod_muc_room.erl20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/mod_muc_room.erl b/src/mod_muc_room.erl
index edddd13cf..0778cc157 100644
--- a/src/mod_muc_room.erl
+++ b/src/mod_muc_room.erl
@@ -3845,11 +3845,23 @@ process_iq_disco_info(From, #iq{type = get, lang = Lang,
-spec iq_disco_info_extras(binary(), state(), boolean()) -> xdata().
iq_disco_info_extras(Lang, StateData, Static) ->
- Fs1 = [{description, (StateData#state.config)#config.description},
+ Config = StateData#state.config,
+ AllowPM = case Config#config.allow_private_messages of
+ false -> none;
+ true ->
+ case Config#config.allow_private_messages_from_visitors of
+ nobody -> participants;
+ _ -> anyone
+ end
+ end,
+ Fs1 = [{roomname, Config#config.title},
+ {description, Config#config.description},
{contactjid, get_owners(StateData)},
- {changesubject, (StateData#state.config)#config.allow_change_subj},
- {lang, (StateData#state.config)#config.lang}],
- Fs2 = case (StateData#state.config)#config.pubsub of
+ {changesubject, Config#config.allow_change_subj},
+ {allowinvites, Config#config.allow_user_invites},
+ {allowpm, AllowPM},
+ {lang, Config#config.lang}],
+ Fs2 = case Config#config.pubsub of
Node when is_binary(Node), Node /= <<"">> ->
[{pubsub, Node}|Fs1];
_ ->