function selectItems(onoff, item) {
	var i,j;
	var parts=item.split(',');
	for (i=0;i<parts.length;i++){
		list = $$('input.shodor_xforms_' + parts[i]);
		for(j=0;j<list.length;j++) {
			if (list[j] != null)
				list[j].checked = onoff;
		}
	}
}


function checkAncestors(id) {
	var ancestors = id.split(' ');
	for (i=0; i<ancestors.length;i++) {
		var ancestor = ancestors[i];
		var name = ancestor.substring(0, ancestor.lastIndexOf("CBDescendant"));
		obj = document.getElementsByName(name);
		obj[0].checked = true;
	}

}

function uncheckChildren(parentClass) {
	var descendants = getElementsByStyleClass(parentClass+'CBDescendant');
	for (var i = 0; i<descendants.length; i++) {
		descendants[i].checked = false;	
	}
}

function showHideChildren(parentClass, showHide) {
	var plusIds = '';
	if(showHide) {
		var children = getElementsByStyleClass(parentClass+'Child');
		for (var i = 0; i<children.length; i++) {
			children[i].style.display = 'block';
		} 	
		var plus = document.getElementById('plus-button'+parentClass);
		plus.innerHTML = '[-]';
		plus.onclick = Function('showHideChildren(\''+parentClass+'\',false)');
	}
	else {
		var descendants = getElementsByStyleClass(parentClass+'Descendant');
		for (var i = 0; i<descendants.length; i++) {
			descendants[i].style.display = 'none';
		}	
		var plus = document.getElementById('plus-button'+parentClass);
		plus.innerHTML = '[+]';
		plus.onclick = Function('showHideChildren(\''+parentClass+'\',true)');
	}
}


function getElementsByStyleClass (className) {
  var all = document.all ? document.all :
    document.getElementsByTagName('*');
  var elements = new Array();
  for (var e = 0; e < all.length; e++) {
    if (all[e].className.search(className) != -1)
      elements[elements.length] = all[e];
  }
  return elements;
}
