//STOP ASSOCIATED REGISTERING AS CONSULTANT
function blockConsultant(appType) {

	if(document.getElementById('consult')) {

		var option = document.getElementById('consult');
	
	}
	
	var parentSelect = document.getElementById('job_position');
	
	if(appType.value == 'Associate' || appType.checked == true) {
		
		parentSelect.removeChild(option);
	
	} else {
		
		var newOption = document.createElement('option');
		var optionText = document.createTextNode('Consultant');
		newOption.appendChild(optionText, parentSelect);
		newOption.setAttribute('value', 'Consultant');
		newOption.setAttribute('id', 'consult');
		
		parentSelect.appendChild(newOption, parentSelect);
		
	}

}
//RESIZE COLUMNS TO MATCH
function columnResize() {
	var left=document.getElementById("leftcolumn");
	var right=document.getElementById("rightcolumn");
	var leftImage=left.getElementsByTagName("img");
	var rightImage=right.getElementsByTagName("img");
	var maxHeight="";
	
	//LEFT COLUMN IS LONGER THAN THE RIGHT
	if(left.offsetHeight>right.offsetHeight) {
		//FIND DIFFERENCE IN HEIGHT
		maxHeight=(left.offsetHeight-right.offsetHeight);
		//APPLY MARGIN TO FOOTER IMAGE
		rightImage[0].style.marginTop=maxHeight + "px";
	//RIGHT COLUMN IS LONGER THAN THE LEFT
	}else if(left.offsetHeight<right.offsetHeight){
		maxHeight=(right.offsetHeight-left.offsetHeight);
		leftImage[0].style.marginTop=maxHeight + "px";
	}
}

//CLEAR VALUES IN LOGIN BOXES
function clearValue() {
	var inputs = document.getElementsByTagName("input");
	for(var i=0; i<inputs.length; i++) {
		//ADD CLASS NAME OR ID OF ANY INPUTS THAT SHOULDNT EMPTY
		if(inputs[i].className=="login") {
			inputs[i].onfocus=function() {
				this.value="";
			}
		}
	}
}

function removeElement(section, idNumber) {
	var thiselement=section+'_description'+idNumber;
}



//JOIN FORM
function formDisplay() {
	var divs = document.getElementsByTagName("div");
	//LOOP THROUGH DIVS IF CLASS IS DONTSHOW THEN DISPLAY NONE
	for(var i=0; i<divs.length; i++) {
		if(divs[i].className=="dontshow") {
			divs[i].style.display="none";
		}
	}
	
	//FIND OLS ON THE PAGE
	var tabs = document.getElementsByTagName("ol");
	for(i=0; i<tabs.length; i++) {
		//FIND THE TABS MENU
		if(tabs[i].className=="tabs") {
			var links = tabs[i].getElementsByTagName("a");
			for(var x=0; x<links.length; x++) {
				
				//USERS CLICKS ON LINK IN MENU
				links[x].onclick=function() {
					//FIND WHICH BIT OF FORM TO SHOW
					var idAttribute = this.className;
					var textValue = this.firstChild.nodeValue;
					var divId="view"+idAttribute;
					
					//GET CURRENT TAB ACTIVE
					var activeTab=this.parentNode;
					//GET OTHER LIS IN LIST
					var list = this.parentNode.parentNode.getElementsByTagName('li');
					//RESET CLASS
					for(var x=0; x<list.length; x++) {
						list[x].className='';
					}
					//APPLY ACTIVE CLASS TO ACTIVE TAB
					activeTab.className='active';
					
					
					//HIDE UNWANTED DIVS
					for(var n=0; n<divs.length; n++) {
						if(divs[n].className=="dontshow") {
							divs[n].style.display="none";
						}
					}
					//HIDE FIRST DIV IF APPROPRIATE
					if(divId!="viewstep1") {
						document.getElementById("viewstep1").style.display="none";
					}
					//DISPLAY FORM ELEMENTS
					if(document.getElementById(divId)) {
						document.getElementById(divId).style.display="block";
				    }
					//STOPS THE TABS DISAPPEARING IF TABS ARE USED OTHER WISE GOES TO THE TOP OF THE FORM
					if((textValue=="Continue")||(textValue=="Back")) {
						return true;
					}else{
						return false;
					}
				}
			}
		}
	}
}

