var menuIds = ['sLegacy', 'sClasses', 'sReg'];

function hm() {
	var i;
	for (i = 0; i < menuIds.length; ++i) {
		var block = document.getElementById(menuIds[i]);
		block.className = 'sub_menu';
		block.style.display = 'none';
	}
}

function dm(elId) {
	if (elId) {
		hm();
		document.getElementById(elId).style.display = 'block';
	}
}

function countChecked(f) {
	var i, items = [], inputs = f.getElementsByTagName('input');
	
	for (i = 0, j = 0; i < inputs.length; ++i) {
		if (inputs[i].type == 'checkbox' && /^listItems\[.*\]$/.test(inputs[i].name)) {
			items[j] = inputs[i];
			++j;
		}
	}
	
	var count = 0;
	
	for (i = 0; i < items.length; ++i) {
		if (items[i].checked) ++count;
	}
	
	return count;
}

function checkAll(f, glocalChkId) {
	var i, items = [], inputs = f.getElementsByTagName('input');
	var glocalChkId = (glocalChkId) ? glocalChkId : 'globalCheck';
	
	for (i = 0, j = 0; i < inputs.length; ++i) {
		if (inputs[i].type == 'checkbox' && /^listItems\[.*\]$/.test(inputs[i].name)) {
			items[j] = inputs[i];
			++j;
		}
	}
	
	var global = document.getElementById(glocalChkId);
	
	for (var i = 0; i < items.length; ++i) {
		items[i].checked = global.checked;
	}
}

function check(f, glocalChkId) {
	var glocalChkId = (glocalChkId) ? glocalChkId : 'globalCheck';
	var global = document.getElementById(glocalChkId);
	var i, items = [], inputs = f.getElementsByTagName('input');
	
	for (i = 0, j = 0; i < inputs.length; ++i) {
		if (inputs[i].type == 'checkbox' && /^listItems\[.*\]$/.test(inputs[i].name)) {
			items[j] = inputs[i];
			++j;
		}
	}
	
	var count = countChecked(f);
	
	if (items.length != count) global.checked = false;
	else global.checked = true;
}