Software / code / prosody-modules
Comparison
mod_invites_register_api/mod_invites_register_api.lua @ 6192:76ae646563ea
Backed out changeset 94399ad6b5ab
Unintentional committed changes
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Thu, 06 Feb 2025 10:23:08 +0000 |
| parent | 6191:94399ad6b5ab |
| child | 6193:e977174082ee |
comparison
equal
deleted
inserted
replaced
| 6191:94399ad6b5ab | 6192:76ae646563ea |
|---|---|
| 73 if reset_for ~= nil then | 73 if reset_for ~= nil then |
| 74 module:log("debug", "handling password reset invite for %s", reset_for) | 74 module:log("debug", "handling password reset invite for %s", reset_for) |
| 75 if reset_for ~= prepped_username then | 75 if reset_for ~= prepped_username then |
| 76 return 403; -- Attempt to use reset invite for incorrect user | 76 return 403; -- Attempt to use reset invite for incorrect user |
| 77 end | 77 end |
| 78 local ok, err = usermanager.set_password(prepped_username, password, module.host); | |
| 79 if not ok then | |
| 80 module:log("error", "Unable to reset password for %s@%s: %s", prepped_username, module.host, err); | |
| 81 return 500; | |
| 82 end | |
| 83 module:fire_event("user-password-reset", user); | |
| 84 elseif usermanager.user_exists(prepped_username, module.host) then | 78 elseif usermanager.user_exists(prepped_username, module.host) then |
| 85 return 409; -- Conflict | 79 return 409; -- Conflict |
| 86 else | 80 end |
| 87 local registering = { | |
| 88 validated_invite = invite; | |
| 89 username = prepped_username; | |
| 90 host = module.host; | |
| 91 ip = request.ip; | |
| 92 allowed = true; | |
| 93 }; | |
| 94 | 81 |
| 95 module:fire_event("user-registering", registering); | 82 local registering = { |
| 83 validated_invite = invite; | |
| 84 username = prepped_username; | |
| 85 host = module.host; | |
| 86 ip = request.ip; | |
| 87 allowed = true; | |
| 88 }; | |
| 96 | 89 |
| 97 if not registering.allowed then | 90 module:fire_event("user-registering", registering); |
| 98 return 403; | |
| 99 end | |
| 100 | 91 |
| 101 local ok, err = usermanager.create_user(prepped_username, password, module.host); | 92 if not registering.allowed then |
| 93 return 403; | |
| 94 end | |
| 102 | 95 |
| 103 if not ok then | 96 local ok, err = usermanager.create_user(prepped_username, password, module.host); |
| 104 local err_id = id.short(); | |
| 105 module:log("warn", "Registration failed (%s): %s", err_id, tostring(err)); | |
| 106 return 500; | |
| 107 end | |
| 108 | 97 |
| 109 module:fire_event("user-registered", { | 98 if not ok then |
| 110 username = prepped_username; | 99 local err_id = id.short(); |
| 111 host = module.host; | 100 module:log("warn", "Registration failed (%s): %s", err_id, tostring(err)); |
| 112 source = "mod_"..module.name; | 101 return 500; |
| 113 validated_invite = invite; | |
| 114 ip = request.ip; | |
| 115 }); | |
| 116 end | 102 end |
| 103 | |
| 104 module:fire_event("user-registered", { | |
| 105 username = prepped_username; | |
| 106 host = module.host; | |
| 107 source = "mod_"..module.name; | |
| 108 validated_invite = invite; | |
| 109 ip = request.ip; | |
| 110 }); | |
| 117 | 111 |
| 118 return json.encode({ | 112 return json.encode({ |
| 119 jid = prepped_username .. "@" .. module.host; | 113 jid = prepped_username .. "@" .. module.host; |
| 120 }); | 114 }); |
| 121 end | 115 end |