864 :text(_reason or "") |
864 :text(_reason or "") |
865 :up() |
865 :up() |
866 :tag('body') -- Add a plain message for clients which don't support invites |
866 :tag('body') -- Add a plain message for clients which don't support invites |
867 :text(_from..' invited you to the room '.._to..(_reason and (' ('.._reason..')') or "")) |
867 :text(_from..' invited you to the room '.._to..(_reason and (' ('.._reason..')') or "")) |
868 :up(); |
868 :up(); |
|
869 if self:is_members_only() and not self:get_affiliation(_invitee) then |
|
870 log("debug", "%s invited %s into members only room %s, granting membership", _from, _invitee, _to); |
|
871 self:set_affiliation(_from, _invitee, "member", nil, "Invited by " .. self._jid_nick[_from]) |
|
872 end |
869 self:_route_stanza(invite); |
873 self:_route_stanza(invite); |
870 else |
874 else |
871 origin.send(st.error_reply(stanza, "cancel", "jid-malformed")); |
875 origin.send(st.error_reply(stanza, "cancel", "jid-malformed")); |
872 end |
876 end |
873 else |
877 else |