var tree = {
	toggleList : Array(),
	toggleSelectedGroups : function(root) {
		if($('#' + root)) {
			$('#' + root + ' input').each(function (i) {
				var c = $(this);
				if(c.attr('checked') && c.parent().parent()) {
					//get parent ul element (move up the ladder <li> -> <ul>)
					if(!tree.toggleList[c.parent().parent().attr('id')]) {
						tree.recursiveGroupToggle(c.parent().parent(), root);
						tree.toggleList[c.parent().parent()] = "1";
					}
				}
			});
		}
	},
	recursiveGroupToggle : function(element, root) {
		if(element.attr('id').match("sub") != null) {
			id = element.attr('id').substr(3, element.attr('id').length);
		}
			
		if(element.attr('id').match("root") != null) {
			id = element.attr('id').substr(4, element.attr('id').length);
		}
		
		if(element.attr('id') != "" && element.attr('id') != "root" && element.parent().parent()) {	
			tree.toggle(id, element.attr('id'));
			tree.recursiveGroupToggle(element.parent().parent(), root);
		}
		return;
	},
	toggle : function(imgId, element) {
		var el = $('#' + element);
		if(el.length > 0) {
			if(!el.is(':visible')) {
				el.show();
				if($("#node" + element).length > 0) {
					$("#node" + element).show();
				}
				if ($('#' + imgId + "plus").length > 0) {
					$('#' + imgId + 'plus').hide();
					$('#' + imgId + 'minus').show();
				}
			} else {
				el.hide();
				if($("#node" + element).length > 0) {
					$("#node" + element).hide();
				}			
				if ($('#' + imgId + "minus").length > 0) {
					$('#' + imgId +'plus').show();
					$('#' + imgId +'minus').hide();
				}
			}
		}
	},
	select : function(element) {
		var el = $('#' + element);
		if (el.length > 0) {
			id = el.attr('id').substring(2, el.attr('id').length);
			var root = $("#root" + id);
			var sub = $("#sub" + id);
			var t = '';
			if(root.length > 0) {
				t = root.parent().find("input");
			} else if(sub.length > 0) {
				t = sub.parent().find("input");
			}

			if(t != '') {
				var checked = false;
				t.each(function (i) {
					var item = $(this);
					if(i == 0) {
						checked = item.attr('checked');
					} else {
						item.attr('checked', checked);
					}
				});
			}
		}
	},
	disableDivisions : function(element) {
		//disable everything
		t = $("#subTree").find("input");
		t.each(function (i) {
			var item = $(this);
			if(item.attr('checked')) {
				item.attr('disabled', 'disabled');
			} else {
				item.attr('disabled', '');
			}
		});

		$('#' + element).parents('ul').find("input").each(function (i) {
			$(this).attr('disabled', '');
		});
	},
	showTxt2Voice : function() {
		$("#txt2voice").show();
	}
}
