aboutsummaryrefslogtreecommitdiffstats
path: root/util/dataforms.lua
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2018-09-01 01:24:46 +0200
committerKim Alvefur <zash@zash.se>2018-09-01 01:24:46 +0200
commit3da47d7dde637947a736debd4c350bd7eaaa8198 (patch)
tree044e31819102a37413083044bffde12de008df5c /util/dataforms.lua
parentc9cc5d4a6e469464596b18326bfeade3e48dc868 (diff)
downloadprosody-3da47d7dde637947a736debd4c350bd7eaaa8198.tar.gz
prosody-3da47d7dde637947a736debd4c350bd7eaaa8198.zip
util.dataforms: Allow field names to be different from the 'var' attribute
This should allow the usage of long prefixes and namespace-like names to be contained to the XML representation of the form, so that the code can use more convenient names.
Diffstat (limited to 'util/dataforms.lua')
-rw-r--r--util/dataforms.lua4
1 files changed, 2 insertions, 2 deletions
diff --git a/util/dataforms.lua b/util/dataforms.lua
index a5733b83..3ac18697 100644
--- a/util/dataforms.lua
+++ b/util/dataforms.lua
@@ -42,7 +42,7 @@ function form_t.form(layout, data, formtype)
for _, field in ipairs(layout) do
local field_type = field.type or "text-single";
-- Add field tag
- form:tag("field", { type = field_type, var = field.name, label = formtype ~= "submit" and field.label or nil });
+ form:tag("field", { type = field_type, var = field.var or field.name, label = formtype ~= "submit" and field.label or nil });
if formtype ~= "submit" then
if field.desc then
@@ -150,7 +150,7 @@ function form_t.data(layout, stanza, current)
for _, field in ipairs(layout) do
local tag;
for field_tag in stanza:childtags("field") do
- if field.name == field_tag.attr.var then
+ if (field.var or field.name) == field_tag.attr.var then
tag = field_tag;
break;
end