function rightTrim() {
   	return this.replace(/\s+$/gi, "");
}

function leftTrim() {
	return this.replace(/^\s*/gi, "");
}
	
String.prototype.rightTrim = rightTrim;
String.prototype.leftTrim = leftTrim;
	
function valForm(IsNew) {

	var strFirstName = document.form1.firstname.value;
	var strLastName = document.form1.lastname.value;
	var strDegree = document.form1.degree.value;
	var strTitle = document.form1.title.value;
	// Committee is optional
	var strSpeciality = document.form1.speciality.value;

	// Affiliation Information is optional

	var strAffiliation = document.form1.affiliation.value;
	var strDept = document.form1.department.value;
	var strAddress1 = document.form1.address1.value;	
	var strCity = document.form1.city.value;	
	// State_Province is optional
	var strCountry = document.form1.country.value;	
	var strZipMailCode = document.form1.zip_mail_code.value;	
	var strPhone = document.form1.phone.value;	
	// Fax is optional
	var strEMail = document.form1.email.value;	
	// Web Address is optional

	strFirstName = strFirstName.rightTrim().leftTrim();
	strLastName = strLastName.rightTrim().leftTrim();
	strDegree = strDegree.rightTrim().leftTrim();
	strTitle = strTitle.rightTrim().leftTrim();
	strSpeciality = strSpeciality.rightTrim().leftTrim();	
	
	strAffiliation = strAffiliation.rightTrim().leftTrim();
	strDept = strDept.rightTrim().leftTrim();
	strAddress1 = strAddress1.rightTrim().leftTrim();
	strCity = strCity.rightTrim().leftTrim();
	strCountry = strCountry.rightTrim().leftTrim();
	strZipMailCode = strZipMailCode.rightTrim().leftTrim();
	strPhone = strPhone.rightTrim().leftTrim();	
	strEMail = strEMail.rightTrim().leftTrim();

	if(strTitle == ""){
		alert("Please select your title.");
		document.form1.title.focus();
		return false;
	}

	if(strFirstName == ""){
		alert("Please enter your first name.");
		document.form1.firstname.focus();
		return false;
	}
		
	if(strLastName == ""){
		alert("Please enter your last name.");
		document.form1.lastname.focus();
		return false;
	}

	if(strDegree == ""){
		alert("Please enter your degree(s).");
		document.form1.degree.focus();
		return false;
	}
		
	// Committee is optional

	if(strSpeciality == ""){
		alert("Please enter your medical speciality or profession.");
		document.form1.speciality.focus();
		return false;
	}

	if(strEMail == ""){
		alert("Please enter your email.");
		document.form1.email.focus();
		return false;
	}
	
	if (!emailCheck(strEMail)) {
		document.form1.email.focus();
		return false;
	}

	if(IsNew == "yes"){

		var strPassword = document.form1.password.value;
		strPassword = strPassword.rightTrim().leftTrim();
		
		if(strPassword == ""){
			alert("Please enter your password. It is required for login purposes.");
			document.form1.password.focus();
			return false;
		}
	}

	// Affiliation information is optional

	if(strAffiliation == ""){
		alert("Please enter your affiliation.");
		document.form1.affiliation.focus();
		return false;
	}

	if(strDept == ""){
		alert("Please enter your department.");
		document.form1.department.focus();
		return false;
	}
	
	if(strAddress1 == ""){
		alert("Please enter your address.");
		document.form1.address1.focus();
		return false;
	}

	if(strCity == ""){
		alert("Please enter your city.");
		document.form1.city.focus();
		return false;
	}

	// State_province is optional

	if(strCountry == ""){
		alert("Please enter your country.");
		document.form1.country.focus();
		return false;
	}

	if(strZipMailCode == ""){
		alert("Please enter your zip/mail code.");
		document.form1.zip_mail_code.focus();
		return false;
	}

	if(strPhone == ""){
		alert("Please enter your phone.");
		document.form1.phone.focus();
		return false;
	}

	// Fax is optional

	// Web is optional	
	
	var OptionIsChecked = false;
	for (var i = 0; i < document.form1.research.length; i++) {
		if (document.form1.research[i].checked) {
			OptionIsChecked = true;
		}
	}

	if (OptionIsChecked == false ) {
		alert("Please specify which area of cGVHD research are you working in?.");
		document.form1.research[0].focus();
		return false;
	}
	
	OptionIsChecked = false;
	for (i = 0; i < document.form1.workingGroup.length; i++) {
		if (document.form1.workingGroup[i].checked) {
			OptionIsChecked = true;
		}
	}

	if (OptionIsChecked == false ) {
		alert("Please specify which cGVHD working group are you interested in.");
		document.form1.workingGroup[0].focus();
		return false;
	}

	return true;
}