function validateForm() {
	var inputErrors = validateInput();
	
	if( inputErrors.length == 0 ) {
		document.frmRegistration.submit();
	} else {
		var message = 'The values you have entered contains ' + inputErrors.length + ' error(s):\n\n';
		for( i=0; i < inputErrors.length; i++ ) {
			message += inputErrors[i] + '\n';
		}
		alert( message );
		return false;
	}
}
	
	function formatStudentId() {
		var studentIdCtrl = document.getElementById( 'lead_id' );
		var studentId = studentIdCtrl.value;
		if( studentId.substring( 0, 1 ) != '@' ) {
			studentId = '@'+studentId;
		}
		if( studentId.length > 9 ) {
			studentId = studentId.substring( 0, 9 );
		}
		studentIdCtrl.value = studentId;
	}
	
	function formatPhone() {
		var phone = document.getElementById( 'lead_phone' );
		var number = phone.value;
		var newNumber = '';
		for( var i=0; i <= number.length; ++i ) {
			if( !isNaN( number.charAt(i) ) && number.charAt(i) != ' ' ) {
				newNumber += number.charAt( i );
			}
		}	
		phone.value = newNumber;
	}
		
	function validateInput() {
		var elements = document.frmRegistration.elements;
		var errors = new Array();
		var regExp = new RegExp();
		var errIndex = 0;
		for( i=0; i < elements.length; i++ ) {
			var e = elements[i];
			var ruleId = 'r_' + e.id;
			var regExpControl = document.getElementById( ruleId );
			if( regExpControl != null ) {
				var pattern = regExpControl.value;
				if( pattern != null && pattern.length > 2 ) {
					regExp.compile( pattern );
					if( !regExp.exec( e.value ) ) {
						e.style.border = "1px solid red";
						var explainId = 'n_' + e.id;
						var explainControl = document.getElementById( explainId );
						if( explainControl != null ) {
							errors[errIndex++] = explainControl.value + ' is invalid.';
						}							
					} else {
						e.style.border = "";
					}
				} //end if pattern is not available				
			} //end if pattern control does not exist
		} //end for
		return errors;
	}
	
	function checkField( field ) {
		
	}
	
	function getPropName( name, len ) {
		name = name.substring( len, name.length );
		return name.substring( 0,1 ).toUpperCase() + name.substring( 1, name.length );
	}