Software /
code /
prosody
Changeset
13359:1796370091d4
usermanager, mod_auth_internal_hashed: Support metadata when disabling a user
This allows us to store a time, actor, comment and/or reason why an account
was disabled, which seems a generally useful thing to support.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 30 Nov 2023 09:47:00 +0000 |
parents | 13358:2b8ec22988af |
children | 13360:6037b7a2131c |
files | core/usermanager.lua plugins/mod_auth_internal_hashed.lua |
diffstat | 2 files changed, 5 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/core/usermanager.lua Mon Nov 27 00:14:56 2023 +0100 +++ b/core/usermanager.lua Thu Nov 30 09:47:00 2023 +0000 @@ -163,12 +163,12 @@ return ret, err; end -local function disable_user(username, host) +local function disable_user(username, host, meta) local method = hosts[host].users.disable; if not method then return nil, "method not supported"; end - local ret, err = method(username); + local ret, err = method(username, meta); if ret then - prosody.events.fire_event("user-disabled", { username = username, host = host }); + prosody.events.fire_event("user-disabled", { username = username, host = host, meta = meta }); end return ret, err; end
--- a/plugins/mod_auth_internal_hashed.lua Mon Nov 27 00:14:56 2023 +0100 +++ b/plugins/mod_auth_internal_hashed.lua Thu Nov 30 09:47:00 2023 +0000 @@ -126,9 +126,10 @@ return accounts:set(username, account); end -function provider.disable(username) +function provider.disable(username, meta) local account = accounts:get(username); account.disabled = true; + account.disabled_meta = meta; account.updated = os.time(); return accounts:set(username, account); end