Refresh nodes correctly when there is a single child that is updated. Fixes #2532

REL-1_X
Khushboo Vashi 2017-07-10 13:25:10 +01:00 committed by Dave Page
parent 55b1e7b186
commit ecd95141f3
1 changed files with 36 additions and 20 deletions

View File

@ -826,6 +826,10 @@ define(
_o.d = null; _o.d = null;
_o.pI.push({coll: true, item: i, d: d}); _o.pI.push({coll: true, item: i, d: d});
// Set load to false when the current collection node's inode is false
if (!_o.t.isInode(i)) {
_o.load = false;
}
_o.b._findTreeChildNode(i, _d, _o); _o.b._findTreeChildNode(i, _d, _o);
return; return;
} }
@ -1502,6 +1506,7 @@ define(
} }
}); });
} else { } else {
var _appendNode = function() {
ctx.t.append(ctx.i, { ctx.t.append(ctx.i, {
itemData: _new, itemData: _new,
success: function() { success: function() {
@ -1522,7 +1527,18 @@ define(
ctx.o.fail.apply(ctx.t, [ctx.i, _old, _new]); ctx.o.fail.apply(ctx.t, [ctx.i, _old, _new]);
} }
} }
}); })
};
// If the current node's inode is false
if (ctx.i && !ctx.t.isInode(ctx.i)) {
ctx.t.setInode(ctx.i, {success: _appendNode});
} else {
// Handle case for node without parent i.e. server-group
// or if parent node's inode is true.
_appendNode();
}
} }
}.bind(ctx); }.bind(ctx);