--- a/core/moduleapi.lua Wed Jun 15 23:03:15 2022 +0200
+++ b/core/moduleapi.lua Wed Jun 15 23:04:17 2022 +0200
@@ -615,6 +615,9 @@
end
function api:may(action, context)
+ if action:byte(1) == 58 then -- action begins with ':'
+ action = self.name..action; -- prepend module name
+ end
if type(context) == "string" then -- check JID permissions
local role;
local node, host = jid_split(context);
@@ -638,9 +641,6 @@
if not session then
error("Unable to identify actor session from context");
end
- if action:byte(1) == 58 then -- action begins with ':'
- action = self.name..action; -- prepend module name
- end
if session.type == "s2sin" or (session.type == "c2s" and session.host ~= self.host) then
local actor_jid = context.stanza.attr.from;
local role = hosts[self.host].authz.get_jid_role(actor_jid);