var cmsIsFocusSet = false;
var cmsValidationMessage= "";
function getListText(listItem) {
	return listItem.options[listItem.selectedIndex].text
}
function cmsCheckTextField(fieldLabel, fieldToCheck) {
	if (cmsTrimBlanks ( fieldToCheck.value, "" ) == "") {
		cmsValidationMessage= cmsValidationMessage+ "  * " + fieldLabel + "\n";
		if (!cmsIsFocusSet) {
			fieldToCheck.focus();
			cmsIsFocusSet = true;
		}
	}  
	return true
}
function cmsCheckSelectField(fieldLabel, fieldToCheck) {
	var aStr = cmsTrimBlanks ( getListText(fieldToCheck), "" );
	if (aStr == "" | aStr == "<SELECT>" | aStr == "<--SELECT-->") {
		cmsValidationMessage= cmsValidationMessage+ "  * " + fieldLabel + "\n";
		if (!cmsIsFocusSet) {
			fieldToCheck.focus();
			cmsIsFocusSet = true;
		}
	}  
	return true
}
function cmsCheckMandatoryList(fieldLabel, fieldToCheck) {
	if ( fieldToCheck.selectedIndex == 0 ||  fieldToCheck.selectedIndex == -1 ) {
		cmsValidationMessage= cmsValidationMessage+ "  * " + fieldLabel + "\n";
		if (!cmsIsFocusSet) {
			fieldToCheck.focus();
			cmsIsFocusSet = true;
		}
	}
	return true
}
function cmsCheckMultiSelectField(fieldLabel, fieldToCheck) {
	var selected = false;
	for (var i = 0;i < fieldToCheck.length; i++) {
		if (fieldToCheck[i].selected) {
			if (fieldToCheck[i].text != "") { 
				selected = true;
			}
		}
	}
	if (selected == false ) {
		cmsValidationMessage= cmsValidationMessage+ "  * " + fieldLabel + "\n";
		if (!cmsIsFocusSet) {
			fieldToCheck.focus();
			cmsIsFocusSet = true;
		}
	}  
	return true
}
function cmsRadioButtonChecked(fieldLabel, fieldToCheck) {
	var checked = false;
	for (var i = 0;i < fieldToCheck.length; i++) {
		if (fieldToCheck[i].checked) {
			checked = true;
		}
	}
	if (checked == false ) {
		cmsValidationMessage= cmsValidationMessage+ "  * " + fieldLabel + "\n";
		if (!cmsIsFocusSet) {
			fieldToCheck.focus();
			cmsIsFocusSet = true;
		}
     }
}
function cmsTrimBlanks ( theString, repChar ) {
//this function replaces the spaces in a string with the provided character
	var trimString="";
	var theChar;
	for ( i = 0; i < theString.length; i++) {
		theChar=theString.substring ( i, i+1);
		if ( theChar == " ") {
			trimString += repChar
		} else {
			trimString+=theString.substring ( i, i+1);
		}
	}
	return (trimString);
}
function cmsValidationResults() {
	var form = document.cmsForm;
	var cmsSubmitted = (form.submitted.value == "Y");
	//Start formatting our messages
	if (cmsValidationMessage!== "") {
		cmsValidationMessage= "The following fields are required and must be completed before submitting this form:" + "\n" + cmsValidationMessage;
	}		
	// Display the validation results
	
	if (cmsSubmitted) {	
		alert ('You have already submitted this document. You cannot resubmit it. Use you browser refresh button before resubmitting the document');
		return false;
	} else if  (cmsValidationMessage !== "") {
		alert(cmsValidationMessage);
		return false;
	} else {
		form.submitted.value = "Y";
		return true;
	}
}

function cmsSubmitIt() 
{
	var ok = true;
	var form = document.cmsForm;
	cmsValidationMessage = "";
	cmsCheckTextField("Name",form.str_field1);
	cmsCheckTextField("Job title",form.str_field2);
	cmsCheckTextField("Phone No.",form.str_field3);
	cmsCheckTextField("email",form.str_field4);
	cmsCheckTextField("RCVS Pin/Registration Number",form.str_field5);
	if (cmsValidationResults()) {form.submit();}
}
