Project

General

Profile

Feature #29474 » feature_29474.diff

Fabien Udriot, 2011-09-05 05:27

View differences:

t3lib/js/extjs/tree/tree.js
checkedNode.getUI().removeClass('complete');
}
var selected = [];
// if node has been checked -> check all parents in cascade
if (checked) {
TYPO3.Components.Tree.checkCascade(checkedNode);
}
// if node has been un-checked -> un-check all children in cascade
else {
TYPO3.Components.Tree.uncheckCascade(checkedNode);
}
this.root.cascade(function(node) {
if (node.ui.isChecked()) {
selected.push(node.attributes.uid);
}
});
this.countSelectedNodes = selected.length;
Ext.fly('treeinput' + this.id).dom.value = selected.join(',');
eval(this.onChange);
this.resumeEvents();
};
/**
* Select node in cascade
*
* @param {Object} Ext.tree.TreeNode
*/
TYPO3.Components.Tree.checkCascade = function(node) {
if (node.isRoot != true) {
node.parentNode.ui.toggleCheck(true);
// Recursive call until the tree is traversed.
TYPO3.Components.Tree.checkCascade(node.parentNode);
}
}
/**
* Disselect node in cascade when
*
* @param {Object} Ext.tree.TreeNode
*/
TYPO3.Components.Tree.uncheckCascade = function(node) {
node.cascade(function(childNode) {
if (childNode != node) {
childNode.ui.toggleCheck(false);
if (childNode.childNodes.length > 0) {
// Recursive call until the tree is traversed.
TYPO3.Components.Tree.uncheckCascade(childNode);
}
}
});
}
    (1-1/1)