//*************** CONFIG ***********************************//

//Not implemented yet.
var CONFIG = Array;
CONFIG['date_seperator'] = '-';
CONFIG['date_format'] = 0; //mm-dd-yyyy
CONFIG['time_seperator'] = ':';
CONFIG['time_format'] = 0; //hh:mm:ss




//*************** CONFIG ***********************************//


function popitup(url,title,height,width) {
	newwindow=window.open(url,title,'height='+height+',width='+width);
	if (window.focus) {newwindow.focus()}
	return false;
}

//input: input type ID
//return type: string
//desc: just a shortcut function to get value from input field
function gval(fieldId){
	if(document.getElementById(fieldId))
		return document.getElementById(fieldId).value;
	else
		return false;
}

//mode: grater - date1 > date2
//		lesser - date1 < date2 
//		equals - date1 == date2
//dateFormate
/*
	format_code		format
		0			mm-dd-yyyy
		1			dd-mm-yyyy
*/

function CompareDate(date1,date2,mode,dateFormat){
	var objDate1 = getObjDate(date1,dateFormat);
	var objDate2 = getObjDate(date2,dateFormat);
	
	if(!objDate1 || !objDate2)
	{
		result = false;
	}
	else
	{
		timestamp1 = objDate1.valueOf();
		timestamp2 = objDate2.valueOf();
		
		switch(mode){
			case 'GREATER':
			default:
				alert(timestamp1+' > '+timestamp2)
				if(timestamp1 > timestamp2)
				{
					result = true;
				}
				else
				{
					result = false;
				}
			break;
	
			case 'LESSER':
				if(timestamp1 < timestamp2)
				{
					result = true;
				}
				else
				{
					result = false;
				}
			break;
			
			case 'LESSEROREQUAL':
				if(timestamp1 <= timestamp2)
				{
					result = true;
				}
				else
				{
					result = false;
				}
			break;
			
			case 'EQUALS':
				if(timestamp1 == timestamp2)
				{
					result = true;
				}
				else
				{
					result = false;
				}
			break;
		}
	}
	return result;		
}



//Input : str (string)
//return type : string
//Desc : Remove white spaces from left side of input string.
function ltrim(str)
{
	return str.replace(/^\s+/, '');	
}


//Input : str (string)
//return type : string
//Desc : Remove white spaces from right side of input string.
function rtrim(str)
{	
	return str.replace(/\s+$/, '');
}

//Input : str (string)
//return type : string
//Desc : Remove white spaces from both side of input string.
function trim(str)
{
	a = ltrim(str);
	b = rtrim(a);
	return b;
}


//Input : str (string)
//return type : boolean
//Desc : returns true if i/p string is empty else false.
function isEmpty(str)
{
	trimmedStr = trim(str); 
	
	if(trimmedStr == '')
	{
		return true;
	}
	return false;
}

//Input : str (string) , allowWhiteSpace (string)
//return type : boolean
//Desc : If str is alphabetic , return true else return false.
// if allowWhiteSpace = true , then allow white space in input str.
function isAlpha( str , allowWhiteSpace  )
{
	if(isEmpty(str))
	{
		return false;
	}

	if(allowWhiteSpace)
	{
		return /^[a-zA-Z\s]+$/.test(str) ;
	}
	else
	{
		return /^[a-zA-Z]+$/.test(str) ;
	}
}


//Input : str (string) , allowWhiteSpace (string)
//return type : boolean
//Desc : If str is numeric , return true else return false.
// if allowWhiteSpace = true , then allow white space in input str.
function isNum( str , allowWhiteSpace )
{
	if(isEmpty(str))
	{
		return false;
	}

	if(allowWhiteSpace)
	{
		return /^[0-9\s]+$/.test(str) ;
	}
	else
	{
		return /^[0-9]+$/.test(str) ;
	}
}


