From 3da47d7dde637947a736debd4c350bd7eaaa8198 Mon Sep 17 00:00:00 2001
From: Kim Alvefur <zash@zash.se>
Date: Sat, 1 Sep 2018 01:24:46 +0200
Subject: 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.
---
 util/dataforms.lua | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

(limited to 'util')

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
-- 
cgit v1.2.3