function unCheckAllGroupCheckBoxes(aspCheckBoxObj,aspCheckBoxID,chkVal) 
{
	if(chkVal)
	{
        	re = new RegExp(':' + aspCheckBoxID + '$')  		//generated controlname starts with a colon
	
	        for(i = 0; i < document.forms[0].elements.length; i++) 
		{
		        elm = document.forms[0].elements[i]

			if (elm.type == 'checkbox') 
			{
				if ((re.test(elm.name)) && (elm.name != aspCheckBoxObj.name))
                		{ 
                    			elm.checked = false;
		                }
			}
		}      

	}
}
function unCheckAllGroupCheckBoxesWithLimit(aspCheckBoxObj,aspCheckBoxID,chkVal,varLimit) 
{
	var varCount = 0
	if(chkVal)
	{
        re = new RegExp(aspCheckBoxID + ':_ctl')  		//generated controlname starts with a colon
		for(i = 0; i < document.forms[0].elements.length; i++) 
		{
			elm = document.forms[0].elements[i]
			if (elm.type == 'checkbox') 
			{
				if (re.test(elm.name))
                {
		 			if (elm.checked)
						varCount= varCount + 1;
				}
			}
		} 
		if (varCount > varLimit)     
		{
			aspCheckBoxObj.checked = false;
			alert("Can not select more than " + varLimit + " options !")
		}
	}
}
function unCheckAllGroupCheckBoxesWithLimitArray(aspCheckBoxObj,arrayID,chkVal,varLimit) 
{
	var varCount = 0
	var tmpArray
	if(chkVal)
	{
			tmpArray = eval(arrayID)
	        for(i = 0; i < tmpArray.length; i++) 
		{
		        elm = document.forms[0].elements[tmpArray[i]]

		 			if (elm.checked)
                    				varCount= varCount + 1;
		} 
		if (varCount > varLimit)     
		{
			aspCheckBoxObj.checked = false;
			alert("Can not select more than " + varLimit + " options !")
		}

	}
}
function GroupCheckBoxesCount(aspCheckBoxID,varLimit) 
{
	var varCount = 0
    re = new RegExp(aspCheckBoxID + ':_ctl')  		//generated controlname starts with a colon
	for(i = 0; i < document.forms[0].elements.length; i++) 
	{
		elm = document.forms[0].elements[i]
		if (elm.type == 'checkbox') 
		{
			if (re.test(elm.name))
            {
		 		if (elm.checked)
					varCount= varCount + 1;
			}
		}
	} 	
	if (varLimit > varCount)     
	{
		return false
	}
	return true
}
function GroupCheckBoxesCountWithArray(arrayID,varLimit) 
{
	var varCount = 0
	var tmpArray
	tmpArray = eval(arrayID)
	for(i = 0; i < tmpArray.length; i++) 
	{
		elm = document.forms[0].elements[tmpArray[i]]
		if (elm.checked)
           varCount= varCount + 1;
	} 
	
	if (varLimit > varCount)     
	{
		return false
	}
	return true
}
function unchkArray(arrayID) 
{
	var tmpArray
	tmpArray = eval(arrayID)
	for(i = 0; i < tmpArray.length; i++) 
	{
		elm = document.forms[0].elements[tmpArray[i]]
		elm.checked = false
	} 

}
function deSelectID(idToDeselect,callingID)
{
	if (callingID.checked)
	{
		var idDeselect = eval('document.forms[0].' + idToDeselect)
		idDeselect.checked = false;
	}
}
function totalLimit(initialLimit,objToEvaluate)
{
	var addLimitObj = eval(objToEvaluate)
	if (addLimitObj.checked)
		initialLimit = initialLimit + 1;
	return initialLimit
}