//Input : str (string) , allowWhiteSpace (string)
//return type : boolean
//Desc : If str is alphanumeric , return true else return false.
// if allowWhiteSpace = true , then allow white space in input str.
function isAlphaNum( str , allowWhiteSpace )
{
	if(isEmpty(str))
	{
		return false;
	}

	if(allowWhiteSpace)
	{
		return /^[0-9a-zA-Z\s]+$/.test(str) ;
	}
	else
	{
		return /^[0-9a-zA-Z]+$/.test(str) ;
	}
}


//Input : str (string) 
//return type : boolean
//Desc : If str is float(positve or negative) , return true else return false.
function isFloat(str)
{
	trimmedStr = trim(str); 

	if(trimmedStr == '')
	{
		return false;
	}
	else if(trimmedStr == '.' || trimmedStr == '-' || trimmedStr == '+' )
	{
		return false;
	}
	
	
	result = /^[\+\-]?[0-9]*\.?[0-9]*$/.test(str);

	return result;
	
}


//Input : str (string) 
//return type : boolean
//Desc : If str is integer(positve or negative), return true else return false.
function isInt(str)
{
	if(isEmpty(str))
	{
		return false;
	}
	
	result = /^[\+\-]?[0-9]+$/.test(str);

	return result;
	
}


//Input : radioName (string) => Name of the radio element
//return type : boolean
//Desc : Returns true if a radio button is checked.
function IsRadioChecked(radioName)
{	

	var arrElem = document.getElementsByName(radioName);
	
	for(var i=0 ; i < arrElem.length ; i++ )
	{
		if(arrElem[i].checked == true)
		{
			return true;
		}
		
	}

	return false;
}



function getRadioValue(radioName)
{	

	var arrElem = document.getElementsByName(radioName);
	
	for(var i=0 ; i < arrElem.length ; i++ )
	{
		if(arrElem[i].checked == true)
		{
			return arrElem[i].value;
		}
		
	}

	return '';
}


//Input : chkboxName (string) => name of check box element
//return type : boolean
//Desc : Returns true if any one check box button is checked.
function IsCheckBoxChecked(chkboxName)
{	

	var arrElem = document.getElementsByName(chkboxName);
	
	for(var i=0 ; i < arrElem.length ; i++ )
	{
		if(arrElem[i].checked == true)
		{
			return true;
		}
		
	}

	return false;
}


//Input : selectBoxId (string) => id of select box.
//return type : boolean
//Desc : Returns false if first element is selected.
function IsSelectBoxChecked(selectBoxId)
{
	var objSelect = document.getElementById(selectBoxId);
	if(objSelect.selectedIndex == 0)
	{
		return false;
	}
	else
	{
		return true;
	}
}


//Input : selectBoxId (string) => id of select box.
//return type : boolean
//Desc : Returns false if first element is selected.
function IsMultiSelectBoxChecked(selectBoxId)
{
	var objSelect = document.getElementById(selectBoxId);
	if(objSelect.value == '')
	{
		return false;
	}
	else
	{
		return true;
	}
}



//Input : strEmail (string)
//return type : boolean
//Desc : Returns true if var strEmail is a valid email id else return false.
function isValidEmail(strEmail)
{
	return (/^[\w.-]+@[a-zA-Z0-9-]+\.[a-zA-Z.]{2,5}$/.test(strEmail));
}



//Input : strDate (string) , format (int)
//return : bool / Date Object
//Desc : forms date object and returns it.
/*
	format_code		format
		0			mm-dd-yyyy
		1			dd-mm-yyyy
*/
function getObjDate(strDate,format)
{
	strDate = trim(strDate);
	var dd = 0 ;
	var mm = 0;
	var yy = 0;

	//extract date , month and year from given date string.
	switch(format)
	{
		case 0:
			arrDate = strDate.split(CONFIG['date_seperator']); 
			dd = arrDate[1];
			mm = arrDate[0];
			yy = arrDate[2];
			break;


		case 1:
			arrDate = strDate.split(CONFIG['date_seperator']); 
			dd = arrDate[0];
			mm = arrDate[1];
			yy = arrDate[2];
			break;


		default :
			return false;			
	}


	//creating Date object
	var objDate = new Date();
	objDate.setDate(dd);
	objDate.setMonth(mm);
	objDate.setFullYear(yy);

	return objDate;
	
}


