function service:may(node, actor, action)
if actor == true then return true; end
function service:may(node, actor, action)
if actor == true then return true; end
local node_obj = self.nodes[node];
local node_aff = node_obj and node_obj.affiliations[actor];
local service_aff = self.affiliations[actor]
or self.config.get_affiliation(actor, node, action)
or "none";
local node_obj = self.nodes[node];
local node_aff = node_obj and node_obj.affiliations[actor];
local service_aff = self.affiliations[actor]
or self.config.get_affiliation(actor, node, action)
or "none";
return false, "item-not-found";
end
node_obj.affiliations[jid] = affiliation;
return false, "item-not-found";
end
node_obj.affiliations[jid] = affiliation;
- local _, jid_sub = self:get_subscription(node, nil, jid);
+ local _, jid_sub = self:get_subscription(node, true, jid);
- local ok, err = self:add_subscription(node, nil, jid);
+ local ok, err = self:add_subscription(node, true, jid);
- local ok, err = self:add_subscription(node, nil, jid);
+ local ok, err = self:add_subscription(node, true, jid);
function service:add_subscription(node, actor, jid, options)
-- Access checking
local cap;
function service:add_subscription(node, actor, jid, options)
-- Access checking
local cap;