function chk_reg1(){
	var errmsg = "";
	errmsg += validate(document.reg1.passwd,6,"Please enter a Password.");
	errmsg += validate(document.reg1.con_passwd,6,"Please confirm the Password.");
	if (document.reg1.passwd.value != document.reg1.con_passwd.value)
		{errmsg += "The Passwords do not match.\n";}
	errmsg += validate(document.reg1.title,2,"Please select your Title.");
	errmsg += validate(document.reg1.fname,2,"Please enter your First Name.");
	errmsg += validate(document.reg1.sname,2,"Please enter your Surname.");
	errmsg += validate(document.reg1.d_birth,1,"Please enter your Day of Birth.");
	if (document.reg1.d_birth.value > 31)
		{errmsg += "Invalid Day of Birth.\n";}
	errmsg += validate(document.reg1.m_birth,1,"Please enter your Month of Birth.");
	if (document.reg1.m_birth.value > 12)
		{errmsg += "Invalid Month of Birth.\n";}
	if (errmsg!="")errmsg+="\n";
	
	errmsg += validate(document.reg1.address,2,"Please enter your Address.");
	errmsg += validate(document.reg1.city,2,"Please enter your Suburb.");
	errmsg += validate(document.reg1.state,1,"Please select your State.");
	errmsg += validate(document.reg1.postcode,4,"Please enter your Postcode.");
	errmsg += validate(document.reg1.country,2,"Please select your Country.");
				
	if (errmsg!="")errmsg+="\n";
	errmsg += validate(document.reg1.homephone,8,"Please enter your Home Phone.");
	errmsg += validate_email(document.reg1.emailadd,"Please enter a valid Primary Email.");
	
	errmsg += validate(document.reg1.seektype,1,"Please select one or more Type of Work Sought.");
	errmsg += validate(document.reg1.practice,1,"Please select your Preferred Specialisation.");
	errmsg += validate(document.reg1.office,1,"Please select your Preferred Beilby Branch.");
// 	errmsg += validate(document.reg1.rate,1,"Please enter your Temp Hourly Rate.");
	errmsg += validate_number(document.reg1.rate,"Invalid characters in Temp Hourly Rate.")

// 	errmsg += validate(document.reg1.salary,1,"Please enter your Remuneration Perm Equivalent.");
	errmsg += validate_number(document.reg1.salary,"Invalid characters in Remuneration Perm Equivalent.")

	if (errmsg!="")errmsg+="\n";
	errmsg += validate(document.reg1.cv_name,1,"Please attach your CV.");
	if(!document.reg1.privacy_chk.checked)
		{errmsg += "The Privacy Statement must be agreed to.";}

	if (errmsg != ""){
		errmsg="The following errors were found:\n\n"+errmsg;
		alert(errmsg);
		return false;
	}

	document.reg1.isTemp.value='N';
	document.reg1.isContract.value='N';
	document.reg1.isPerm.value='N';
	//if (document.reg1.seektype[0].selected == true) document.reg1.isTemp.value='Y';
	if (document.reg1.seektype[0].selected == true) document.reg1.isContract.value='Y';
	if (document.reg1.seektype[1].selected == true) document.reg1.isPerm.value='Y';

	document.reg1.Submit.value="Submitting Registration...";
	document.reg1.Submit.disabled=true;
	document.reg1.Reset.style.display="none";
	document.reg1.submit();
	return true;
}

