diff options
-rw-r--r-- | web/widget/abstract/fields.js | 4 | ||||
-rw-r--r-- | web/widget/inline.js | 22 |
2 files changed, 15 insertions, 11 deletions
diff --git a/web/widget/abstract/fields.js b/web/widget/abstract/fields.js index 67ccf88..7a9773f 100644 --- a/web/widget/abstract/fields.js +++ b/web/widget/abstract/fields.js @@ -113,7 +113,9 @@ define( !set, !set && _.contains(meta.removable, name) ); - this.setupWidget(widget, meta["ui-member"] + " " + name); + this.setupWidget( + widget, set ? null : meta["ui-member"] + " " + name + ); widget.trigger("start"); return widget; }, diff --git a/web/widget/inline.js b/web/widget/inline.js index d016088..87e6bc7 100644 --- a/web/widget/inline.js +++ b/web/widget/inline.js @@ -98,20 +98,22 @@ define( var self = this; var description = el.data("description"); - var labelTd = $("<td>").text(label); - el.on("hasDetails", function(event, path) { - labelTd.html(dom.objectRef(path).text(label)); - el.on("statusChanged", function(event, status) { - dom.setStatus(labelTd, status); - event.stopPropagation(); + var labelTd = label ? $("<td>").text(label) : null; + if (labelTd) + el.on("hasDetails", function(event, path) { + labelTd.html(dom.objectRef(path).text(label)); + el.on("statusChanged", function(event, status) { + dom.setStatus(labelTd, status); + event.stopPropagation(); + }); + event.stopPropagation(); }); - event.stopPropagation(); - }); + function prependLabel(el) { if (labelTd) el.prepend(labelTd); } el = dom.makeRow(el); if (el.is("tr")) { - el.prepend(labelTd); + prependLabel(el); if (description) el.append($("<td>").text(description)); this.appendRow(el); } @@ -124,7 +126,7 @@ define( tr.prepend($("<td>")); }); tr.children().first().remove(); - tr.prepend(labelTd); + prependLabel(tr); this.table = el; } else this.table = null; |