function addTraining() {
	//INCREMENT AMOUNT OF JOBS SHOWN
	var amount=document.getElementById("professional_value");
	var value=amount.value;
	amount.value=(Number(value)+1);
	var idNumber=(Number(value)+1);
	
	//FIND NUMBER OF LI TAGS IN TRAINING UL
	var ul=document.getElementById("professional");
	var lis = ul.getElementsByTagName("li");
	var lastLi=(lis.length-1);
	
	//CREATE LIS
	var liOne=document.createElement("li");
	var liTwo=document.createElement("li");
	var liFour=document.createElement("li");
	var liThree=document.createElement("li");
	
	//CREATE LABELS
	var labelOne=document.createElement("label");
	var labelOneContent=document.createTextNode("From");
	var labelTwo=document.createElement("label");
	var labelTwoContent=document.createTextNode("To");
	var labelFour=document.createElement("label");
	var labelFourContent=document.createTextNode("Supervising Member");
	var labelThree=document.createElement("label");
	var labelThreeContent=document.createTextNode("Description");
	
	//CREATE INPUTS
	var newFrom=document.createElement("input");
	var newTo=document.createElement("input");
	var supervisor=document.createElement("input");
	var newDescription=document.createElement("textarea");
	//var deleteImage=document.createElement("img");
	
	//ATTRIBUTES
	newDescription.setAttribute("rows", "5");
	newDescription.setAttribute("id", "professional_description"+idNumber);
	newDescription.setAttribute("name", "professional_description"+idNumber);
	labelThree.setAttribute("for", "professional_description"+idNumber);
	
	//deleteImage.setAttribute("src", "images/delete_button.gif");
	//deleteImage.setAttribute("alt", "Delete this");
	//deleteImage.setAttribute("onclick" , "removeElement('professional','"+idNumber+"');");
	
	supervisor.setAttribute("id", "professional_supervisor"+idNumber);
	supervisor.setAttribute("name", "professional_supervisor"+idNumber);
	labelFour.setAttribute("for", "professional_supervisor"+idNumber);
	
	newTo.setAttribute("id", "professional_to"+idNumber);
	newTo.setAttribute("name", "professional_to"+idNumber);
	newTo.setAttribute('onblur', 'return validateDate(this.value);');
	labelTwo.setAttribute("for", "professional_to"+idNumber);
	newFrom.setAttribute("id", "professional_from"+idNumber);
	newFrom.setAttribute("name", "professional_from"+idNumber);
	newFrom.setAttribute('onblur', 'return validateDate(this.value);');
	labelOne.setAttribute("for", "professional_from"+idNumber);
	
	//ADD TO PAGE
	labelOne.appendChild(labelOneContent);
	liOne.appendChild(labelOne);
	liOne.appendChild(newFrom);
	labelTwo.appendChild(labelTwoContent);
	liTwo.appendChild(labelTwo);
	liTwo.appendChild(newTo);
	labelThree.appendChild(labelThreeContent);
	liThree.appendChild(labelThree);
	liThree.appendChild(newDescription);
	//liThree.appendChild(deleteImage);
	labelFour.appendChild(labelFourContent);
	liFour.appendChild(labelFour);
	liFour.appendChild(supervisor);
	
	
	
	ul.insertBefore(liThree, lis[lastLi]);
	ul.insertBefore(liFour, lis[lastLi]);
	ul.insertBefore(liTwo, lis[lastLi]);
	ul.insertBefore(liOne, lis[lastLi]);
	
	return false;
}

function stage2(varName) {
	//INCREMENT AMOUNT OF JOBS SHOWN
	var amount=document.getElementById(varName+"_value");
	var value=amount.value;
	amount.value=(Number(value)+1);
	var idNumber=(Number(value)+1);
	
	//FIND NUMBER OF LI TAGS IN TRAINING UL
	var ul=document.getElementById(varName);
	var lis = ul.getElementsByTagName("li");
	var lastLi=(lis.length-1);
	
	//CREATE LIS
	var liOne=document.createElement("li");
	var liTwo=document.createElement("li");
	var liThree=document.createElement("li");
	
	//CREATE LABELS
	var labelOne=document.createElement("label");
	var labelOneContent=document.createTextNode("From");
	var labelTwo=document.createElement("label");
	var labelTwoContent=document.createTextNode("To");
	var labelThree=document.createElement("label");
	var labelThreeContent=document.createTextNode("Description");
	
	//CREATE INPUTS
	var newFrom=document.createElement("input");
	var newTo=document.createElement("input");
	var newDescription=document.createElement("textarea");
	
	//ATTRIBUTES
	newDescription.setAttribute("rows", "5");
	newDescription.setAttribute("id", varName+"_description"+idNumber);
	newDescription.setAttribute("name", varName+"_description"+idNumber);
	labelThree.setAttribute("for", varName+"_description"+idNumber);
	newTo.setAttribute("id", varName+"_to"+idNumber);
	newTo.setAttribute("name", varName+"_to"+idNumber);
	newTo.setAttribute('onblur', 'return validateDate(this.value);');
	labelTwo.setAttribute("for", varName+"_to"+idNumber);
	newFrom.setAttribute("id", varName+"_from"+idNumber);
	newFrom.setAttribute("name", varName+"_from"+idNumber);
	newFrom.setAttribute('onblur', 'return validateDate(this.value);');
	labelOne.setAttribute("for", varName+"_from"+idNumber);
	
	//ADD TO PAGE
	labelOne.appendChild(labelOneContent);
	liOne.appendChild(labelOne);
	liOne.appendChild(newFrom);
	labelTwo.appendChild(labelTwoContent);
	liTwo.appendChild(labelTwo);
	liTwo.appendChild(newTo);
	labelThree.appendChild(labelThreeContent);
	liThree.appendChild(labelThree);
	liThree.appendChild(newDescription);
	
	ul.insertBefore(liThree, lis[lastLi]);
	ul.insertBefore(liTwo, lis[lastLi]);
	ul.insertBefore(liOne, lis[lastLi]);
	
	return false;
}

