function getElementsByClassName(classname, node)  {
    if(!node) node = document.getElementsByTagName("body")[0];
    var a = [];
    var re = new RegExp(classname);
    var els = node.getElementsByTagName("*");
    for(var i=0,j=els.length; i<j; i++) {
        if(re.test(els[i].className)) {
            a.push(els[i]);
        }
    }
    return a;
}

function toggleElementsDisplay(cl, pid) {
	var parent = document.getElementById(pid);
	var a = getElementsByClassName(cl, parent);
	for (var i = 0; i < a.length; i++)
		if (a[i].style.display == 'none')
			a[i].style.display = 'block';
		else
			a[i].style.display = 'none';
}

function setElementsDisable(cl, pid, checkbox) {
	var parent = document.getElementById(pid);
	var a = getElementsByClassName(cl, parent);
	for (var i = 0; i < a.length; i++)
		if (a[i] != checkbox)
			a[i].disabled = !checkbox.checked;
}
