comparison mod_invites_register_api/mod_invites_register_api.lua @ 4381:a1256e376dca

mod_invites_register_api: reroute register call The token from the URI was not used anyway. In addition, we now return the resulting JID because it’s the only way to be sure.
author Jonas Schäfer <jonas@wielicki.name>
date Mon, 25 Jan 2021 16:55:39 +0100
parents cba8cd564641
children dbfa830e4504
comparison
equal deleted inserted replaced
4380:cba8cd564641 4381:a1256e376dca
30 jid = invite.jid; 30 jid = invite.jid;
31 inviter = invite.inviter; 31 inviter = invite.inviter;
32 }); 32 });
33 end 33 end
34 34
35 function register_with_invite(event, invite_token) 35 function register_with_invite(event)
36 if not invite_token or #invite_token == 0 then
37 return 404;
38 end
39
40 local request, response = event.request, event.response; 36 local request, response = event.request, event.response;
41 37
42 if not request.body or #request.body == 0 38 if not request.body or #request.body == 0
43 or request.headers.content_type ~= json_content_type then 39 or request.headers.content_type ~= json_content_type then
44 module:log("warn", "Invalid payload"); 40 module:log("warn", "Invalid payload");
104 source = "mod_"..module.name; 100 source = "mod_"..module.name;
105 validated_invite = invite; 101 validated_invite = invite;
106 ip = request.ip; 102 ip = request.ip;
107 }); 103 });
108 104
109 return 200; 105 return json.encode({
106 jid = prepped_username .. "@" .. module.host;
107 });
110 end 108 end
111 109
112 module:provides("http", { 110 module:provides("http", {
113 default_path = "register_api"; 111 default_path = "register_api";
114 route = { 112 route = {
115 ["GET /invite/*"] = get_invite_info; 113 ["GET /invite/*"] = get_invite_info;
116 ["POST /register/*"] = register_with_invite; 114 ["POST /register"] = register_with_invite;
117 }; 115 };
118 }); 116 });