function addJob() {
	//INCREMENT AMOUNT OF JOBS SHOWN
	var amount=document.getElementById("employment_value");
	var value=amount.value;
	amount.value=(Number(value)+1);
	var idNumber=(Number(value)+1);
	
	//FIND NUMBER OF LI TAGS IN TRAINING UL
	var ul=document.getElementById("employment");
	var lis = ul.getElementsByTagName("li");
	var lastLi=(lis.length-1);
	
	//CREATE LIS
	var liOne=document.createElement("li");
	var liTwo=document.createElement("li");
	var liThree=document.createElement("li");
	var liFour=document.createElement('li');
	
	//CREATE LABELS
	var labelOne=document.createElement("label");
	var labelOneContent=document.createTextNode("Employer");
	var labelTwo=document.createElement("label");
	var labelTwoContent=document.createTextNode("From/To");
	var labelThree=document.createElement("label");
	var labelThreeContent=document.createTextNode("Job Details");
	var labelFour=document.createElement('label');
	var labelFourContent=document.createTextNode('Full Time Contract');
	
	//CREATE INPUTS
	var newEmployer=document.createElement("input");
	var newDates=document.createElement("input");
	var newDatesTo=document.createElement("input");
	var newJobDetails=document.createElement("textarea");
	var newContract=document.createElement('input');
	
	//ATTRIBUTES
	liTwo.setAttribute("class", "shortInputs");
	/* IE DOESNT LIKE SETTING THE CLASS WITH setAttribute SO HAVE HAD TO DO IT BELOW */
	liTwo.className="shortInputs";
	newJobDetails.setAttribute("rows", "5");
	newJobDetails.setAttribute("id", "previous_description"+idNumber);
	newJobDetails.setAttribute("name", "previous_description"+idNumber);
	labelThree.setAttribute("for", "previous_description"+idNumber);
	newDates.setAttribute("id", "previous_from"+idNumber);
	newDates.setAttribute("name", "previous_from"+idNumber);
	newDates.setAttribute('onblur', 'return validateDate(this.value);');
	newDatesTo.setAttribute("id", "previous_to"+idNumber);
	newDatesTo.setAttribute("name", "previous_to"+idNumber);
	newDatesTo.setAttribute('onblur', 'return validateDate(this.value);');
	newEmployer.setAttribute("id", "previous_employer"+idNumber);
	newEmployer.setAttribute("name", "previous_employer"+idNumber);
	labelOne.setAttribute("for", "previous_employer"+idNumber);
	
	labelFour.setAttribute('for', 'previous_contract'+idNumber);
	newContract.setAttribute('id', 'previous_contract'+idNumber);
	newContract.setAttribute('name', 'previous_contract'+idNumber);
	newContract.setAttribute('type', 'checkbox');
	newContract.setAttribute('class', 'check');
	newContract.setAttribute('value', 'Y');
	newContract.setAttribute('checked', 'checked');
	
	//ADD TO PAGE
	labelOne.appendChild(labelOneContent);
	liOne.appendChild(labelOne);
	liOne.appendChild(newEmployer);
	labelTwo.appendChild(labelTwoContent);
	liTwo.appendChild(labelTwo);
	liTwo.appendChild(newDates);
	liTwo.appendChild(newDatesTo);
	labelFour.appendChild(labelFourContent);
	liFour.appendChild(labelFour);
	liFour.appendChild(newContract);
	labelThree.appendChild(labelThreeContent);
	liThree.appendChild(labelThree);
	liThree.appendChild(newJobDetails);
	ul.insertBefore(liThree, lis[lastLi]);
	ul.insertBefore(liFour, lis[lastLi]);
	ul.insertBefore(liTwo, lis[lastLi]);
	ul.insertBefore(liOne, lis[lastLi]);
	
	return false;
}

