function validateContactUs(frm) {
	var i = 0;
	var lang = document.contactus.lang.value;
	var errormsg = "";
	
	switch (lang) {
		case "chs":
			errormsg = "表单出现以下错误：\n\n";
			break;
		case "cht":
			errormsg = "表單出現以下錯誤：\n\n";
			break;
		default:
			errormsg = "The following error(s) has occured in the form:\n\n";
			break;
	}

	if (document.contactus.name.value=="")
		switch (lang) {
			case "chs":
				errormsg += (++i) + "、请填写您的姓名。\n";
				break;
			case "cht":
				errormsg += (++i) + "、請填寫您的姓名。\n";
				break;
			default:
				errormsg += (++i) + ". Please enter your name.\n";
				break;
		}

	if (document.contactus.email.value=="") {
		switch (lang) {
			case "chs":
				errormsg += (++i) + "、请填写您的Email地址。\n";
				break;
			case "cht":
				errormsg += (++i) + "、請填寫您的Email地址。\n";
				break;
			default:
				errormsg += (++i) + ". Please enter your email address.\n";
				break;
		}
	} else {
		if (!validEmail(document.contactus.email.value))
			switch (lang) {
				case "chs":
					errormsg += (++i) + "、请填写有效的Email地址。\n";
					break;
				case "cht":
					errormsg += (++i) + "、請填寫有效的Email地址。\n";
					break;
				default:
					errormsg += (++i) + ". Please enter a valid email address.\n";
					break;
			}
	}

	if (document.contactus.contact.value!="") {
		if (!isTel(document.contactus.contact.value))
			switch (lang) {
				case "chs":
					errormsg += (++i) + "、请填写有效的联系号码。\n";
					break;
				case "cht":
					errormsg += (++i) + "、請填寫有效的連絡號碼。\n";
					break;
				default:
					errormsg += (++i) + ". Please enter a valid contact number.\n";
					break;
			}
	}

	if (document.contactus.purpose.options[document.contactus.purpose.selectedIndex].value=="")
		switch (lang) {
			case "chs":
				errormsg += (++i) + "、请选择您的咨询目的。\n";
				break;
			case "cht":
				errormsg += (++i) + "、請選擇您的咨詢目的。\n";
				break;
			default:
				errormsg += (++i) + ". Please select your enquiry purpose.\n";
				break;
		}	
		
	if (document.contactus.enquiry.value=="")
		switch (lang) {
			case "chs":
				errormsg += (++i) + "、请填写您的咨询内容。\n";
				break;
			case "cht":
				errormsg += (++i) + "、請填寫您的咨詢內容。\n";
				break;
			default:
				errormsg += (++i) + ". Please enter your enquiry content.\n";
				break;
		}	

	if (document.contactus.vercode.value=="")
		switch (lang) {
			case "chs":
				errormsg += (++i) + "、请输入验证码。\n";
				break;
			case "cht":
				errormsg += (++i) + "、請輸入驗證碼。\n";
				break;
			default:
				errormsg += (++i) + ". Please enter the verification code.\n";
				break;
		}	
		
	if (i!=0) {
		alert(errormsg);
		return false;
	}  else {
		switch (lang) {
			case "chs":
				alert("您的咨询内容即将被提交。这个过程可能会需要一点时间。您无需再重新提交。");
				break;
			case "cht":
				alert("您的咨詢内容即將被提交。這個過程可能會需要一點時間。您無需再重新提交。");
				break;
			default:
				alert("Your enquiry will be submitted.  This process may take some time.  You do not need to resubmit again.");
				break;
		}
		return true;
	}
}

// Validate if an input is of the correct Date format
function isdate(strDate){
   var strSeparator = "/"; //¨¨??¨²¡¤???¡¤?
   var strDateArray;
   var intYear;
   var intMonth;
   var intDay;
   var boolLeapYear;
   strDateArray = strDate.split(strSeparator);
   if(strDateArray.length!=3) return false;
   intYear = parseInt(strDateArray[2],10);
   intMonth = parseInt(strDateArray[1],10);
   intDay = parseInt(strDateArray[0],10);
   
   if(isNaN(intYear)||isNaN(intMonth)||isNaN(intDay)) return false;
   if(intMonth>12||intMonth<1) return false;
   if((intMonth==1||intMonth==3||intMonth==5||intMonth==7||intMonth==8||intMonth==10||intMonth==12)&&(intDay>31||intDay<1)) return false;
   if((intMonth==4||intMonth==6||intMonth==9||intMonth==11)&&(intDay>30||intDay<1)) return false;
   if(intMonth==2){
      if(intDay<1) return false;
      boolLeapYear = false;
      if((intYear%100)==0){
         if((intYear%400)==0) boolLeapYear = true;
      }
      else{
         if((intYear%4)==0) boolLeapYear = true;
      }
      if(boolLeapYear){
         if(intDay>29) return false;
      }
      else{
         if(intDay>28) return false;
      }
   }
   return true;
}

// Check if it is a Valid 6-digit Number
       function ValidDM(str) {
         var num="0123456789";
        for(i=0;i<6;i++)if(num.indexOf(str.charAt(i))==-1)return(false);
        return true;
         }

// Check if it is a Valid Number
       function isNum(str) {
        var num="0123456789";
		var str1 = str;
        for(i=0;i<str1.length;i++)if(num.indexOf(str1.charAt(i))==-1)return(false);
        return true;
       }

// Check if it is a valid tel number
       function isTel(str) {
        var num="0123456789+- ()";
		var str1 = str;
        for(i=0;i<str1.length;i++)if(num.indexOf(str1.charAt(i))==-1)return(false);
        return true;
       }

// Check if it is a valid email
function validEmail(email) {
	invalidChars = " /:,;";
	if (email == "") {
		return false;
	}
	for (i=0; i<invalidChars.length; i++) {
		badChar=invalidChars.charAt(i);
		if(email.indexOf(badChar,0) > -1) {
			return false;
		}
	}
	atPos = email.indexOf("@", 1);
	if (atPos == -1) {
		return false;
	}
	periodPos=email.indexOf(".", atPos);
	if (periodPos==-1){
		return false;
	}
	if (periodPos+3 > email.length) {
		return false;
	}
	if (email.charAt(email.length-1)==".") {
		return false;
	}
	return true;
}

