diff options
Diffstat (limited to 'web/client.js')
-rw-r--r-- | web/client.js | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/web/client.js b/web/client.js index da995d2..d364a8d 100644 --- a/web/client.js +++ b/web/client.js @@ -73,10 +73,13 @@ $(function() { return true; } + function isList(meta) { + return _.contains(["list", "set"], meta.type); + } + function isTreeNode(meta) { - return _.contains( - ["collection", "list", "model", "set"], meta.type - ); + return isList(meta) || + _.contains(["collection", "model"], meta.type); } @@ -112,6 +115,9 @@ $(function() { var def = $.Deferred(); objRequest(path).done(function(data) { + if (isTreeNode(data.meta) && !_.size(data.data)) + data.data = isList(data.meta) ? [] : {}; + function index(name) { return _.isArray(data.data) ? name - 1 : name; } |