function formValidation(){
	var errMsg ='';

	errMsg += chk_err('Recipient Name',document.theForm.textfield5.value,5000,false,false,false,false);
	errMsg += chk_err('Recipient Email',document.theForm.textfield.value,5000,false,false,false,true);
	errMsg += chk_err('Your Message',document.theForm.textfield2.value,5000,true,false,false,false);
	errMsg += chk_err('Your Name',document.theForm.textfield3.value,100,false,false,false,false);
	errMsg += chk_err('Your Email Address',document.theForm.textfield4.value,100,false,false,false,true);



	if (errMsg != '') {
		window.alert ('Sorry. There are problems with your given information.\nPlease recheck the following required fields and resubmit the form.\n\n' + errMsg);
		return false;
	}	
	else{
		var nameList = document.theForm.textfield5.value;
		var mailList = document.theForm.textfield.value;
		nameListArray = nameList.split(';');
		mailListArray = mailList.split(';');
		if (nameListArray.length != mailListArray.length && nameListArray.length>1){
			window.alert ('The name and e-mail address number of the recipents are incorrect\nPlease check it carefully !');
			return false;
		}
		else{
			return true;	
		}
	}	

}

function chk_err(DataName,Data,MaxLength,AllowNull,chkNumeric,chkCharacter,chkMail){
	var outMsg='';
	var valid='';

	if (Data.length == 0 && AllowNull==false){


		outMsg += '- ' + DataName + ' cannot leave blank.\n';
	
	}
	else {

		if (Data.length > MaxLength){
			outMsg += '- ' + DataName + ' Exceed ' + MaxLength + ' Characters. ' + '[now is ' + Data.length + 'characters] \n' ;
		}

	}	
	if (chkNumeric){

		valid = '0123456789';
		for(i=0;i<Data.length;i++) {
			if (valid.indexOf(Data.charAt(i))==-1) {
				outMsg += '- ' + DataName + ' does not allow non-numeric input.\n';
				break;
			}
		}
	}
	
	if (chkCharacter){

		valid = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
		for(i=0;i<Data.length;i++) {
			if (valid.indexOf(Data.charAt(i))==-1) {
				outMsg += '- ' + DataName + ' does not allow non-english letters or non-numeric input.\n';
				break;
			}
		}
	}	
	if (chkMail){
		if ((Data.indexOf('@')==-1 || Data.indexOf('.')==-1) && Data.length>0) {
			outMsg += '- ' + DataName + ' is not a valid email address.\n';
		}
	}
	
	return outMsg;

}


function submitForm() {
	if (formValidation()) {
		document.theForm.submit();	
	}	

}
function makeMsg(str) {
	var oStr='';
	var openTab=0;
	for (var i=0; i<str.length; i++) {
		if (str.substring(i,i+1)=='<') {
			openTab++;
		}
		if (str.substring(i,i+1)=='>') {
			openTab--;
		}
		if (str.substring(i,i+1)=='\n' && openTab==0) {
			oStr+='<br>';
		} else {
			oStr+=str.substring(i,i+1);
		}
	}
	return oStr;
}


