# HG changeset patch # User Jonas Schäfer # Date 1651171259 -7200 # Node ID c38b1c63aa5ce1ba131f696236ac847af8b3bfe7 # Parent e732f9dfdfc80cc671e3c0baee463e0d6d59a78c mod_http_file_share: use util.human.io.parse_duration Updated by Zash, the original patch by Jonas had put the duration parsing function in util.datetime but MattJ later did the same thing but differently in f4d7fe919969 diff -r e732f9dfdfc8 -r c38b1c63aa5c plugins/mod_http_file_share.lua --- a/plugins/mod_http_file_share.lua Thu Apr 28 20:38:40 2022 +0200 +++ b/plugins/mod_http_file_share.lua Thu Apr 28 20:40:59 2022 +0200 @@ -19,6 +19,7 @@ local hi = require "prosody.util.human.units"; local cache = require "prosody.util.cache"; local lfs = require "lfs"; +local parse_duration = require "prosody.util.human.io".parse_duration; local unknown = math.abs(0/0); local unlimited = math.huge; @@ -39,7 +40,12 @@ local file_size_limit = module:get_option_number(module.name .. "_size_limit", 10 * 1024 * 1024); -- 10 MB local file_types = module:get_option_set(module.name .. "_allowed_file_types", {}); local safe_types = module:get_option_set(module.name .. "_safe_file_types", {"image/*","video/*","audio/*","text/plain"}); -local expiry = module:get_option_number(module.name .. "_expires_after", 7 * 86400); +local expiry_str = module:get_option_string(module.name .. "_expires_after", "1w"); +local expiry, parse_err = parse_duration(expiry_str); +if expiry == nil then + module:log("error", "Could not parse "..module.name.."_expire_after string %q: %s", expiry_str, parse_err); + return false; +end local daily_quota = module:get_option_number(module.name .. "_daily_quota", file_size_limit*10); -- 100 MB / day local total_storage_limit = module:get_option_number(module.name.."_global_quota", unlimited);