function chk_reg2(){
	var errmsg = "";
	errmsg += validate(document.reg1.passwd,6,"Please enter a Password.");
	errmsg += validate(document.reg1.con_passwd,6,"Please confirm the Password.");
	if (document.reg1.passwd.value != document.reg1.con_passwd.value)
		{errmsg += "The Passwords do not match.\n";}
	errmsg += validate(document.reg1.title,2,"Please select your Title.");
	errmsg += validate(document.reg1.fname,2,"Please enter your First Name.");
	errmsg += validate(document.reg1.sname,2,"Please enter your Surname.");
	errmsg += validate(document.reg1.d_birth,1,"Please enter your Day of Birth.");
	if (document.reg1.d_birth.value > 31)
		{errmsg += "Invalid Day of Birth.\n";}
	errmsg += validate(document.reg1.m_birth,1,"Please enter your Month of Birth.");
	if (document.reg1.m_birth.value > 12)
		{errmsg += "Invalid Month of Birth.\n";}
	if (errmsg!="")errmsg+="\n";
	
	errmsg += validate(document.reg1.address,2,"Please enter your Address.");
	errmsg += validate(document.reg1.city,2,"Please enter your Suburb.");
	errmsg += validate(document.reg1.state,1,"Please select your State.");
	errmsg += validate(document.reg1.postcode,4,"Please enter your Postcode.");
	errmsg += validate(document.reg1.country,2,"Please select your Country.");
				
	if (errmsg!="")errmsg+="\n";
	errmsg += validate(document.reg1.homephone,8,"Please enter your Home Phone.");
	errmsg += validate_email(document.reg1.emailadd,"Please enter a valid Primary Email.");
	
	errmsg += validate(document.reg1.seektype,1,"Please select one or more Type of Work Sought.");
	
// 	errmsg += validate(document.reg1.rate,1,"Please enter your Temp Hourly Rate.");
	errmsg += validate_number(document.reg1.rate,"Invalid characters in Temp Hourly Rate.")

// 	errmsg += validate(document.reg1.salary,1,"Please enter your Remuneration Perm Equivalent.");
	errmsg += validate_number(document.reg1.salary,"Invalid characters in Remuneration Perm Equivalent.")

	if (errmsg!="")errmsg+="\n";

	errmsg += validate(document.reg1.cv_name,1,"Please attach your CV.");
	if(!document.reg1.privacy_chk.checked)
		{errmsg += "The Privacy Statement must be agreed to.";}

	if (errmsg != ""){
		errmsg="The following errors were found:\n\n"+errmsg;
		alert(errmsg);
		return false;
	}

	document.reg1.isTemp.value='N';
	document.reg1.isContract.value='N';
	document.reg1.isPerm.value='N';
	//if (document.reg1.seektype[0].selected == true) document.reg1.isTemp.value='Y';
	if (document.reg1.seektype[0].selected == true) document.reg1.isContract.value='Y';
	if (document.reg1.seektype[1].selected == true) document.reg1.isPerm.value='Y';

	document.reg1.Submit.value="Submitting Registration...";
	document.reg1.Submit.disabled=true;
	document.reg1.Reset.style.display="none";
	document.reg1.submit();
	return true;
}
function chk_log1(){
	if (document.log1.txtcandref.value=="" ||
		document.log1.txtcandpass.value==""){
		alert("Please enter your Reference Number and Password.")
		return false;
	}
	document.log1.Submit.value="Logging in...";
	document.log1.Submit.disabled=true;
	document.log1.Reset.style.display="none";
	document.log1.submit();
	return true;
}

function chk_log2(){
	if (document.log2.txtlmref.value=="" ||
		document.log2.txtlmpass.value==""){
		alert("Please enter your Reference Number and Password.")
		return false;
	}
	document.log2.Submit.value="Logging in...";
	document.log2.Submit.disabled=true;
	document.log2.Reset.style.display="none";
	document.log2.submit();
	return true;
}

function chk_pro1(){
	var errmsg = "";
	errmsg += validate(document.pro1.UpdateAddress,1,"Please enter your Address.")
	errmsg += validate(document.pro1.UpdateTown,1,"Please enter your Suburb.")
	errmsg += validate(document.pro1.UpdateState,1,"Please select your State.")
	errmsg += validate(document.pro1.UpdatePostcode,1,"Please enter your Postcode.")
	errmsg += validate(document.pro1.UpdateCountry,1,"Please select your Country.")
	errmsg += validate(document.pro1.UpdateHome,1,"Please enter your Home Phone.")
	errmsg += validate_email(document.pro1.UpdateEmail,"Please enter a valid Primary Email.")

	if (errmsg != ""){
		errmsg="The following errors were found:\n\n"+errmsg;
		alert(errmsg);
		return false;
	}

	document.pro1.Submit.value="Updating Profile...";
	document.pro1.Submit.disabled=true;
	document.pro1.submit();
	return true;
}

function chk_pro2(){
	var errmsg = "";
	errmsg += validate(document.pro2.workphone,1,"Please enter your Work Phone.")
	errmsg += validate_email(document.pro2.email,"Please enter a valid Email Address.")

	if (errmsg != ""){
		errmsg="The following errors were found:\n\n"+errmsg;
		alert(errmsg);
		return false;
	}

	document.pro2.Submit.value="Updating Profile...";
	document.pro2.Submit.disabled=true;
	document.pro2.submit();
	return true;
}

function chk_ads1(){
	if (document.ads1.adref.value==""){
		alert("Please enter an Advertisement Reference.")
		return false;
	}
	document.ads1.Submit.value="Searching..."
	document.ads1.Submit.disabled=true;
	document.ads1.submit();
	return true;
}

function chk_app1(){
	if (document.app1.candref.value=="" ||
		document.app1.wg_passwd.value==""){
		alert("Please enter your Reference Number and Password.")
		return false;
	}
	document.app1.Submit.value="Searching...";
	document.app1.Submit.disabled=true;
	document.app1.submit();
	return true;
}

