function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}


function checkshortform (form) {
if (trim(form.code.value) == "") {
	return false;
	}
	return true;
}

function checkform (form) {

	// reset all fields to white
	document.getElementById('error_message_area').style.display='none';
	 form.first_name.style.background = '#FFF';
  form.last_name.style.background = '#FFF';
                form.company_name.style.background = '#FFF';
  form.title.style.background = '#FFF';
                form.address1.style.background = '#FFF';
  form.address2.style.background = '#FFF';
  form.city.style.background = '#FFF';
  form.zip.style.background = '#FFF';
  form.state.style.background = '#FFF';
  form.phone.style.background = '#FFF';
  form.email.style.background = '#FFF';
   form.email.style.background = '#FFF';

	err_status = 0;


	if (form.first_name.value == "" || form.first_name.value == "First Name") {
		err_status = 1;
		form.first_name.style.background = '#FFFFD7';
	}
	if (form.last_name.value == "" || form.last_name.value == "Last Name" ) {
		err_status = 2;
		form.last_name.style.background = '#FFFFD7';
	}

	if (form.company_name.value == "" || form.company_name.value == "Company Name") {
                err_status = 4;
                form.company_name.style.background = '#FFFFD7';
        }
	
	if (form.title.value == "" || form.title.value == "Title") {
		err_status = 4;
		form.title.style.background = '#FFFFD7';
	}

	 if (form.address1.value == "Address 1") {
                err_status = 5;
                form.address1.style.background = '#FFFFD7';
        }	

/* optional	if (form.address2.value == "") {
		err_status = 5;
		form.address2.style.background = '#FFFFD7';
	}
	*/
	
	if (form.city.value == "" || form.city.value == "City") {
		err_status = 6;
		form.city.style.background = '#FFFFD7';
	}
	
	if (form.zip.value == "" || form.zip.value == "Zip") {
		err_status = 7;
		form.zip.style.background = '#FFFFD7';
	} else {
		regex = "^[0-9]+$";
                 if (form.zip.value.search(regex) == -1) {
                        form.zip.style.background = '#FFFFD7';
                        alert ('Your zip code does not appear to be valid (it must be all numbers, for example 01810).');
                        err_status = 13;
                 }
	}
	
	if(form.state.value=="" || form.state.value== "State"){
		err_status = 8;
		form.state.style.background = '#FFFFD7';
	} else {
		 regex = "^[a-zA-Z][a-zA-Z]$";
		 if (form.state.value.search(regex) == -1) {
			form.state.style.background = '#FFFFD7';
                        alert ('Please enter a two letter state, for example "DE", "CT" etc.');
                        err_status = 12;
	         }
	}
  	
	if(form.phone.value=="" || form.phone.value=="Phone Number (optional)"){
	} else {
                 regex = "[a-zA-Z]";
                 if (form.phone.value.search(regex) != -1) {
                        form.phone.style.background = '#FFFFD7';
                        alert ('Please enter a valid phone number (no alpha characters).');
                        err_status = 14;
                 }
        }
	if(form.email.value=="" || form.email.value== "Email"){
		err_status = 11;
		form.email.style.background = '#FFFFD7';
	} else { // validate email format
		regex = "^([a-zA-Z0-9])([a-zA-Z0-9\.\_\-])*@(([a-zA-Z0-9])+(\.))+([a-zA-Z]{2,4})+$";
		if (form.email.value.search(regex) == -1) {
			form.email.style.background = '#FFFFD7';
			alert ('Please enter a valid Email.');
			err_status = 11;
		}
	}

/*	
	// radio and checkboxes
	tschecked = 0;
	for (i=form.total_servers.length-1; i > -1; i--) {
		if (form.total_servers[i].checked) {
			tschecked = 1;
		}
	}
	if (tschecked == 0) {
		err_status = 1;
		document.getElementById('total_servers_label').style.color='#E21708';	
	}

	ejschecked = 0;
	for (i=form.evaluating_job_scheduler.length-1; i > -1; i--) {
		if (form.evaluating_job_scheduler[i].checked) {
			ejschecked = 1;
		}
	}
	if (ejschecked == 0) {
		err_status = 1;
		document.getElementById('enterprise_job_label').style.color='#E21708';	
	}

	lcschecked = 0;
	for (i=form.looking_for_crossplatform_scheduling.length-1; i > -1; i--) {
		if (form.looking_for_crossplatform_scheduling[i].checked) {
			lcschecked = 1;
		}
	}
	if (lcschecked == 0) {
		err_status = 1;
		document.getElementById('crossplatform_label').style.color='#E21708';	
	}

	fields = document.getElementsByName("supervision_solution[]");
	if (isChecked(fields) == false) {
		err_status = 1;
		document.getElementById('supervision_solution_label').style.color='#E21708';			
	}

	fields = document.getElementsByName("job_scheduling_solution[]");
	if (isChecked(fields) == false) {
		err_status = 1;
		document.getElementById('job_solution_label').style.color='#E21708';			
	}

	fields = document.getElementsByName("erp_solution[]");
	if (isChecked(fields) == false) {
		err_status = 1;
		document.getElementById('erp_solution_label').style.color='#E21708';			
	}

	repchecked = 0;
	for (i=form.representative_contact_me.length-1; i > -1; i--) {
		if (form.representative_contact_me[i].checked) {
			repchecked = 1;
		}
	}
	if (repchecked == 0) {
		err_status = 1;
		document.getElementById('rep_contact_label').style.color='#E21708';	
	}

	rechecked = 0;
	for (i=form.receive_email.length-1; i > -1; i--) {
		if (form.receive_email[i].checked) {
			rechecked = 1;
		}
	}
	if (rechecked == 0) {
		err_status = 1;
		document.getElementById('receive_email_label').style.color='#E21708';	
	}

*/

	if(err_status !=0){
		document.getElementById('error_message_area').style.display='block'; 
		document.getElementById('startmessage').style.display = 'none';
		return false ;
	}else{
		return true ;
	}
	
}

function isChecked(fields) {
	isitchecked = 0;
	for (i=fields.length-1; i > -1; i--) {
		if (fields[i].checked) {
			isitchecked = 1;
		}
	}
	if (isitchecked == 0) {
		return false;
	} else {
		return true;
	}
}
