summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--web/client.js31
1 files changed, 17 insertions, 14 deletions
diff --git a/web/client.js b/web/client.js
index 50840d3..668e4a9 100644
--- a/web/client.js
+++ b/web/client.js
@@ -135,9 +135,17 @@ $(function() {
var table = $("<table>");
- function renderField(path, name, value, meta, editable) {
+ function renderField(
+ path, name, value, meta, label, editable
+ ) {
+ if (_.isString(name)) {
+ name = name.replace(/([\\\/])/g, "\\$1");
+ if (!isNaN(Number(name))) name = "\\" + name;
+ }
+ path += "/" + name;
+
var row = $("<tr>");
- if (name != null) row.append($("<td>").text(name));
+ if (label) row.append($("<td>").text(meta["ui-name"]));
var td = $("<td>");
@@ -260,28 +268,23 @@ $(function() {
if (data.meta.type == "model")
_.each(data.meta.fields, function(field) {
- var name = field.name;
- if (_.isString(name)) {
- name = name.replace(/([\\\/])/g, "\\$1");
- if (!isNaN(Number(name))) name = "\\" + name;
- }
-
renderField(
- path + "/" + name,
- field["ui-name"],
+ path,
+ field.name,
data.data[field.name],
field,
+ true,
true
);
});
- else _.each(data.data, function(value) {
- var i = 1;
+ else _.each(data.data, function(value, name) {
renderField(
- path + "/" + i++,
- null,
+ path,
+ _.isArray(data.data) ? name + 1 : name,
value,
data.meta.members,
+ false,
data.meta.type != "set"
);
});