//Input : strTime (string) , format (int)
//return : bool / Date Object
//Desc : forms date object and returns it.
/*
	format_code		format
		0			hh:mm:ss		
*/
function getObjTime(strTime,format)
{
	strTime = trim(strTime);

	var hh,mm,ss;

	//extract hrs , mins and secs from given time string.
	switch(format)
	{
		case 0:
			arrDate = strTime.split(CONFIG['time_seperator']); 
			hh = arrDate[0];
			mm = arrDate[1];
			ss = arrDate[2];
			break;

		default :
			return false;			
	}


	//creating Date object
	var objDate = new Date();
	objDate.setHours(hh);
	objDate.setMinutes(mm);
	objDate.setSeconds(ss);

	return objDate;
	
}



//Input : strDate (string) , format (int)
//return : bool
//Desc : Returns true if date is a valid date else false.
/*
	format_code		format
		0			mm-dd-yyyy
		1			dd-mm-yyyy
*/
function isValidDate(strDate,format)
{
	strDate = trim(strDate);
	var dd = 0 ;
	var mm = 0;
	var yy = 0;

	//extract date , month and year from given date string.
	switch(format)
	{
		case 0:
			pattern = '^[0-9]{2}\\'+CONFIG['date_seperator']+'[0-9]{2}\\'+CONFIG['date_seperator']+'[0-9]{4}$';
			datePatt = new RegExp(pattern,'');
			//if(/^[0-9]{2}\-[0-9]{2}\-[0-9]{4}$/.test(strDate))
			if(datePatt.test(strDate))
			{
				arrDate = strDate.split(CONFIG['date_seperator']); 
				dd = arrDate[1];
				mm = arrDate[0];
				yy = arrDate[2];
			}
			else
			{
				return false;
			}
			break;


		case 1:
			pattern = '^[0-9]{2}\\'+CONFIG['date_seperator']+'[0-9]{2}\\'+CONFIG['date_seperator']+'[0-9]{4}$';
			if(pattern.test(strDate))
			{
				arrDate = strDate.split(CONFIG['date_seperator']); 
				dd = arrDate[0];
				mm = arrDate[1];
				yy = arrDate[2];
			}
			else
			{
				return false;
			}
			break;


		default :
			return false;
			
	}



	//validating date
	//no of days in each month.
	var day = new Array(31,28,31,30,31,30,31,31,30,31,30,31);	

	if (yy < 100) yy += 2000;
	if (yy < 1582 || yy > 4881) return false;
	if (mm == 2 && (yy%400 == 0 || (yy%4 == 0 && yy%100 != 0))) day[1]=29;else day[1]=28;
	if (mm < 1 || mm > 12) return false;
	if (dd < 1 || dd > day[mm-1]) return false;

	return true;

	


}



//Input : strTime (string) , format (int)
//return : bool
//Desc : Returns true if time is valid else false.
/*
	format_code		format
		0			hh:mm:ss		
*/
function isValidTime(strTime,format)
{	

	strTime = trim(strTime);

	var hh,mm,ss ;
	

	//extract hours , mins and secs from given time string.
	switch(format)
	{
		case 0:
			pattern = '^[0-9]{2}\\'+CONFIG['time_seperator']+'[0-9]{2}\\'+CONFIG['time_seperator']+'[0-9]{2}$';
			timePatt = new RegExp(pattern,'');
			
			if(timePatt.test(strTime))
			{
				arrTime = strTime.split(CONFIG['time_seperator']); 
				hh = arrTime[1];
				mm = arrTime[0];
				ss = arrTime[2];
			}
			else
			{
				return false;
			}
			break;		

		default :
			return false;
			
	}



	if(hh >= 24 || mm >= 60 || ss >=60 )
	{
		return false;
	}

	return true;

}



function validate( objForm , arrElemId , arrCode , arrRefValue , arrMsg )
{
	var total = arrElemId.length ;

	for(var i=0 ; i < total ; i++)
	{
		id = arrElemId[i];
		code = arrCode[i];
		msg = arrMsg[i];
		refValue = arrRefValue[i];
		result = true;

		switch(code)
		{
			case 'IS_EMPTY':
				value = document.getElementById(id).value ;
				if(isEmpty(value) === true)
				{
					result = false;
				}
				break;


			case 'ALPHA':
				value = document.getElementById(id).value ;	
				// Bypass validation for empty values.
				if(!isEmpty(value))
				{						
					result = isAlpha(value,false);	
				}
				break;


			case 'ALPHA_S':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = isAlpha(value,true);	
				}
				break;


			case 'NUM':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = isNum(value,false);
				}
				break;


			case 'NUM_S':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = isNum(value,true);
				}
				break;


			case 'ALPHANUM':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = isAlphaNum(value,false);
				}
				break;


			case 'ALPHANUM_S':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = isAlphaNum(value,true);
				}
				break;


			case 'INT':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = isInt(value);
				}
				break;


			case 'FLOAT':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = isFloat(value);
				}
				break;

			
			case 'EMAIL':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = isValidEmail(value);
				}
				break;


			case 'MOBILE':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = /^0?[98][0-9]{9}$/.test(value);
				}
				break;

			
			case 'REGEX':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = refValue.test(value);
				}
				break;


			case 'NREGEX':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = !refValue.test(value);
				}
				break;


			case 'VALUE_SET':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = inArray(value,refValue);
				}
				break;


			case 'N_VALUE_SET':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{	
					result = !inArray(value,refValue);
				}
				break;


			case 'GREATER':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{
					if(value > refValue)
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;


			case 'LESSER':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{
					if(value < refValue)
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;


			case 'EQUAL':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{
					if(value == refValue)
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;


			case 'NEQUAL':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{
					if(value != refValue)
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;


			case 'BETWEEN':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{
					arrLimit = refValue.split('#');
					min = arrLimit[0];
					max = arrLimit[1];

					if(min <= value && value <= max )
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;


			case 'NBETWEEN':
				value = document.getElementById(id).value ;
				if(!isEmpty(value))
				{
					arrLimit = refValue.split('#');
					min = arrLimit[0];
					max = arrLimit[1];

					if(min <= value && value <= max )
					{
						result = false;
					}
					else
					{
						result = true;
					}
				}
				break;


			case 'LENGTH_GREATER':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{
					txtLen = value.length;
					if(txtLen > refValue)
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;


			case 'LENGTH_LESSER':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{
					txtLen = value.length;

					if(txtLen < refValue)
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;


			case 'LENGTH_EQUAL':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{
					txtLen = value.length;

					if(txtLen == refValue)
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;


			case 'LENGTH_NEQUAL':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{
					txtLen = value.length;

					if(txtLen != refValue)
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;


			case 'DATE'://assuming mm-dd-yyyy fmt.
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{					
					if(isValidDate(value,0))
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;


			case 'DATE_GREATER':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{					
					objDate1 = getObjDate(value,0);
					objDate2 = getObjDate(refValue,0);

					if(!objDate1 || !objDate2)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						
						if(timestamp1 > timestamp2)
						{
							result = true;
						}
						else
						{
							result = false;
						}
					}
				}
				break;


			case 'DATE_LESSER':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{					
					objDate1 = getObjDate(value,0);
					objDate2 = getObjDate(refValue,0);

					if(!objDate1 || !objDate2)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						
						if(timestamp1 < timestamp2)
						{
							result = true;
						}
						else
						{
							result = false;
						}
					}
				}
				break;


			case 'DATE_EQUAL':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{					
					objDate1 = getObjDate(value,0);
					objDate2 = getObjDate(refValue,0);

					if(!objDate1 || !objDate2)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						
						if(timestamp1 == timestamp2)
						{
							result = true;
						}
						else
						{
							result = false;
						}
					}
				}
				break;


			case 'DATE_NEQUAL':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{					
					objDate1 = getObjDate(value,0);
					objDate2 = getObjDate(refValue,0);

					if(!objDate1 || !objDate2)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						
						if(timestamp1 != timestamp2)
						{
							result = true;
						}
						else
						{
							result = false;
						}
					}
				}
				break;


			case 'DATE_BETWEEN':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{
					arrLimit = refValue.split('#');
					minDate = arrLimit[0];
					maxDate = arrLimit[1];

					
					objDate1 = getObjDate(value,0);
					objDate2 = getObjDate(minDate,0);
					objDate3 = getObjDate(maxDate,0);

					if(!objDate1 || !objDate2 || !objDate3)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						timestamp3 = objDate3.valueOf();
						
						if(timestamp2 <= timestamp1 && timestamp1 <= timestamp3 )
						{
							result = true;
						}
						else
						{
							result = false;
						}
					}
				}
				break;


			case 'DATE_NBETWEEN':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{
					arrLimit = refValue.split('#');
					minDate = arrLimit[0];
					maxDate = arrLimit[1];

					
					objDate1 = getObjDate(value,0);
					objDate2 = getObjDate(minDate,0);
					objDate3 = getObjDate(maxDate,0);

					if(!objDate1 || !objDate2 || !objDate3)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						timestamp3 = objDate3.valueOf();
						
						if(timestamp2 <= timestamp1 && timestamp1 <= timestamp3 )
						{
							result = false;
						}
						else
						{
							result = true;
						}
					}
				}
				break;



			case 'TIME'://assuming hh:mm:ss fmt.
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{					
					if(isValidTime(value,0))
					{
						result = true;
					}
					else
					{
						result = false;
					}
				}
				break;



			case 'TIME_GREATER':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{					
					objDate1 = getObjTime(value,0);
					objDate2 = getObjTime(refValue,0);

					if(!objDate1 || !objDate2)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						
						if(timestamp1 > timestamp2)
						{
							result = true;
						}
						else
						{
							result = false;
						}
					}
				}
				break;


			case 'TIME_LESSER':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{					
					objDate1 = getObjTime(value,0);
					objDate2 = getObjTime(refValue,0);

					if(!objDate1 || !objDate2)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						
						if(timestamp1 < timestamp2)
						{
							result = true;
						}
						else
						{
							result = false;
						}
					}
				}
				break;


			case 'TIME_EQUAL':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{					
					objDate1 = getObjTime(value,0);
					objDate2 = getObjTime(refValue,0);

					if(!objDate1 || !objDate2)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						
						if(timestamp1 == timestamp2)
						{
							result = true;
						}
						else
						{
							result = false;
						}
					}
				}
				break;


			case 'TIME_NEQUAL':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{					
					objDate1 = getObjTime(value,0);
					objDate2 = getObjTime(refValue,0);

					if(!objDate1 || !objDate2)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						
						if(timestamp1 != timestamp2)
						{
							result = true;
						}
						else
						{
							result = false;
						}
					}
				}
				break;


			case 'TIME_BETWEEN':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{
					arrLimit = refValue.split('#');
					minDate = arrLimit[0];
					maxDate = arrLimit[1];

					
					objDate1 = getObjTime(value,0);
					objDate2 = getObjTime(minDate,0);
					objDate3 = getObjTime(maxDate,0);

					if(!objDate1 || !objDate2 || !objDate3)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						timestamp3 = objDate3.valueOf();
						
						if(timestamp2 <= timestamp1 && timestamp1 <= timestamp3 )
						{
							result = true;
						}
						else
						{
							result = false;
						}
					}
				}
				break;



			case 'TIME_NBETWEEN':
				value = document.getElementById(id).value ;
				
				if(!isEmpty(value))
				{
					arrLimit = refValue.split('#');
					minDate = arrLimit[0];
					maxDate = arrLimit[1];

					
					objDate1 = getObjTime(value,0);
					objDate2 = getObjTime(minDate,0);
					objDate3 = getObjTime(maxDate,0);

					if(!objDate1 || !objDate2 || !objDate3)
					{
						result = false;
					}
					else
					{

						timestamp1 = objDate1.valueOf();
						timestamp2 = objDate2.valueOf();
						timestamp3 = objDate3.valueOf();
						
						if(timestamp2 <= timestamp1 && timestamp1 <= timestamp3 )
						{
							result = false;
						}
						else
						{
							result = true;
						}
					}
				}
				break;




			
			case 'RADIO_BUTTON':
				result = IsRadioChecked(id);												
				break;


			case 'CHKBOX':
				result = IsCheckBoxChecked(id);												
				break;			
				

			case 'SELECTBOX':
				result = IsSelectBoxChecked(id);												
				break;		
			
			
				
			default:
				result = false;
				break;
				
				
		} // end of switch.


		if(result === false)
		{
			alert(msg);
			document.getElementById(id).focus();
			return false;
			break;
		}

	}//end of for loop

	return true;
}




