# HG changeset patch # User Matthew Wild # Date 1610905433 0 # Node ID 0ec482e617bbc2a5501b4bda542bb21540b622a8 # Parent 671bc55f0fc9d38b4274b6d8b08d6cc758f40174 mod_invites: Add public API method for creating group invites diff -r 671bc55f0fc9 -r 0ec482e617bb mod_invites/mod_invites.lua --- a/mod_invites/mod_invites.lua Sun Jan 17 17:42:49 2021 +0000 +++ b/mod_invites/mod_invites.lua Sun Jan 17 17:43:53 2021 +0000 @@ -81,6 +81,21 @@ return create_invite("roster", username.."@"..module.host, allow_registration, additional_data); end +-- Create invitation to register an account and join a user group +-- If explicit ttl is passed, invite is valid for multiple signups +-- during that time period +function create_group(group_id, ttl, additional_data) --luacheck: ignore 131/create_group + local merged_additional_data = { + groups = { group_id }; + }; + if merged_additional_data then + for k, v in pairs(additional_data) do + merged_additional_data[k] = v; + end + end + return create_invite("register", module.host, true, merged_additional_data, ttl, not not ttl); +end + -- Iterates pending (non-expired, unused) invites that allow registration function pending_account_invites() --luacheck: ignore 131/pending_account_invites local store = module:open_store("invite_token");