Software /
code /
prosody
Diff
plugins/mod_mam/mod_mam.lua @ 13209:c8d949cf6b09
plugins: Switch to :get_option_period() for time range options
Improves readability ("1 day" vs 86400) and centralizes validation.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 16 Jul 2023 20:49:33 +0200 |
parent | 13165:9c13c11b199d |
child | 13213:50324f66ca2a |
line wrap: on
line diff
--- a/plugins/mod_mam/mod_mam.lua Sun Jul 16 21:04:42 2023 +0200 +++ b/plugins/mod_mam/mod_mam.lua Sun Jul 16 20:49:33 2023 +0200 @@ -37,14 +37,13 @@ local time_now = require "prosody.util.time".now; local m_min = math.min; local timestamp, datestamp = import( "util.datetime", "datetime", "date"); -local parse_duration = require "prosody.util.human.io".parse_duration; local default_max_items, max_max_items = 20, module:get_option_number("max_archive_query_results", 50); local strip_tags = module:get_option_set("dont_archive_namespaces", { "http://jabber.org/protocol/chatstates" }); local archive_store = module:get_option_string("archive_store", "archive"); local archive = module:open_store(archive_store, "archive"); -local cleanup_after = module:get_option_string("archive_expires_after", "1w"); +local cleanup_after = module:get_option_period("archive_expires_after", "1w"); local archive_item_limit = module:get_option_number("storage_archive_item_limit", archive.caps and archive.caps.quota or 1000); local archive_truncate = math.floor(archive_item_limit * 0.99); @@ -511,13 +510,6 @@ local cleanup_storage = module:open_store("archive_cleanup"); local cleanup_map = module:open_store("archive_cleanup", "map"); - local cleanup_after_seconds, parse_err = parse_duration(cleanup_after); - if parse_err ~= nil then - module:log("error", "Could not parse archive_expires_after string %q: %s", cleanup_after, parse_err); - return false; - end - cleanup_after = cleanup_after_seconds; - module:log("debug", "archive_expires_after = %d -- in seconds", cleanup_after); if not archive.delete then