4d2d3fb439abe402e45cc69f790c2556423cf22d braney Tue Feb 6 16:00:53 2018 -0800 add new tracks to the collection that contains the selected track. diff --git src/hg/js/hgCollection.js src/hg/js/hgCollection.js index cc6c659..cc86533 100644 --- src/hg/js/hgCollection.js +++ src/hg/js/hgCollection.js @@ -266,42 +266,51 @@ var z = v[i]; names[z.li_attr.name] = 1; } } function checkEmpty(parentId) { if ($('#'+parentId).hasClass('empty')) { var parentNode = $(selectedTree).jstree('get_node', parentId); var stub = parentNode.children[0]; $(selectedTree).jstree('delete_node', stub); $('#'+parentId).removeClass('empty'); parentNode.li_attr.class = 'folder'; } } + function findCollection(parentNode) { + while(parentNode.parent !== '#') { + parentNode = $(selectedTree).jstree("get_node", parentNode.parent); + } + + return parentNode.id; + } + function plusHit(event, data) { // called with the plus icon is hit if (selectedNode === undefined) { alert(addWithoutCollectionText); return; } var treeObject = $(event.currentTarget).parent().parent(); var id = treeObject.attr('id'); var node = treeObject.jstree("get_node", id); if (node.children.length === 0) { var parentId = $(selectedNode).attr('id'); + parentId = findCollection(selectedNode); checkEmpty(parentId); isDirty = true; $(selectedTree).jstree("copy_node", node, parentId,'last'); } } function minusHit (event, data) { // called with the minus icon is hit var treeObject = $(event.currentTarget).parent().parent(); var id = treeObject.attr('id'); var node = treeObject.jstree("get_node", id); if (node.children.length === 0) { isDirty = true; var parentNode = treeObject.jstree("get_node", node.parent); if (parentNode.children.length === 1) {