function addQualification() {
	//INCREMENT AMOUNT OF JOBS SHOWN
	var amount=document.getElementById("qualification_value");
	var value=amount.value;
	amount.value=(Number(value)+1);
	var idNumber=(Number(value)+1);
	
	//FIND NUMBER OF LI TAGS IN TRAINING UL
	var ul=document.getElementById("qualification");
	var lis = ul.getElementsByTagName("li");
	var lastLi=(lis.length-1);
	
	//CREATE LIS
	var liOne=document.createElement("li");
	var liTwo=document.createElement("li");
	var liThree=document.createElement("li");
	
	//CREATE LABELS
	var labelOne=document.createElement("label");
	var labelOneContent=document.createTextNode("College/University");
	var labelTwo=document.createElement("label");
	var labelTwoContent=document.createTextNode("From/To");
	var labelThree=document.createElement("label");
	var labelThreeContent=document.createTextNode("Qualification");
	
	//CREATE INPUTS
	var newUni=document.createElement("input");
	var newDates=document.createElement("input");
	var newDatesTo=document.createElement("input");
	var newQualification=document.createElement("input");
	
	//ATTRIBUTES
	liTwo.setAttribute("class", "shortInputs");
	/* IE DOESNT LIKE SETTING THE CLASS WITH setAttribute SO HAVE HAD TO DO IT BELOW */
	liTwo.className="shortInputs";
	newQualification.setAttribute("rows", "5");
	newQualification.setAttribute("id", "qualification"+idNumber);
	newQualification.setAttribute("name", "qualification"+idNumber);
	labelThree.setAttribute("for", "qualification"+idNumber);
	newDates.setAttribute("id", "study_form"+idNumber);
	newDates.setAttribute("name", "study_from"+idNumber);
	newDatesTo.setAttribute("id", "study_to"+idNumber);
	newDatesTo.setAttribute("name", "study_to"+idNumber);
	newUni.setAttribute("id", "institution"+idNumber);
	newUni.setAttribute("name", "institution"+idNumber);
	labelOne.setAttribute("for", "institution"+idNumber);
	
	//ADD TO PAGE
	labelOne.appendChild(labelOneContent);
	liOne.appendChild(labelOne);
	liOne.appendChild(newUni);
	labelTwo.appendChild(labelTwoContent);
	liTwo.appendChild(labelTwo);
	liTwo.appendChild(newDates);
	liTwo.appendChild(newDatesTo);
	labelThree.appendChild(labelThreeContent);
	liThree.appendChild(labelThree);
	liThree.appendChild(newQualification);
	
	ul.insertBefore(liThree, lis[lastLi]);
	ul.insertBefore(liTwo, lis[lastLi]);
	ul.insertBefore(liOne, lis[lastLi]);
	
	return false;
}

function addBodies() {
	//INCREMENT AMOUNT OF JOBS SHOWN
	var amount=document.getElementById("bodies_value");
	var value=amount.value;
	amount.value=(Number(value)+1);
	var idNumber=(Number(value)+1);
	
	//FIND NUMBER OF LI TAGS IN TRAINING UL
	var ul=document.getElementById("bodies");
	var lis = ul.getElementsByTagName("li");
	var lastLi=(lis.length-1);
	
	//CREATE LIS
	var liOne=document.createElement("li");
	var liTwo=document.createElement("li");
	var liThree=document.createElement("li");
	
	//CREATE LABELS
	var labelOne=document.createElement("label");
	var labelOneContent=document.createTextNode("Name of Body");
	
	var labelTwo=document.createElement("label");
	var labelTwoContent=document.createTextNode("Type of Membership");
	
	var labelThree=document.createElement("label");
	var labelThreeContent=document.createTextNode("Period of Membership");
	
	//CREATE INPUTS
	var newBody=document.createElement("input");
	var newType=document.createElement("input");
	var newPeriod=document.createElement("input");
	
	//ATTRIBUTES
	
	labelThree.setAttribute("for", "membership_period"+idNumber);
	newPeriod.setAttribute("id", "membership_period"+idNumber);
	newPeriod.setAttribute("name", "membership_period"+idNumber);
	
	newType.setAttribute("id", "membership"+idNumber);
	newType.setAttribute("name", "membership"+idNumber);
	labelTwo.setAttribute("for", "membership"+idNumber);
	
	newBody.setAttribute("id", "professional_body"+idNumber);
	newBody.setAttribute("name", "professional_body"+idNumber);
	labelOne.setAttribute("for", "professional_body"+idNumber);
	
	//ADD TO PAGE
	labelOne.appendChild(labelOneContent);
	liOne.appendChild(labelOne);
	liOne.appendChild(newBody);
	
	labelTwo.appendChild(labelTwoContent);
	liTwo.appendChild(labelTwo);
	liTwo.appendChild(newType);
	
	labelThree.appendChild(labelThreeContent);
	liThree.appendChild(labelThree);
	liThree.appendChild(newPeriod);
	
	ul.insertBefore(liThree, lis[lastLi]);
	ul.insertBefore(liTwo, lis[lastLi]);
	ul.insertBefore(liOne, lis[lastLi]);
	
	return false;
}

