Software /
code /
prosody
File
plugins/mod_authz_internal.lua @ 11719:3986b5a0c3fc
util.pubsub: Handle absence of node data interface
This is in preparation for fixing the behavior of 'persist_items', which
was misunderstood at some point. In mod_pep it toggles between
persistent storage and in-memory storage, while the correct behavior
would be to toggle whether published items are stored at all or
forgotten after being broadcast.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 21 Jul 2021 21:22:17 +0200 |
parent | 11474:8fba807e5256 |
child | 11745:3a2d58a39872 |
line wrap: on
line source
local normalize = require "util.jid".prep; local admin_jids = module:get_option_inherited_set("admins", {}) / normalize; local host = module.host; local role_store = module:open_store("roles"); local admin_role = { ["prosody:admin"] = true }; function get_user_roles(user) if admin_jids:contains(user.."@"..host) then return admin_role; end return role_store:get(user); end function set_user_roles(user, roles) role_store:set(user, roles) return true; end function get_jid_roles(jid) if admin_jids:contains(jid) then return admin_role; end return nil; end function set_jid_roles(jid) -- luacheck: ignore 212 return false; end