mirror of
https://github.com/processone/ejabberd.git
synced 2024-11-24 16:23:40 +01:00
Affiliations other than admin and owner cannot invite to members_only rooms
This is explained in the paragraph: If the room is members-only, the service MAY also add the invitee to the member list. (Note: Invitation privileges in members-only rooms SHOULD be restricted to room admins; if a member without privileges to edit the member list attempts to invite another user, the service SHOULD return a <forbidden/> error to the occupant; for details, see the Modifying the Member List section of this document.) https://xmpp.org/extensions/xep-0045.html#invite-mediated
This commit is contained in:
parent
9a99284dfd
commit
b010a1a0a0
@ -4217,7 +4217,8 @@ send_voice_request(From, Lang, StateData) ->
|
|||||||
ok | {error, stanza_error()}.
|
ok | {error, stanza_error()}.
|
||||||
check_invitation(From, Invitations, Lang, StateData) ->
|
check_invitation(From, Invitations, Lang, StateData) ->
|
||||||
FAffiliation = get_affiliation(From, StateData),
|
FAffiliation = get_affiliation(From, StateData),
|
||||||
CanInvite = (StateData#state.config)#config.allow_user_invites orelse
|
CanInvite = ((StateData#state.config)#config.allow_user_invites
|
||||||
|
and not (StateData#state.config)#config.members_only) orelse
|
||||||
FAffiliation == admin orelse FAffiliation == owner,
|
FAffiliation == admin orelse FAffiliation == owner,
|
||||||
case CanInvite of
|
case CanInvite of
|
||||||
true ->
|
true ->
|
||||||
|
Loading…
Reference in New Issue
Block a user