Mercurial > prosody-modules
view mod_invites_groups/mod_invites_groups.lua @ 4983:7c77058a1ac5
mod_compat_roles: New module providing compat shim for trunk's new role API
The new role API is translated to is_admin() calls on older versions. On newer
versions (which have the role API) this module does nothing.
It allows modules to drop their use of is_admin() (which is not available in
trunk) and switch to the new role API, while remaining compatible with
previous Prosody versions.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 11 Aug 2022 17:49:33 +0100 |
parents | 869df5a6b0c5 |
children |
line wrap: on
line source
local mod_groups = module:depends("groups_internal"); module:hook("user-registered", function(event) local validated_invite = event.validated_invite or (event.session and event.session.validated_invite); if not validated_invite then -- not registered via invite, nothing to do return end local groups = validated_invite and validated_invite.additional_data and validated_invite.additional_data.groups; if not groups then -- invite has no groups, nothing to do return end local new_username = event.username; module:log("debug", "adding %s to groups from invite", new_username); for _, group in ipairs(groups) do mod_groups.add_member(group, new_username); end end);