function getElementsByClassName(oElm, strTagName, oClassNames){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	var arrRegExpClassNames = new Array();
	if(typeof oClassNames == "object"){
		for(var i=0; i<oClassNames.length; i++){
			arrRegExpClassNames.push(new RegExp("(^|\\s)" + oClassNames[i].replace(/\-/g, "\\-") + "(\\s|$)"));
		}
	}
	else{
		arrRegExpClassNames.push(new RegExp("(^|\\s)" + oClassNames.replace(/\-/g, "\\-") + "(\\s|$)"));
	}
	var oElement;
	var bMatchesAll;
	for(var j=0; j<arrElements.length; j++){
		oElement = arrElements[j];
		bMatchesAll = true;
		for(var k=0; k<arrRegExpClassNames.length; k++){
			if(!arrRegExpClassNames[k].test(oElement.className)){
				bMatchesAll = false;
				break;
			}
		}
		if(bMatchesAll){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

function selectAllOptions(cbSelectAll, cbl)
{
    if (!cbSelectAll) return;
    
    var container = $get(cbl);
    if (!container) return;
    
    var cbs = getElementsByClassName(container, "input", "*");
    for (var ii=0; ii < cbs.length; ii++)
        if (cbs[ii].type == "checkbox")
        {
            if (cbSelectAll.checked && !cbs[ii].checked)
                cbs[ii].click();
            else
            if (!cbSelectAll.checked && cbs[ii].checked)
                cbs[ii].click();
        }
}

function checkCBState(cb, divid)
{
    var div = $get(divid);
    if  (!div) return;
    if (cb.checked)
        div.className = 'Orange';
    else
        div.className = 'OrangeHidden';
}

function selectAllItems(cbSelectAll, containerid)
{
    if (!cbSelectAll) return;
    
    var container = $get(containerid);
    if (!container) return;
    
    var cbs = getElementsByClassName(container, "input", "*");
    for (var ii=0; ii < cbs.length; ii++)
        if (cbs[ii].type == "checkbox")
        {
            if (cbSelectAll.checked && !cbs[ii].checked)
                cbs[ii].click();
            else
            if (!cbSelectAll.checked && cbs[ii].checked)
                cbs[ii].click();
        }
}

function clearTextBoxOfText(tb, message, clear)
{   
    if (!tb) return;
    
    if (clear)
        if (tb.value.toLowerCase() == message.toLowerCase())
            tb.value = '';
            
    if (!clear)
        if (tb.value.length == 0)
            tb.value = message;
    
}

function clearTextBox(divid, tbid)
{
    var div = $get(divid);
    var tb = $get(tbid);
    
    if (div && tb)
    {
        div.style.display = 'none';
        tb.focus();
    }
}

function setTextBox(divid, tbid)
{
    var div = $get(divid);
    var tb = $get(tbid);
    
    if (div && tb && tb.value.length == 0)
        div.style.display = '';
}

function hideShowDiv(divid)
{
    var div = $get(divid);
    if (!div) return;
    
    if (div.style.display == 'none')
        div.style.display = '';
    else
        div.style.display = 'none';
}