mod_invites_adhoc/mod_invites_adhoc.lua
author Martin Dosch <martin@mdosch.de>
Thu, 01 Jul 2021 21:07:38 +0200
changeset 4616 fe24bda72838
parent 4414 d1230d32d709
child 4770 abac64f71698
permissions -rw-r--r--
mod_spam_reporting: Add support for XEP-0377 0.3 Support 'urn:xmpp:reporting:1', see https://xmpp.org/extensions/xep-0377.html#revision-history-v0.3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4096
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     1
-- XEP-0401: Easy User Onboarding
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     2
local dataforms = require "util.dataforms";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     3
local datetime = require "util.datetime";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     4
local split_jid = require "util.jid".split;
4414
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
     5
local usermanager = require "core.usermanager";
4096
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     6
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     7
local new_adhoc = module:require("adhoc").new;
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     8
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     9
-- Whether local users can invite other users to create an account on this server
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    10
local allow_user_invites = module:get_option_boolean("allow_user_invites", false);
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    11
-- Who can see and use the contact invite command. It is strongly recommended to
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    12
-- keep this available to all local users. To allow/disallow invite-registration
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    13
-- on the server, use the option above instead.
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    14
local allow_contact_invites = module:get_option_boolean("allow_contact_invites", true);
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    15
4414
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    16
local allow_user_invite_roles = module:get_option_set("allow_user_invites_by_roles");
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    17
4096
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    18
local invites;
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    19
if prosody.shutdown then -- COMPAT hack to detect prosodyctl
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    20
	invites = module:depends("invites");
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    21
end
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    22
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    23
local invite_result_form = dataforms.new({
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    24
		title = "Your invite has been created",
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    25
		{
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    26
			name = "url" ;
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    27
			var = "landing-url";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    28
			label = "Invite web page";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    29
			desc = "Share this link";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    30
		},
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    31
		{
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    32
			name = "uri";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    33
			label = "Invite URI";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    34
			desc = "This alternative link can be opened with some XMPP clients";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    35
		},
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    36
		{
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    37
			name = "expire";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    38
			label = "Invite valid until";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    39
		},
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    40
	});
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    41
4414
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    42
-- This is for checking if username (on the current host)
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    43
-- may create invites that allow people to register accounts
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    44
-- on this host.
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    45
local function may_invite_new_users(jid)
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    46
	if allow_user_invites then
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    47
		return true;
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    48
	end
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    49
	if usermanager.get_roles then
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    50
		local user_roles = usermanager.get_roles(jid, module.host);
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    51
		if not user_roles then return; end
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    52
		if user_roles["prosody:admin"] then
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    53
			return true;
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    54
		elseif allow_user_invite_roles then
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    55
			for allowed_role in allow_user_invite_roles do
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    56
				if user_roles[allowed_role] then
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    57
					return true;
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    58
				end
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    59
			end
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    60
		end
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    61
	elseif usermanager.is_admin(jid, module.host) then
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    62
		return true;
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    63
	end
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    64
	return false;
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    65
end
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    66
4096
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    67
module:depends("adhoc");
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    68
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    69
-- This command is available to all local users, even if allow_user_invites = false
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    70
-- If allow_user_invites is false, creating an invite still works, but the invite will
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    71
-- not be valid for registration on the current server, only for establishing a roster
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    72
-- subscription.
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    73
module:provides("adhoc", new_adhoc("Create new contact invite", "urn:xmpp:invite#invite",
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    74
		function (_, data)
4413
44f6537f6427 mod_invites_adhoc: Fail contact invite if user is not on current host
Matthew Wild <mwild1@gmail.com>
parents: 4401
diff changeset
    75
			local username, host = split_jid(data.from);
44f6537f6427 mod_invites_adhoc: Fail contact invite if user is not on current host
Matthew Wild <mwild1@gmail.com>
parents: 4401
diff changeset
    76
			if host ~= module.host then
44f6537f6427 mod_invites_adhoc: Fail contact invite if user is not on current host
Matthew Wild <mwild1@gmail.com>
parents: 4401
diff changeset
    77
				return {
44f6537f6427 mod_invites_adhoc: Fail contact invite if user is not on current host
Matthew Wild <mwild1@gmail.com>
parents: 4401
diff changeset
    78
					status = "completed";
44f6537f6427 mod_invites_adhoc: Fail contact invite if user is not on current host
Matthew Wild <mwild1@gmail.com>
parents: 4401
diff changeset
    79
					error = {
44f6537f6427 mod_invites_adhoc: Fail contact invite if user is not on current host
Matthew Wild <mwild1@gmail.com>
parents: 4401
diff changeset
    80
						message = "This command is only available to users of "..module.host;
44f6537f6427 mod_invites_adhoc: Fail contact invite if user is not on current host
Matthew Wild <mwild1@gmail.com>
parents: 4401
diff changeset
    81
					};
44f6537f6427 mod_invites_adhoc: Fail contact invite if user is not on current host
Matthew Wild <mwild1@gmail.com>
parents: 4401
diff changeset
    82
				};
44f6537f6427 mod_invites_adhoc: Fail contact invite if user is not on current host
Matthew Wild <mwild1@gmail.com>
parents: 4401
diff changeset
    83
			end
4414
d1230d32d709 mod_invites_adhoc: Add support for specifying roles that may invite users, admins may always invite
Matthew Wild <mwild1@gmail.com>
parents: 4413
diff changeset
    84
			local invite = invites.create_contact(username, may_invite_new_users(data.from), {
4401
6e0aa163298f mod_invites_adhoc: also add tracking information to contact invites
Jonas Schäfer <jonas@wielicki.name>
parents: 4399
diff changeset
    85
				source = data.from
6e0aa163298f mod_invites_adhoc: also add tracking information to contact invites
Jonas Schäfer <jonas@wielicki.name>
parents: 4399
diff changeset
    86
			});
4096
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    87
			--TODO: check errors
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    88
			return {
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    89
				status = "completed";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    90
				form = {
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    91
					layout = invite_result_form;
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    92
					values = {
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    93
						uri = invite.uri;
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    94
						url = invite.landing_page;
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    95
						expire = datetime.datetime(invite.expires);
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    96
					};
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    97
				};
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    98
			};
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    99
		end, allow_contact_invites and "local_user" or "admin"));
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   100
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   101
-- This is an admin-only command that creates a new invitation suitable for registering
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   102
-- a new account. It does not add the new user to the admin's roster.
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   103
module:provides("adhoc", new_adhoc("Create new account invite", "urn:xmpp:invite#create-account",
4399
df9bb3d861f9 mod_invites_adhoc: add information about who created an invitation
Jonas Schäfer <jonas@wielicki.name>
parents: 4096
diff changeset
   104
		function (_, data)
df9bb3d861f9 mod_invites_adhoc: add information about who created an invitation
Jonas Schäfer <jonas@wielicki.name>
parents: 4096
diff changeset
   105
			local invite = invites.create_account(nil, {
df9bb3d861f9 mod_invites_adhoc: add information about who created an invitation
Jonas Schäfer <jonas@wielicki.name>
parents: 4096
diff changeset
   106
				source = data.from
df9bb3d861f9 mod_invites_adhoc: add information about who created an invitation
Jonas Schäfer <jonas@wielicki.name>
parents: 4096
diff changeset
   107
			});
4096
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   108
			--TODO: check errors
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   109
			return {
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   110
				status = "completed";
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   111
				form = {
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   112
					layout = invite_result_form;
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   113
					values = {
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   114
						uri = invite.uri;
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   115
						url = invite.landing_page;
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   116
						expire = datetime.datetime(invite.expires);
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   117
					};
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   118
				};
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   119
			};
2b6918714792 mod_invites_adhoc: New module to allow invite creation via ad-hoc commands (XEP-0401)
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   120
		end, "admin"));