Software /
code /
prosody
Comparison
plugins/muc/muc.lib.lua @ 6127:a66ebc5d0ab5
plugins/muc/muc.lib: Allow users with affiliations to invite while not in room themselves
author | daurnimator <quae@daurnimator.com> |
---|---|
date | Wed, 19 Mar 2014 17:50:00 -0400 |
parent | 6126:122e0f26e8f6 |
child | 6128:8a71a1c34202 |
comparison
equal
deleted
inserted
replaced
6126:122e0f26e8f6 | 6127:a66ebc5d0ab5 |
---|---|
984 function room_mt:handle_mediated_invite(origin, stanza) | 984 function room_mt:handle_mediated_invite(origin, stanza) |
985 local payload = stanza:get_child("x", "http://jabber.org/protocol/muc#user"):get_child("invite") | 985 local payload = stanza:get_child("x", "http://jabber.org/protocol/muc#user"):get_child("invite") |
986 local _from, _to = stanza.attr.from, stanza.attr.to; | 986 local _from, _to = stanza.attr.from, stanza.attr.to; |
987 local current_nick = self:get_occupant_jid(_from) | 987 local current_nick = self:get_occupant_jid(_from) |
988 -- Need visitor role or higher to invite | 988 -- Need visitor role or higher to invite |
989 if not self._occupants[current_nick].role then | 989 if not self:get_role(current_nick) or not self:get_default_role(self:get_affiliation(_from)) then |
990 origin.send(st.error_reply(stanza, "auth", "forbidden")); | 990 origin.send(st.error_reply(stanza, "auth", "forbidden")); |
991 return true; | 991 return true; |
992 end | 992 end |
993 local _invitee = jid_prep(payload.attr.to); | 993 local _invitee = jid_prep(payload.attr.to); |
994 if _invitee then | 994 if _invitee then |