Mercurial > prosody-modules
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 }); |