function addOrg() {
	//INCREMENT AMOUNT OF JOBS SHOWN
	var amount=document.getElementById("organisations_value");
	var value=amount.value;
	amount.value=(Number(value)+1);
	var idNumber=(Number(value)+1);
	
	//FIND NUMBER OF LI TAGS IN TRAINING UL
	var ul=document.getElementById("organisations");
	var lis = ul.getElementsByTagName("li");
	var lastLi=(lis.length-1);
	
	//CREATE LIS
	var liOne=document.createElement("li");
	var liTwo=document.createElement("li");
	var liThree=document.createElement("li");
	
	//CREATE LABELS
	var labelOne=document.createElement("label");
	var labelOneContent=document.createTextNode("Name of Organisation");
	
	var labelTwo=document.createElement("label");
	var labelTwoContent=document.createTextNode("Postition Held (if any)");
	
	var labelThree=document.createElement("label");
	var labelThreeContent=document.createTextNode("Period of Membership");
	
	//CREATE INPUTS
	var newOrg=document.createElement("input");
	var newPosition=document.createElement("input");
	var newPeriod=document.createElement("input");
	
	//ATTRIBUTES
	
	labelThree.setAttribute("for", "organisation_period"+idNumber);
	newPeriod.setAttribute("id", "organisation_period"+idNumber);
	newPeriod.setAttribute("name", "organisation_period"+idNumber);
	
	newPosition.setAttribute("id", "position"+idNumber);
	newPosition.setAttribute("name", "position"+idNumber);
	labelTwo.setAttribute("for", "position"+idNumber);
	
	newOrg.setAttribute("id", "organisation"+idNumber);
	newOrg.setAttribute("name", "organisation"+idNumber);
	labelOne.setAttribute("for", "organisation"+idNumber);
	
	//ADD TO PAGE
	labelOne.appendChild(labelOneContent);
	liOne.appendChild(labelOne);
	liOne.appendChild(newOrg);
	
	labelTwo.appendChild(labelTwoContent);
	liTwo.appendChild(labelTwo);
	liTwo.appendChild(newPosition);
	
	labelThree.appendChild(labelThreeContent);
	liThree.appendChild(labelThree);
	liThree.appendChild(newPeriod);
	
	ul.insertBefore(liThree, lis[lastLi]);
	ul.insertBefore(liTwo, lis[lastLi]);
	ul.insertBefore(liOne, lis[lastLi]);
	
	return false;
}



//VALIDATE FORMS
function minorValidation(formName, action, validateDate) {
	
	
	var confirmation = '';
	if(action=='save') {
		confirmation = confirm('Do you want to leave your application to return at another time?  It will be saved for you.\n\n');
	}else{
		confirmation = confirm('Are you ready to submit this form now?\n\n');
	}
	
	
	
	if(confirmation == true) {
	
		var email=document.getElementById("register_email");
		var password1=document.getElementById("register_password");
		var password2=document.getElementById("password2");
		var labels=document.getElementsByTagName("label");
		var errors=0;
		
		if(email.value=="") {
			for(var x=0; x<labels.length; x++) {
				var attribute=labels[x].getAttribute("for");
	
				if(attribute=="register_email") {
					labels[x].style.fontWeight="bold";
					labels[x].style.color="#cb0000";
				}
			}
			errors++;
		}else{
			for(var x=0; x<labels.length; x++) {
				var attribute=labels[x].getAttribute("for");
	
				if(attribute=="register_email") {
					labels[x].style.fontWeight="normal";
					labels[x].style.color="#000";
				}
			}
		}
		
		if(password1.value=="") {
			for(var x=0; x<labels.length; x++) {
				var attribute=labels[x].getAttribute("for");
	
				if(attribute=="register_password") {
					labels[x].style.fontWeight="bold";
					labels[x].style.color="#cb0000";
				}
			}
			errors++;
		}else{
			for(var x=0; x<labels.length; x++) {
				var attribute=labels[x].getAttribute("for");
	
				if(attribute=="register_password") {
					labels[x].style.fontWeight="normal";
					labels[x].style.color="#000";
				}
			}
		}
		
		if(password2.value=="") {
			for(var x=0; x<labels.length; x++) {
				var attribute=labels[x].getAttribute("for");
	
				if(attribute=="password2") {
					labels[x].style.fontWeight="bold";
					labels[x].style.color="#cb0000";
				}
			}
			errors++;
		}else{
			for(var x=0; x<labels.length; x++) {
				var attribute=labels[x].getAttribute("for");
	
				if(attribute=="password2") {
					labels[x].style.fontWeight="normal";
					labels[x].style.color="#000";
				}
			}
		}
		
		//PLUG IN TO DOUBLE CHECK PASSWORDS MATCH
		if(password1.value!=password2.value) {
			alert("Please make sure your passwords match\n");
			return false;
		}
		
		if(validateDate == 'true') {
		
			var date_error = 0;
			
			var professional_entries = document.getElementById('professional_value').value;
			var training = document.getElementById('training_value').value;
			var employment = document.getElementById('employment_value').value;
			
			var date_fields = new Array();
			date_fields [0]= new Array('professional', professional_entries);
			date_fields [1]= new Array('training', training);
			date_fields [2]= new Array('previous', employment);
			
			//VALIDATE DATES ENTERED
			//PROFESSIONAL
			var pattern = /[0-9]{2}\/[0-9]{4}/;
			
			for(var i=0; i<date_fields.length; i++) { //LOOP AREAS WHERE DATES ARE INPUTTED
			
				for(var x=1; x<=date_fields[i][1]; x++) { //GET NUMBER OF FIELDS TO CHECK
				
					var date_from = document.getElementById(date_fields[i][0] + '_from' + x).value; //GET VALUE ENTERED
					var date_to = document.getElementById(date_fields[i][0] + '_to' + x).value; //GET VALUE ENTERED
					
					var from_matched = pattern.test(date_from); //MATCH PATTERN
					var to_matched = pattern.test(date_to); //MATCH PATTERN
					
					if(from_matched == false || to_matched == false || date_from == '' || date_to == '') { //PATTERN WASNT MATCHED
					
						date_error++; //INCREMENT ERROR
					
					}
				
				}
			
			}
			
			if(date_error > 0) {
			
				alert('Please make sure you have entered all dates in the correct format mm/yyyy');
				return false;
			
			}
		
		}
		
		if(errors>0) {
			//document.getElementById("error").style.display='block';
			alert("Please complete your email address and password on Step 1\n\n");
			return false;
		}else{
			return true;
		}
		
	}else{
			return false;
	}
	
}

