mod_invites_groups/mod_invites_groups.lua
author Stephen Paul Weber <singpolyma@singpolyma.net>
Mon, 11 Mar 2024 19:28:19 -0500
changeset 5864 fdff8cb54302
parent 4404 869df5a6b0c5
permissions -rw-r--r--
mod_report_forward: fix address detection when there are multiple field values

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);