+ local function tag_fields(e)
+ if e.option and node.fields[e.option] then
+ node.fields[e.option].error = e
+ elseif e.childs then
+ for _, c in ipairs(e.childs) do tag_fields(c) end
+ end
+ end
+
+ local function tag_section(e)
+ local s = { }
+ for _, c in ipairs(e.childs) do
+ if c.childs and not c:is(luci.uvl.errors.ERR_DEPENDENCY) then
+ table.insert( s, c.childs[1]:string() )
+ else
+ table.insert( s, c:string() )
+ end
+ end
+ if #s > 0 then node.error = s end
+ end
+