function validateDate(elementValue) {
	
	//VALIDATE DATES ENTERED
	//PROFESSIONAL
	var pattern = /[0-9]{2}\/[0-9]{4}/;
			
	var from_matched = pattern.test(elementValue); //MATCH PATTERN
	
	if(from_matched == false) {
	
		alert('Please make sure you have entered the date in the correct format mm/yyyy');
		return false;
	
	}

}

function validateForm(formName) {
	var emptyFields=0;
	
	//CHECK FORM FOR REQUIRED INPUTS
	var inputs = document.forms[formName].getElementsByTagName("input");
	var texareas = document.forms[formName].getElementsByTagName("textarea");
	var selects = document.forms[formName].getElementsByTagName("select");
	var labels = document.forms[formName].getElementsByTagName("label");
	
	//LOOP THROUGH INPUTS
	for(var i=0; i<inputs.length; i++) {
			//FIND THE CLASS NAME
			if(inputs[i].className=="mand") {
				//IS THE MANDATORY FIELD EMPTY
				if((inputs[i].value=="")||(inputs[i].value=='0.00')) {
					//ADD EMPTY FIELD NAME TO VAR
					emptyFields++;
					//GET ID OF FORM ELEMENT
					var attribute=inputs[i].getAttribute("id");
					//LOOP THROUGH LABELS IN FORM
					for(var x=0; x<labels.length; x++) {
						//LOOP THROUGH LABELS IN FORM
						if(labels[x].getAttribute("for")==attribute) {
							//IF LABEL IS FOR FORM ELEMENT MAKE IT BOLD AND RED
							labels[x].style.fontWeight="bold";
							labels[x].style.color="#cb0000";
						}
					}
				}else{
					var attribute=inputs[i].getAttribute("id");
					//LOOP THROUGH LABELS IN FORM
					for(var x=0; x<labels.length; x++) {
						//LOOP THROUGH LABELS IN FORM
						if(labels[x].getAttribute("for")==attribute) {
							//IF LABEL IS FOR FORM ELEMENT MAKE IT NORMAL TEXT
							labels[x].style.fontWeight="normal";
							labels[x].style.color="#000";
						}
					}
				}
			}
	}
	
	//LOOP THROUGH TEXTAREAS
	for(var i=0; i<texareas.length; i++) {
			//FIND THE CLASS NAME
			if(texareas[i].className=="mand") {
				//IS THE MANDATORY FIELD EMPTY
				if(texareas[i].value=="") {
					//ADD EMPTY FIELD NAME TO VAR
					emptyFields++;
					//GET ID OF FORM ELEMENT
					var attribute=texareas[i].getAttribute("id");
					//LOOP THROUGH LABELS IN FORM
					for(var x=0; x<labels.length; x++) {
						//IF LABEL IS FOR FORM ELEMENT MAKE IT BOLD AND RED
						if(labels[x].getAttribute("for")==attribute) {
							labels[x].style.fontWeight="bold";
							labels[x].style.color="#cb0000";
						}
					}
				}else{
					//GET ID OF FORM ELEMENT
					var attribute=texareas[i].getAttribute("id");
					//LOOP THROUGH LABELS IN FORM
					for(var x=0; x<labels.length; x++) {
						//IF LABEL IS FOR FORM ELEMENT MAKE IT NORMAL TEXT
						if(labels[x].getAttribute("for")==attribute) {
							labels[x].style.fontWeight="normal";
							labels[x].style.color="#000";
						}
					}
				}
			}
	}
	
	//LOOP THROUGH SELECTS
	for(var i=0; i<selects.length; i++) {
			//FIND THE CLASS NAME
			if(selects[i].className=="mand") {
				//IS THE MANDATORY FIELD EMPTY
				if(selects[i].value=="0") {
					//ADD EMPTY FIELD NAME TO VAR
					emptyFields++;
					//GET ID OF FORM ELEMENT
					var attribute=selects[i].getAttribute("id");
					//LOOP THROUGH LABELS IN FORM
					for(var x=0; x<labels.length; x++) {
						//IF LABEL IS FOR FORM ELEMENT MAKE IT BOLD AND RED
						if(labels[x].getAttribute("for")==attribute) {
							labels[x].style.fontWeight="bold";
							labels[x].style.color="#cb0000";
						}
					}
				}else{
					//GET ID OF FORM ELEMENT
					var attribute=selects[i].getAttribute("id");
					//LOOP THROUGH LABELS IN FORM
					for(var x=0; x<labels.length; x++) {
						//IF LABEL IS FOR FORM ELEMENT MAKE IT NORMAL TEXT
						if(labels[x].getAttribute("for")==attribute) {
							labels[x].style.fontWeight="normal";
							labels[x].style.color="#000";
						}
					}
				}
			}
	}
	
	//PLUG IN TO DOUBLE CHECK PASSWORDS MATCH
	if((document.getElementById("register_password"))&&(document.getElementById("password2"))) {
		var pass1=document.getElementById("register_password");
		var pass2=document.getElementById("password2");
		if(pass1.value!=pass2.value) {
			alert("Please make sure your passwords match\n");
			return false;
		}
	}
	
	if(document.getElementById("tnc")) {
		var tnc=document.getElementById("tnc");
		if(tnc.checked==false) {
			//GET ID OF FORM ELEMENT
			var attribute="tnc";
			//LOOP THROUGH LABELS IN FORM
			for(var x=0; x<labels.length; x++) {
				//IF LABEL IS FOR FORM ELEMENT MAKE IT NORMAL TEXT
				if(labels[x].getAttribute("for")==attribute) {
					labels[x].style.fontWeight="bold";
					labels[x].style.color="#cb0000";
				}
			}
		}else{
			//GET ID OF FORM ELEMENT
			var attribute="tnc";
			//LOOP THROUGH LABELS IN FORM
			for(var x=0; x<labels.length; x++) {
				//IF LABEL IS FOR FORM ELEMENT MAKE IT NORMAL TEXT
				if(labels[x].getAttribute("for")==attribute) {
					labels[x].style.fontWeight="normal";
					labels[x].style.color="#000";
				}
			}
		}
	}
	
	//ALERT EMPTY FIELDS
	if(emptyFields) {
		document.getElementById("error").style.display='block';
		return false;
	}else{
		return true;
	}
	
}

