These render functions are used when displaying comments in a separate column. The `commentField` utility simplifies creation of comments.
Signed-off-by: Matthias Heiserer <m.heise...@proxmox.com> --- www/manager6/Utils.js | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/www/manager6/Utils.js b/www/manager6/Utils.js index aafe359a..2d03f611 100644 --- a/www/manager6/Utils.js +++ b/www/manager6/Utils.js @@ -1803,6 +1803,45 @@ Ext.define('PVE.Utils', { return undefined; }, + + renderComment: function(key, metaData, rec, rowIndex, colIndex, store, pending) { + if (rec && rec.data && rec.data.value) { + let properties = PVE.Parser.parsePropertyString(rec.data.value, rec.data.key); + if (properties && properties.comment) { + return properties.comment; + } + } + // Try to extract a comment from the separate fields + // This is needed for single value fields like bios and memory + if (rec && rec.id) { + let hw_name = rec.id; + let comment = this.getObjectValue(`${hw_name}_comment`, undefined); + if (comment) { + return comment; + } + } + return PVE.Utils.noneText; + }, + + renderValueWithoutComment: function(context) { + return function(value, ...args) { + if (value && typeof value === "string") { + value = value.replace(/comment=[^,]*(,|$)/, ""); + } + return this.renderValue(value, ...args); + }.bind(context); + }, + + commentField: function(name = 'comment') { + return { + xtype: 'textfield', + name: name, + fieldLabel: gettext('comment'), + allowBlank: true, + emptyText: '', + defaultValue: '', + }; + }, }, singleton: true, -- 2.30.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel