	var spacer="         -";
	function setfocus(objField){
		blnflag=false;
		objField.focus();
		if(objField.type!="select-one")
			objField.select();
		
	}
	function ValidDate(objFieldValue,date_format){
		var str_date=objFieldValue;			
		if(str_date=="")
			return "";
		var i,j;		
		var RE_NUM = /^\-?\d+$/;
		var NUM_CENTYEAR = 30;
		
		var arr_date = str_date.split('/');
		
		if (arr_date.length != 3) return spacer + " - Invalid date format: '" + str_date + "'.\n" + spacer + " - Format accepted is " + date_format + ".\n";
		i = date_format!="mm/dd/yyyy" ? 1 : 0;
		j = i > 0 ? 0 : 1;
		if (!arr_date[j]) return spacer + " - Invalid date format: '" + str_date + "'.\n" + spacer + " - No day of month value can be found.\n";
		if (!RE_NUM.exec(arr_date[j])) return spacer + " - Invalid day of month value: '" + arr_date[j] + "'.\n" + spacer + " - Allowed values are unsigned integers.\n";
		if (!arr_date[i]) return spacer + " - Invalid date format: '" + str_date + "'.\n" + spacer + " - No month value can be found.\n";
		if (!RE_NUM.exec(arr_date[i])) return spacer + " - Invalid month value: '" + arr_date[i] + "'.\n" + spacer + " - Allowed values are unsigned integers.\n";
		if (!arr_date[2]) return spacer + " - Invalid date format: '" + str_date + "'.\n" + spacer + " - No year value can be found.\n";
		if (!RE_NUM.exec(arr_date[2])) return spacer + " - Invalid year value: '" + arr_date[2] + "'.\n" + spacer + " - Allowed values are unsigned integers.\n";
	
		var dt_date = new Date();
		dt_date.setDate(1);
	
		if (arr_date[i] < 1 || arr_date[i] > 12) return spacer + " - Invalid month value: '" + arr_date[i] + "'.\n" + spacer + " - Allowed range is 01-12.\n";
		dt_date.setMonth(arr_date[i]-1);
		 
		if (arr_date[2] < 100) arr_date[2] = Number(arr_date[2]) + (arr_date[2] < NUM_CENTYEAR ? 2000 : 1900);
		dt_date.setFullYear(arr_date[2]);
	
		var dt_numdays = new Date(arr_date[2], arr_date[i], 0);
		dt_date.setDate(arr_date[j]);
		if (dt_date.getMonth() != (arr_date[i]-1)) return spacer + " - Invalid day of month value: '" + arr_date[j] + "'.\n" + spacer + " - Allowed range is 01-"+dt_numdays.getDate()+".\n";
		//return (dt_date)
		return "";
	}
	function ValidEmail(objFieldValue){		
	
		var validFormatRegExp=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
		
		var isValid=validFormatRegExp.test(objFieldValue);
		
		return isValid;		
			
	}
	function ValidInteger(objFieldValue){
	
	  var validFormatRegExp = /^((\+|-)\d)?\d*$/;
	
	  var isValid = validFormatRegExp.test(objFieldValue);
	
	  return isValid;
	}
	function ValidFloat(objFieldValue){

	  var validFormatRegExp = /^\d*(\.\d+)?$/;
	
	  var isValid = validFormatRegExp.test(objFieldValue);
	
	  return isValid;
	
	}	
	function ValidLength(objFieldValue,objMaxLength){

	 	if(objFieldValue.length > objMaxLength)
			 return  false;
		else
			 return true;		
	  
	}	
	function validate_me(objField,error_msg,checkingfor)
	{
		
		error_msg= spacer + error_msg;
		
		if(checkingfor!="checkboxrequired")
			var objFieldValue=trim(objField.value);
		
		if(checkingfor=="" || checkingfor==0){ 
			if(objFieldValue==checkingfor){		 
				if (blnflag){				
					setfocus(objField)
				}					
				return error_msg + "\n";
			}
			else
				return "";
		}		
		else if(checkingfor=="email"){
			if(objFieldValue=="")
				return "";
			if(ValidEmail(objFieldValue))
				  return ""; 	 	 
			else{
				if(blnflag){
					setfocus(objField)
			   }
			   return  error_msg + "\n";	
			}  			
		}
		else if(checkingfor=="integer")
		{
			if(ValidInteger(objFieldValue))
				  return ""; 	 	 
			else{
				if(blnflag){
					setfocus(objField)
			   }
			   return  error_msg + "\n";	
			}  			
		}
		else if(checkingfor=="float")
		{
			if(ValidFloat(objFieldValue))
				  return ""; 	 	 
			else{
				if(blnflag){
					setfocus(objField)
			   }
			   return  error_msg + "\n";	
			}  			
		}
		else if(checkingfor=="mm/dd/yyyy" || checkingfor=="dd/mm/yyyy")
		{	
			var date_msg = ValidDate(objFieldValue,checkingfor);  
			if(date_msg.length==0)
				  return ""; 	 	 
			else{
				if(blnflag){
					setfocus(objField)
			   }
			   return  error_msg +  "\n" + date_msg ;	
			}
		}
		else if(checkingfor=="checklength")
		{			
			if(objFieldValue.length==0)  return "";
			var objMaxLength=validate_me.arguments[3];			
			if(ValidLength(objFieldValue,objMaxLength)) 
				return "";				   	 	 
			else if(blnflag)
				setfocus(objField)			   
  		    return  error_msg + " : Current Length is - " + objFieldValue.length + " characters\n";	
		}	
		else if(checkingfor=="checkboxrequired")
		{
			for(var cnt=0;cnt < objField.length ; cnt++)
			{
				if(objField[cnt].checked)
					return "";					
			}
			if(blnflag)
				setfocus(objField[0])
				return  error_msg + "\n";	
		}
	}
function trim(str)
{

	var trimmedString = new String(str);

	if ((0 < str.length) && ((str.charCodeAt(0) <= 32) || (str.charCodeAt(str.length-1) <= 32)))
	{
		
		var startSlice = 0;
		var endSlice   = -1;


		for (var i = 0; i < str.length-1; i++)
		{
			if (str.charCodeAt(i) > 32)
			{
				startSlice = i;
				break;
			}
		}
		
		for (var i = str.length-1; startSlice <= i; i--)
		{
			if (str.charCodeAt(i) > 32)
			{
				endSlice = i;
				break;
			}
		}
		
		trimmedString = str.slice(startSlice, endSlice+1);
	}
	return trimmedString;
}
/*function setcombo(combo,val)
{
	for(var i=0;i<combo.options.length;++i){
		if(combo.options[i].value==val){
			combo.options[i].selected=true;
			return;
		}
	}
}
*/