# HG changeset patch # User Waqas Hussain # Date 1271249673 -18000 # Node ID b1726c2a2afcb839e600150fe84d98129fb51b99 # Parent c39ad633b26d76b991627971a92e054f0e35590f MUC: Allow moderators which are not owners to change roles. diff -r c39ad633b26d -r b1726c2a2afc plugins/muc/muc.lib.lua --- a/plugins/muc/muc.lib.lua Fri Apr 09 12:25:54 2010 +0100 +++ b/plugins/muc/muc.lib.lua Wed Apr 14 17:54:33 2010 +0500 @@ -673,7 +673,7 @@ function room_mt:set_role(actor, occupant_jid, role, callback, reason) if role == "none" then role = nil; end if role and role ~= "moderator" and role ~= "participant" and role ~= "visitor" then return nil, "modify", "not-acceptable"; end - if self:get_affiliation(actor) ~= "owner" then return nil, "cancel", "not-allowed"; end + if self:get_role(self._jid_nick[actor]) ~= "moderator" then return nil, "cancel", "not-allowed"; end local occupant = self._occupants[occupant_jid]; if not occupant then return nil, "modify", "not-acceptable"; end if occupant.affiliation == "owner" or occupant.affiliation == "admin" then return nil, "cancel", "not-allowed"; end