Mercurial > prosody-modules
changeset 3792:aec772bbd558
mod_nodeinfo2: Only expose amount of accounts if nodeinfo2_expose_users isn’t set to false
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Mon, 30 Dec 2019 22:44:12 +0100 |
parents | 34a8f9f996ec |
children | 0d3926e49b55 |
files | mod_nodeinfo2/README.markdown mod_nodeinfo2/mod_nodeinfo2.lua |
diffstat | 2 files changed, 19 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/mod_nodeinfo2/README.markdown Mon Dec 30 22:43:01 2019 +0100 +++ b/mod_nodeinfo2/README.markdown Mon Dec 30 22:44:12 2019 +0100 @@ -22,6 +22,12 @@ } ``` +Set the `nodeinfo2_expose_users` option to false if you don’t want to expose +statistics about the amount of users you host: +``` +nodeinfo2_expose_users = false +``` + Set the `nodeinfo2_expose_posts` option to false if you don’t want to expose statistics about the amount of messages being exchanged by your users: ```
--- a/mod_nodeinfo2/mod_nodeinfo2.lua Mon Dec 30 22:43:01 2019 +0100 +++ b/mod_nodeinfo2/mod_nodeinfo2.lua Mon Dec 30 22:44:12 2019 +0100 @@ -6,7 +6,11 @@ local os_time = os.time; module:depends("http"); -module:depends("lastlog"); + +local expose_users = module:get_option_boolean("nodeinfo2_expose_users", true); +if expose_users then + module:depends("lastlog"); +end local expose_posts = module:get_option_boolean("nodeinfo2_expose_posts", true); if expose_posts then @@ -52,21 +56,24 @@ end end -add_task(86400, update_user_list); -update_user_list(); +if expose_users then + add_task(86400, update_user_list); + update_user_list(); +end module:provides("http", { default_path = "/.well-known/x-nodeinfo2"; route = { GET = function (event) - local usage = { - users = { + local usage = {}; + if expose_users then + usage.users = { total = total_users; activeWeek = week_users; activeMonth = month_users; activeHalfyear = half_year_users; }; - }; + end if expose_posts then local stats, changed_only, extras = get_stats();