function chk_sea1(){
	if (document.sea1.job_type.value=="" &&
		document.sea1.industry.value=="" &&
		document.sea1.loca.value==""){
		alert("Please select one or more options.");
		return false;
	}
	document.sea1.Submit.value="Searching...";
	document.sea1.Submit.disabled=true;
	document.sea1.submit();
	return true;
}

function chk_sea2(){
	jobs = 0;
	field = document.sea2.chkn;
	if(typeof(field.length)=="undefined"){
		if(!field.checked){
			field.checked = true;
			return false;
		}
	}else{
		for (i = 0; i < field.length; i++)
			if (field[i].checked) jobs++;
	
		if (!jobs){
			alert("Please select one or more Jobs before applying");
			return false
		}
	}

	document.sea2.Submit.value="Applying...";
	document.sea2.Submit.disabled=true;
	document.sea2.submit();
	return true;
}

function chk_cv1(){
	var fname=document.cv1.attachment.value;
	if (fname == "") {
		alert("Please select your CV file.");
		return false;
	}
	else
	{
		var extArray = fname.split(".");
		var chkExt = extArray[(extArray.length-1)];
		chkExt = chkExt.toLowerCase();

		if((chkExt != "doc") && (chkExt != "rtf") && (chkExt != "docx") && (chkExt != "pdf") && (chkExt != "txt")) {
			alert("Invalid CV format. We are only able to accept Microsoft Word and RTF documents.");
			document.cv1.attachment.select();
			return false;
		}
		else
		{
			document.getElementById("uplMsg").style.visibility = "visible";
			document.cv1.Submit.value="Attaching CV...";
			document.cv1.Submit.disabled=true;
			document.cv1.submit();
			return true;
		}
	}
}

function chk_pas1(){
	var errmsg = "";
	errmsg += validate(document.pas1.OldPass,1,"Please enter your Old Password.");
	errmsg += validate(document.pas1.NewPass,6,"Please enter your New Password.");
	errmsg += validate(document.pas1.VerifyPass,6,"Please Confirm your Password.");
	if (document.pas1.NewPass.value != document.pas1.VerifyPass.value)
		{errmsg += "The Passwords do not match.\n";}

	if (errmsg != ""){
		errmsg="The following errors were found:\n\n"+errmsg;
		alert(errmsg);
		return false;
	}

	document.pas1.Submit.value="Updating Password...";
	document.pas1.Submit.disabled=true;
	document.pas1.submit();
	return true;
}

function chk_for1(){
	var errmsg = "";
	errmsg += validate(document.for1.firstname,2,"Please enter your First Name.");
	errmsg += validate(document.for1.lastname,2,"Please enter your Surname.");
	errmsg += validate(document.for1.d_birth,1,"Please enter your Day of Birth.");
	
	if (document.for1.d_birth.value > 31)
		{errmsg += "Invalid Day of Birth.\n";}
	errmsg += validate(document.for1.m_birth,1,"Please enter your Month of Birth.");	
	if (document.for1.m_birth.value > 12)
		{errmsg += "Invalid Month of Birth.\n";}
	errmsg += validate_email(document.for1.Email,"Please enter a valid Email Address.");
	if (errmsg != ""){
		errmsg="The following errors were found:\n\n"+errmsg;
		alert(errmsg);
		return false;
	}

	document.for1.Submit.value="Requesting Password...";
	document.for1.Submit.disabled=true;
	document.for1.Reset.style.display="none";
	document.for1.submit();
	return true;
}

function chk_for2(){
	var errmsg = "";
	errmsg += validate(document.for2.firstname,2,"Please enter your First Name.");
	errmsg += validate(document.for2.lastname,2,"Please enter your Surname.");
	errmsg += validate_email(document.for2.Email,"Please enter a valid Email Address.");

	if (errmsg != ""){
		errmsg="The following errors were found:\n\n"+errmsg;
		alert(errmsg);
		return false;
	}

	document.for2.Submit.value="Requesting Password...";
	document.for2.Submit.disabled=true;
	document.for2.Reset.style.display="none";
	document.for2.submit();
	return true;
}
function trimAll(sString) 
{
	while (sString.substring(0,1) == ' ')
	{
		sString = sString.substring(1, sString.length);	
	}
	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
		sString = sString.substring(0,sString.length-1);
	}
return sString;
}
function chk_sub1(){
	var ts = 0;
	var i = 0;
	var j = 0;
	var rea = true;
	var elems = document.sub1.elements.length;

	for (i = 0; i < elems; i++)
		if (document.sub1.elements[i].type == 'radio'){
			if (document.sub1.elements[i].checked){
				ts++;
				if (document.sub1.elements[i].value=='0' && trimAll(document.sub1.elements[i+1].value)=="")
					rea = false;				
			}
	}

	if (!ts){
		alert("Please select one or more Timesheets before submitting");
		return false;
	}
	
	if (!rea){
		alert("Please enter Rejected Reason before submitting");
		return false;
	}
	
	document.sub1.Submit.value="Submitting...";
	document.sub1.Submit.disabled=true;
	document.sub1.submit();
	return true;	
}

