From 72e95e14e804b836228be9521017894892919bd3 Mon Sep 17 00:00:00 2001 From: Stefan Strigler Date: Wed, 8 Jul 2026 11:10:59 +0200 Subject: [PATCH] feat(mod_invites): update to latest xep-401 In short, a 'FORM_TYPE' field is added to form results. Refs #4583 --- src/mod_invites.erl | 10 ++++++++-- test/invites_tests.erl | 4 ++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/mod_invites.erl b/src/mod_invites.erl index a0495c36097..1e1c2ce172c 100644 --- a/src/mod_invites.erl +++ b/src/mod_invites.erl @@ -690,7 +690,10 @@ adhoc_commands(_Acc, maybe_add_landing_url(LServer, Invite, Lang, - [#xdata_field{var = <<"uri">>, + [#xdata_field{var = <<"FORM_TYPE">>, + type = 'hidden', + values = [?NS_INVITE_INVITE]}, + #xdata_field{var = <<"uri">>, label = trans(Lang, <<"Invite URI">>), type = 'text-single', values = [token_uri(Invite)]}, @@ -733,7 +736,10 @@ adhoc_commands(_Acc, maybe_add_landing_url(LServer, Invite, Lang, - [#xdata_field{var = <<"uri">>, + [#xdata_field{var = <<"FORM_TYPE">>, + type = 'hidden', + values = [?NS_INVITE_INVITE]}, + #xdata_field{var = <<"uri">>, label = trans(Lang, <<"Invite URI">>), type = 'text-single', values = [token_uri(Invite)]}, diff --git a/test/invites_tests.erl b/test/invites_tests.erl index 0925d072a53..2de1197bd6f 100644 --- a/test/invites_tests.erl +++ b/test/invites_tests.erl @@ -297,6 +297,8 @@ adhoc_command_invite(Config) -> #iq{type = set, to = ServerJID, sub_els = [Command]}), + ?match(?NS_INVITE_INVITE, + xdata_field(<<"FORM_TYPE">>, XdataFields)), Uri = xdata_field(<<"uri">>, XdataFields), ?match({match, [_, _]}, re:run(Uri, @@ -328,6 +330,8 @@ adhoc_command_create_account(Config) -> NewOpts = gen_mod:set_opt(access_create_account, account_invite, OldOpts), update_module_opts(Server, mod_invites, NewOpts), ResultXDataFields1 = test_create_account(Config, <<>>, <<"0">>), + ?match(?NS_INVITE_INVITE, + xdata_field(<<"FORM_TYPE">>, ResultXDataFields1)), ?match({match, [_, _]}, re:run(xdata_field(<<"uri">>, ResultXDataFields1), <<"xmpp:", Server/binary, "\\?register;preauth=(.+)">>)),