// JavaScript Document
//functions to change the appearance of blurred and focussed elements
function blurInput(id_input){
	id_input.className = "formElementBlur";
}

function focusInput(id_input){
	id_input.className = "formElementFocus";
}
//end of blur and focus functions

/*-------------functions to validate form elements------------------*/
function fnMandatory(fieldValue,divID){
	var message = "";
	
	if(divID == "valUsername"){
		if(fieldValue.length == 0){
			message += "'Username' is a mandatory field\n";
		}
	
		if(fieldValue.length < 6){
			message += "Username has to be at least 6 characters in length\n";
		}else{
			fnChkUsername(fieldValue);
		}
	}else if(divID == "valPassword"){
		if(fieldValue.length == 0){
			message += "'Password' is a mandatory field\n";
		}
	
		if(fieldValue.length < 6){
			message += "Password has to be at least 6 characters in length\n";
		}
	}else if(divID == "valConfPass"){
		if(fieldValue.length == 0){
			message += "Please confirm the password entered above\n";
		}
		
		if(fieldValue != document.getElementById("Password").value){
			message += "Your passwords do not match\n";
		}
	}else if(divID == "valEmail"){
		var validEmail = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9])+(\.[a-zA-Z0-9_-]+)+$/;
		if(!validEmail.test(fieldValue)){
			message += "Please enter a valid email address\n";
		}
		
		if(fieldValue.length == 0){
			message += "'Email' is a mandatory field\n";
		}
	}else if(divID == "valSalary"){
		if(isNaN(fieldValue)){
			message += "Please enter only numeric characters(make sure there are no commas)<br />";
		}
		
		if(fieldValue.length == 0){
			message += "'Salary' is a mandatory field\n";
		}
	}else{
	
		if(fieldValue.length == 0){
			message += "This is a mandatory field\n";
		}
	}
	
	if(message.length > 0){
		document.getElementById(divID).className = "visibleDiv";
		document.getElementById(divID).innerHTML = message;
	}else{
		document.getElementById(divID).className = "hiddenDiv";
	}
}

//make sure terms and conditions has been checked
function fnTerms(){
	if(document.getElementById("Terms").checked == true){
		document.getElementById("showSubmit").className = "visibleDiv";
	}else{
		document.getElementById("showSubmit").className = "hiddenDiv";
	}
}

//check for availability of username
function fnChkUsername(username){
	var ChkUsername;  // The variable that makes Ajax possible!
	
	//browser compatibility code starts here
	try{
		// Opera 8.0+, Firefox, Safari
		ChkUsername = new XMLHttpRequest();
	} catch (e){
		// Internet Explorer Browsers
		try{
			ChkUsername = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try{
				ChkUsername = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e){
				// Something went wrong
				alert("Your browser broke!");
				return false;
			}
		}
	}
	//browser compatibility code ends here
	
	// Create a function that will receive data sent from the server
	ChkUsername.onreadystatechange = function(){
		if(ChkUsername.readyState == 4){
			document.getElementById("confirmUsername").className = "visibleDiv";
			document.getElementById("confirmUsername").innerHTML = ChkUsername.responseText;
		}else{
			document.getElementById("confirmUsername").className = "visibleDiv";
			document.getElementById("confirmUsername").innerHTML = "Checking username availability.  Please wait ...";
		}
	}
	
	var DataToSend = "Username="+username;
	var url = "chkUsername.php?sid=" + Math.random();
	
	ChkUsername.open("POST",url,true);
	ChkUsername.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
	ChkUsername.send(DataToSend);
	//end of POST
}
//end of function