function chk_alpha(field,num) {
	if(num=="0") err = "Please enter only alphabetic characters";
	else err = "Please enter "+num+" or more alphabetic characters";
	
	var err2 = "Please enter only alphabetic characters";
	var x = field.value;
	if (x.length < num ){
		alert(err);
		field.select();
		field.focus();
		return false;
	}
	var filter  = /^([A-Za-z\ \-])+$/;
	if (filter.test(x)) return true;
	else {
		alert(err2);
		field.select();
		field.focus();
		return false;
	}
}

function chk_alphanumeric(field,num) {
	if(num=="0") err = "Please enter only alphanumeric characters";	
	else err = "Please enter "+num+" or more alphanumeric characters";
	
	var err2 = "Please enter only alphanumeric characters";
	var x = field.value;
	if (x.length < num ){
		alert(err);
		field.select();
		field.focus();
		return false;
	}
	var filter  = /^([0-9A-Za-z\ \-\/])+$/;
	if (filter.test(x)) return true;
	else {
		alert(err2);
		field.select();
		field.focus();
		return false;
	}
}

function chk_numeric(field,num) {
	if(num=="0") err = "Please enter only numeric characters"
	else err = "Please enter "+num+" or more numeric characters"
	
	var err2 = "Please enter only numeric characters";
	var x = field.value;
	if (x.length < num ){
		alert(err);
		field.select();
		field.focus();
		return false;
	}
	var filter  = /^([0-9\ \(\)\+\,\.])+$/;
	if (filter.test(x)) return true;
	else {
		alert(err2);
		//field.select();
		//field.focus();
		field.value = "";
		return false;
	}
}

function chk_email(field) {
	err = "Please enter a valid email address"
	var x = field.value;
	x = trimAll(x);
	var filter = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

	if(x!=''){
		if (filter.test(x)) return true;
		else {
			alert(err);
			field.select();
			field.focus();
		}
	}
}

function validate(field,num,msg){
	if (field.value=="") return msg+"\n";
	if (field.value.length<num) return msg+" Must be "+num+" chars long.\n";
	return "";
}

function validate_number(txt,msg){
	txt.value = txt.value.replace(/,/g,"");
	x = txt.value;
	var filter = /^([0-9])+(\.([0-9]){1,2})?$/;
	if(x!="")
		if(!filter.test(x))
			return msg+"\n";
	return "";
}

function trimAll(sString) 
{
	while (sString.substring(0,1) == ' ')
	{
		sString = sString.substring(1, sString.length);
	}
	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}

function validate_email(field,msg) {
	var x = field.value;
	x = trimAll(x);
	var filter = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

	if (x!='') if (filter.test(x)) return "";
	return msg+"\n";
}

function chgSpec(){
	if (document.reg1.office.value=="")
		document.reg1.practice.disabled=true;
	if (document.reg1.office.value!="")
	{
		document.reg1.practice.disabled=false;
		removeAllOptions(document.reg1.practice);
		addOption(document.reg1.practice, "", "Select >>>", "");
		addOption(document.reg1.practice,"001", "Accounting & Finance");
		if (document.reg1.office.value=="004")
		{
			addOption(document.reg1.practice,"002", "Artemis International Executive Search");
		}
		addOption(document.reg1.practice,"013", "Banking and Financial Services");
		addOption(document.reg1.practice,"011", "Corporate");
		addOption(document.reg1.practice,"012", "Executive & Professional");
		addOption(document.reg1.practice,"008", "Government");
		addOption(document.reg1.practice,"016", "Healthcare");
		addOption(document.reg1.practice,"010", "HR");
		addOption(document.reg1.practice,"003", "HR Consulting");
		addOption(document.reg1.practice,"004", "ICT");
		addOption(document.reg1.practice,"005", "Mining");
		addOption(document.reg1.practice,"015", "Oil & Gas");
		addOption(document.reg1.practice,"009", "Other");
		addOption(document.reg1.practice,"006", "Sales, Marketing & Communication");
		addOption(document.reg1.practice,"014", "Supply Chain & Logistics");
		addOption(document.reg1.practice,"007", "Technical & Operations");
	}

}
////////////////// 

function removeAllOptions(selectbox)
{
	var i;
	for(i=selectbox.options.length-1;i>=0;i--)
	{
		//selectbox.options.remove(i);
		selectbox.remove(i);
	}
}


function addOption(selectbox, value, text )
{
	var optn = document.createElement("OPTION");
	optn.text = text;
	optn.value = value;

	selectbox.options.add(optn);
}