function confirmSubmission() {
	if(document.getElementById("joinform")) {
		var forms=document.getElementById("joinform");	
		forms.onsubmit=function() {
			var confirmation=confirm("Are you ready to submit this form now please?\n\n");
			return confirmation;
		}
	}
}

function popUp() {
	
	var links=document.getElementsByTagName("a");
	for(var i=0; i<links.length; i++) {
		if(links[i].className=="pop") {
			links[i].onclick=function() {
				var destination=this.getAttribute("href");
				var prefix="";
				if(destination.indexOf("http")==-1 && destination.indexOf("pages/")==-1) {
					prefix="pages/";
				}
				var newWin=window.open(prefix+destination, 'newWin', 'width=650, height=600, scrollbars=1');
				return false;
			}
		}
	}
	
}

//VACANCIES
function vacancyPopUp(url) {
	if(document.getElementsByTagName("a")) {
		var newWindow=window.open('members/popups/'+url,'newWin', 'width=605, height=600, scrollbars=1');
		newWindow;
		return false;
	}
}

//LIMIT LENGTH OF JOB DESC ON APPLICATION FORM
function strLength(string) {
	var limit = 250;
	var textfield = document.getElementById('job_description');
	
	if(string.length>limit) {
		
		alert('You have exceeded the maximum length for your job description\n This section cannot be longer than 250 characters\n\n');
		
		textfield.value=string.substr(0, limit);
		
	}
	
	
}

//FORM VALIDATION
//LOOPS THROUGH THE ELEMENTS IN A SUBMITTED FORM, CHECKS IF THEY ARE MARKED AS MANDATORY (class='mand') AND HIGHTLIGHTS LABELS

//HIGHLIGHT LABEL IF ELEMENT IS BLANK OR NORMALISE IF COMPLETED
function highlightLabel(form, id, color, weight) {
	var forAttribute="";
	//FIND LABELS ON FORM
	var labels=form.getElementsByTagName("label");
	for(var z=0; z<labels.length; z++) {
		//GET FOR ATTRIBUTE
		//forAttribute=labels[z].getAttribute('for')?labels[z].getAttribute('for'):labels[z].getAttribute('htmlFor');
		if(navigator.appName=="Microsoft Internet Explorer") {
			forAttribute=labels[z].getAttribute('htmlFor');
		}else{
			forAttribute=labels[z].getAttribute('for')
		}
		
		//MATCH FOR WITH ELEMENT ID
		if(forAttribute==id) {
			//APPLY STYLES AS APPROPRIATE
			labels[z].style.color='#'+color;
			labels[z].style.fontWeight=weight;
		}
	}
}


