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