diff options
author | Kim Alvefur <zash@zash.se> | 2024-10-16 16:15:05 +0200 |
---|---|---|
committer | Kim Alvefur <zash@zash.se> | 2024-10-16 16:15:05 +0200 |
commit | 2ef0e122fd9508dce52471ac2b6585f998d6e7d5 (patch) | |
tree | c9e96e731e255be17d8222ed3ad8dd58e4e604e5 | |
parent | eb612ac519a0f298a9697749b633596495084170 (diff) | |
download | prosody-2ef0e122fd9508dce52471ac2b6585f998d6e7d5.tar.gz prosody-2ef0e122fd9508dce52471ac2b6585f998d6e7d5.zip |
util.xtemplate: Use same argument order in filters even without 'args'
This removes the different argument order used between '{x|foo}' and
'{x|foo(y)}' because the differing order was awkward and confusing.
This util does not seem to be widely used so should not be problematic
to change this part. The only known use is in mod_pubsub, which does not
use the filter function feature.
-rw-r--r-- | teal-src/prosody/util/xtemplate.tl | 8 | ||||
-rw-r--r-- | util/xtemplate.lua | 6 |
2 files changed, 3 insertions, 11 deletions
diff --git a/teal-src/prosody/util/xtemplate.tl b/teal-src/prosody/util/xtemplate.tl index 84003051..4d293359 100644 --- a/teal-src/prosody/util/xtemplate.tl +++ b/teal-src/prosody/util/xtemplate.tl @@ -17,7 +17,7 @@ local t_concat = table.concat; local st = require "prosody.util.stanza"; local type escape_t = function (string) : string -local type filter_t = function (string, string | st.stanza_t, string) : string | st.stanza_t, boolean +local type filter_t = function (string | st.stanza_t, string | st.stanza_t, string) : string | st.stanza_t, boolean local type filter_coll = { string : filter_t } local function render(template : string, root : st.stanza_t, escape : escape_t, filters : filter_coll) : string @@ -85,11 +85,7 @@ local function render(template : string, root : st.stanza_t, escape : escape_t, end elseif filters and filters[func] then local f = filters[func]; - if args == nil then - value, is_escaped = f(value, tmpl); - else - value, is_escaped = f(args, value, tmpl); - end + value, is_escaped = f(value, args, tmpl); else error("No such filter function: " .. func); end diff --git a/util/xtemplate.lua b/util/xtemplate.lua index e23b1a01..446d7d1f 100644 --- a/util/xtemplate.lua +++ b/util/xtemplate.lua @@ -70,11 +70,7 @@ local function render(template, root, escape, filters) end elseif filters and filters[func] then local f = filters[func]; - if args == nil then - value, is_escaped = f(value, tmpl); - else - value, is_escaped = f(args, value, tmpl); - end + value, is_escaped = f(value, args, tmpl); else error("No such filter function: " .. func); end |