//************************************************************************************************
//************************************************************************************************

//Input : arrData (array) 
//Return : int
//Desc : returns the size of an input associative or nonassociative array. 
function getArraySize(arrData) 
{
	var l = 0;
	
	for (var k in arrData) 
	{
		l++;
	}
	return l;
}


//Input : arrData (array) , search (mixed)
//Return : bool
//Desc : returns true if search element is present in array else returns false. 
function inArray(search,arrData) 
{	
	
	for (var k in arrData) 
	{
		if(search == arrData[k])
		{
			return k;
		}
	}

	return false;
}


//Input : arrData (array) , search (mixed)
//Return : array
//Desc : returns array key corresponding to value that matches search element.
function getArrayKeys(arrData,search) 
{
	var j = 0 ;
	var key = Array();
	for (var k in arrData) 
	{
		if(search == arrData[k])
		{
			key[j++] = k;
		}
	}

	return key;
}



function generateRandomNumber()
{
	num = Math.random();
	alert(num);
}


/*
function checkCreditCardDetail(ccNum,)
{ 
	var flag = true;
	

	if(form.cc_number.value=='')
	{
		alert("Please enter  Credit Card Number");
	    form.cc_number.focus();
		flag = false;
	    return false;
	}
	else if(!checkInt(form.cc_number.value))
	{		
		alert("Please enter  valid CreditCard Number");
	    form.cc_number.focus();
		flag = false;
	    return false;
	}
	else if(form.cc_number.value.length >=21)
	{		
		alert("Please enter  valid CreditCard Number");
	    form.cc_number.focus();
		flag = false;
	    return false;
	}

	if(form.cc_cvv_number.value=='')
	{
		alert("Please enter CVV Number ");
	    form.cc_cvv_number.focus();
		flag = false;
	    return false;
	}
	else if(!checkInt(form.cc_cvv_number.value))
	{	
		alert("Please enter valid CVV Number ");
	    form.cc_cvv_number.focus();
		flag = false;
	    return false;
	}
	else if(form.cc_cvv_number.value.length !=3 && form.cc_cvv_number.value.length !=4  )
	{		
		alert("Please enter  valid CVV Number");
	    form.cc_cvv_number.focus();
		flag = false;
	    return false;
	}

	var	date = new Date();
	date.setFullYear(form.cc_expiry_year.value,(form.cc_expiry_month.value-1),1)
	var today = new Date()

	if (date<today)
	{
	  	alert("expiry date invalid.");
		flag = false;
		return false;
	}
	if(form.key.value =="")
	{
		alert("Text code cannot be blank.");
		document.frm.key.focus();
		flag = false;
		return false;		
	}
	
	if(flag == true)
	{
		document.getElementById('CO1').style.display = "none";
		document.getElementById('CO2').style.display = "block";	
		form.submit();
		return true;
	}  
}
*/
