function isValid(pattern, str) {
	return pattern.test(str);
}

function validate() {
	var errMsg = "";
	var objFocus;
	var emailExp = /^[^\=\|\~\'\+\"!@#$%\^\&\*()\\\/\[\]{}\?<>:\;\-,]+\@[^\'\+\"!@#$%\^\&\*()\\\/\[\]{}\?<>:\;\-,]+\.[^\'\+\"!@#$%\^\&\*()\\\/\[\]{}\?<>:\;\-,]+$/; 
	var charExp = /^[\sA-Za-z\-\s]+$/;
	var spaceExp = /^\s+$/;
	var spaceInExp = /\s+/;
	var objForm = document.ContactUs
	
	if(objForm.company.value == "" || isValid(spaceExp, objForm.company.value)) {
			errMsg += "Please fill in company\n";
			objFocus = (objFocus)? objFocus : objForm.company;
	}
	if(objForm.LastName.value == "" || isValid(spaceExp, objForm.LastName.value)) {
			errMsg += "Please fill in LastName\n";
			objFocus = (objFocus)? objFocus : objForm.LastName;
	}
	
	if(objForm.eMail.value == "" || !isValid(emailExp, objForm.eMail.value)) {
			errMsg += "Please fill in a proper E-Mail address\n";
			objFocus = (objFocus)? objFocus : objForm.eMail;
	} else {
		if( isValid(spaceInExp, objForm.eMail.value) ) {
				errMsg += "Spaces are not allowed in E-mail adresses. Please re-enter.\n";
				objFocus = (objFocus)? objFocus : objForm.eMail;
		}
	}

	if(objForm.country.selectedIndex == "" ) {
			errMsg += "Please select cCountry\n";
			objFocus = (objFocus)? objFocus : objForm.country;
	}
	
	if(objForm.Phone.value == "" || isValid(spaceExp, objForm.Phone.value)) {
			errMsg += "Please fill in Phone number\n";
			objFocus = (objFocus)? objFocus : objForm.Phone;
	}
	
//	if(objForm.selSYear && objForm.selEYear) {
//		if(!chkDate())
//			{
//				errMsg += "End date should be greater than start date!\n";
//				if(!objFocus)
//					objFocus = objForm.selEYear;
//			}
//	}
	if (errMsg != "") {
		objFocus.focus();
		alert(errMsg);
		return false;		
	} else {
		if(objForm.selSYear && objForm.selEYear) {
				yearVal = objForm.selSYear.options[objForm.selSYear.options.selectedIndex].value;
				monthVal = objForm.selSMonth.options[objForm.selSMonth.options.selectedIndex].value;
				dateVal = objForm.selSDate.options[objForm.selSDate.options.selectedIndex].value;
				objForm.hidStartDate.value = monthVal+"/"+dateVal+"/"+yearVal;
				yearVal = objForm.selEYear.options[objForm.selEYear.options.selectedIndex].value;
				monthVal = objForm.selEMonth.options[objForm.selEMonth.options.selectedIndex].value;
				dateVal = objForm.selEDate.options[objForm.selEDate.options.selectedIndex].value;
				objForm.hidEndDate.value = monthVal+"/"+dateVal+"/"+yearVal;
		}
		return true;
	}
}