//VALIDATES INPUT FIELDS
function checkInputs(form, fail) {
	//GET INPUTS
	var inputs=form.getElementsByTagName("input");
	for(var x=0; x<inputs.length; x++) {
		//DEFINE ELEMENT ID
		var elementId=inputs[x].getAttribute("id");
		//IS FIELD MANDATORY AND NOT COMPLETED
		if(inputs[x].className=="mand" && inputs[x].value=="") {
			//CHANGE LABEL
			highlightLabel(form, elementId, 'cb0000', 'bold');
			//INCREMENT FAIL VAL
			fail++;
		}else if(inputs[x].className=="mand" && inputs[x].value!="") {
			//CHANGE LABEL
			highlightLabel(form, elementId, '000', 'normal');
		}
	}
	
	//SEND FAIL BACK TO FUNCTION
	return fail;
}

//VALIDATES TEXTAREAS FIELDS
function checkTextArea(form, fail) {
	//GET TEXTAREAS
	var textareas=form.getElementsByTagName("textarea");
	for(var n=0; n<textareas.length; n++) {
		//DEFINE ELEMENT ID
		var elementId=textareas[n].getAttribute("id");
		//IS FIELD MANDATORY AND NOT COMPLETED
		if(textareas[n].className=="mand" && textareas[n].value=="") {
			//CHANGE LABEL
			highlightLabel(form, elementId, 'cb0000', 'bold');
			//INCREMENT FAIL VAL
			fail++;
		}else if(textareas[n].className=="mand" && textareas[n].value!="") {
			//CHANGE LABEL
			highlightLabel(form, elementId, '000', 'normal');
		}
		
	}
	//SEND FAIL BACK TO FUNCTION
	return fail;
}

//VALIDATES SELECTS FIELDS
function checkSelects(form, fail) {
	//GET SELECTS
	var selects=form.getElementsByTagName("select");
	for(var b=0; b<selects.length; b++) {
		//DEFINE ELEMENT ID
		var elementId=selects[b].getAttribute("id");
		//IS FIELD MANDATORY AND NOT COMPLETED
		if(selects[b].className=="mand" && (selects[b].value=="0" || selects[b].value=="")) {
			//CHANGE LABEL
			highlightLabel(form, elementId, 'cb0000', 'bold');
			//INCREMENT FAIL VAL
			fail++;
		}else if(selects[b].className=="mand" && (selects[b].value!="0" && selects[b].value!="")) {
			//CHANGE LABEL
			highlightLabel(form, elementId, '000', 'normal');
		}
		
	}
	//SEND FAIL BACK TO FUNCTION
	return fail;
}

//FINDS THE SUBMITTED FORM
function formValidation() {
	var forms=document.getElementsByTagName("form");
	//LOOP THROUGH FORMS
	for(var i=0; i<forms.length; i++) {
		//FORM HAS BEEN SUBMITTED
		forms[i].onsubmit=function() {
			//SET FAIL VAL
			var fail=0;
			//ASSIGN CURRENT FAIL VAL TO CHECKING FUNCTIONS
			fail += checkInputs(this, fail);
			fail += checkTextArea(this, fail);
			fail += checkSelects(this, fail);
			//RETURN RESULT OF CHECKING
			if(fail>0) {
				var alertPara = document.getElementById('error');
				alertPara.style.display='block';
				return false;
			}else{
				return true;
			}
		}
	}
}

//AJAX REQUIREMENTS
var req;
var url;
function Initialize() {
    try {
    	req=new ActiveXObject("Msxml2.XMLHTTP");
	}

    catch(e) {
    	try {
        	req=new ActiveXObject("Microsoft.XMLHTTP");
		}
        catch(oc) {
            req=null;
		}
    }

    if(!req&&typeof XMLHttpRequest!="undefined") {
        req= new XMLHttpRequest();
	}	
}

function check_user(email) {
	Initialize();
	var url="includes/user_check.php?requested_email="+email;
	if(req!=null) {
		req.onreadystatechange = function () {
			if (req.readyState == 4) {
				// only if "OK"
				if (req.status == 200) {
					document.getElementById("email_status").innerHTML =req.responseText;
				}else{
					document.getElementById("email_status").innerHTML=
					"There was a problem retrieving data:<br />"+req.statusText;
				}
			}
		}
		req.open("GET", url, true);
		req.send(null);
    }
}


//LOAD IN FUNCTIONS ONLOAD
function loadFunctions() {
	columnResize();
	clearValue();
	formDisplay();
	formValidation();
	//confirmSubmission();
	popUp();
}

window.onload=function() {
	loadFunctions();
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}