applied thanks! On 4/10/18 4:36 PM, Dominik Csapak wrote: > we did only check if the first field of a mulitfield key is being deleted, > resulting in showing no pending change at all when deleting any other, > and as long as only deletions were taking place > > also when deleting the 'main' key of a multikey field, we > showed the deletion of the whole line, even when already showing > a different pending line > > Signed-off-by: Dominik Csapak <d.csa...@proxmox.com> > --- > grid/PendingObjectGrid.js | 33 +++++++++++++++++++++++++++------ > 1 file changed, 27 insertions(+), 6 deletions(-) > > diff --git a/grid/PendingObjectGrid.js b/grid/PendingObjectGrid.js > index 0061c37..8163468 100644 > --- a/grid/PendingObjectGrid.js > +++ b/grid/PendingObjectGrid.js > @@ -6,8 +6,14 @@ Ext.define('Proxmox.grid.PendingObjectGrid', { > var me = this; > var rec = me.store.getById(key); > if (rec) { > - var value = (pending && Ext.isDefined(rec.data.pending) && > (rec.data.pending !== '')) ? > - rec.data.pending : rec.data.value; > + var value = rec.data.value; > + if (pending) { > + if (Ext.isDefined(rec.data.pending) && rec.data.pending !== '') > { > + value = rec.data.pending; > + } else if (rec.data['delete'] === 1) { > + value = defaultValue; > + } > + } > > if (Ext.isDefined(value) && (value !== '')) { > return value; > @@ -27,7 +33,10 @@ Ext.define('Proxmox.grid.PendingObjectGrid', { > > Ext.Array.each(keys, function(k) { > var rec = me.store.getById(k); > - if (rec && rec.data && Ext.isDefined(rec.data.pending) && > (rec.data.pending !== '')) { > + if (rec && rec.data && ( > + (Ext.isDefined(rec.data.pending) && rec.data.pending !== > '') || > + rec.data['delete'] === 1 > + )) { > pending = true; > return false; // break > } > @@ -60,11 +69,23 @@ Ext.define('Proxmox.grid.PendingObjectGrid', { > } > > if (record.data['delete']) { > - pendingdelete = '<div style="text-decoration: line-through;">'+ > current +'</div>'; > + var delete_all = true; > + if (rowdef.multiKey) { > + Ext.Array.each(rowdef.multiKey, function(k) { > + var rec = me.store.getById(k); > + if (rec && rec.data && rec.data['delete'] !== 1) { > + delete_all = false; > + return false; // break > + } > + }); > + } > + if (delete_all) { > + pending = '<div style="text-decoration: line-through;">'+ > current +'</div>'; > + } > } > > - if (pending || pendingdelete) { > - return current + '<div style="color:red">' + (pending || '') + > pendingdelete + '</div>'; > + if (pending) { > + return current + '<div style="color:red">' + pending + '</div>'; > } else { > return current; > } >
_______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel