function DetermineFreelancer(FormName) {
	var NameOfForm = FormName;
	
	if (NameOfForm.freelance.checked==true)
	{
		NameOfForm.company.disabled=true;
		NameOfForm.company.value=NameOfForm.lastname.value + ", " + NameOfForm.firstname.value;
		
		return true;
	}
	else
	{
		NameOfForm.company.disabled=false;
		NameOfForm.company.value = "";
		
		return true;
	}
	
}

function isFormChanged(FormName){				
		var NameOfForm = FormName;
		var ele = NameOfForm.elements;
		var FormChange=false;
		var FormHasChanged=false;
		for(i=0; i < ele.length; i++){
			if(ele[i].type.length > 0){			
				FormChange = isElementChanged(ele, i);					
				if(FormChange == true){
					FormHasChanged = true;
				}
			}
		}	
		//alert(FormHasChanged);
		if(FormHasChanged){			
			NameOfForm.hddnIsFormChanged.value = "Y";
			return true;
		}
		else{
			return false;
		}
	}
	
	function isElementChanged(ele, i){																							
		switch (ele[i].type){
			case "text":			
				if(ele[i].value != ele[i].defaultValue){	
					//alert(ele[i].value);
					//alert(ele[i].defaultValue);							
					return true;																																									
				}					
				else{
					return false;												
				}
				break;
			case "textarea": 			
				if(ele[i].value != ele[i].defaultValue){				
					//Should set as modified for comments field
					return false;
				}
				else{
					return false;
				}
				break;								
			case "radio":								
				if(ele[i].checked != ele[i].defaultChecked){
					//alert(ele[i].value);
					//alert(ele[i].defaultValue);	
					return true;
				}
				else{
					return false;
				}
				break;	
				
			case "select-one": 														
				break;																					
			case "checkbox" :								
				if(ele[i].checked != ele[i].defaultChecked){
				//	alert(ele[i].value);
				//	alert(ele[i].defaultValue);
					return true;		
				}
				else{
					return false;											
				}
				break;
			
			default:
				return false;
				break;
		}	
	}
		
	function textCounter(field, maxlimit ) {
		if ( field.value.length > maxlimit ){
			field.value = field.value.substring( 0, maxlimit );
			alert( 'Comments can only be 2000 characters in length.' );
			return false;
		}
	}
	
	function IsEmail(email){
		if (email.indexOf(" ") >= 0){ // check for invalid chars (NOT all inclusive)
			return false;
		}

		if (email.indexOf(",") >= 0){
			return false;
		}

		if (email.indexOf(";") >= 0){
			return false;
		}

		var char1 = "@";
		var char2 = ".";

		var testchar1 = email.indexOf(char1);
		var testchar2 = email.indexOf(char2,testchar1 + 2); //this checks that there is at least 1 char between @ and .

		if (testchar1 == -1 || testchar2 == -1){
			return false;
		}

		if (testchar1 == 0 || testchar2 + 1 == email.length){ // this checks that there is an @ and a . somewhere after it, and that the period is not the last char
			return false;
		}
		
		return true;
	}
	
	function check_form(NameOfForm){

		if (NameOfForm.firstname.value == ""){
			alert("Please enter your First Name");
			NameOfForm.firstname.focus();
			return false;
		}
			
		if (NameOfForm.lastname.value == ""){
			alert("Please enter your Last Name");
			NameOfForm.lastname.focus();
			return false;
		}
	
				
		if (NameOfForm.email.value == ""){
			alert("Please enter a valid email address");
			NameOfForm.email.focus();
			return false;
		}
		
		if (!IsEmail(NameOfForm.email.value)){
			alert("Please enter a valid email address");
			NameOfForm.email.focus();
			return false;
		}
				
		if (NameOfForm.phone.value == ""){
			alert("Please enter your phone number");
			NameOfForm.phone.focus();
			return false;
		}

		if (NameOfForm.title.value == ""){
			alert("Please enter your title");
			NameOfForm.title.focus();
			return false;
		}
		
		if (NameOfForm.company.value == ""){
			alert("Please enter your company");
			NameOfForm.company.focus();
			return false;
		}
		
		
		if (NameOfForm.city.value == ""){
			alert("Please enter your City");
			NameOfForm.city.focus();
			return false;
		}		
		
		if ((NameOfForm.cbostate.selectedIndex == -1 ) ||(NameOfForm.cbostate.options[NameOfForm.cbostate.selectedIndex].value == '')){
			alert('Please select your state/province.');
			NameOfForm.cbostate.focus();
			return false;
		}
		

		if ((NameOfForm.cboemployees.selectedIndex == -1 ) || (NameOfForm.cboemployees.options[NameOfForm.cboemployees.selectedIndex].value == '')){
			alert('Please select number of employees.');
			NameOfForm.cboemployees.focus();
			return(false);
		}
						
		return true;
	}	
	
	function SetChangeFlag(FormName){								
		FormName.hddnIsFormChanged.value = "Y";
	}	
	