function validate(){
	var msg = 'Please complete the following fields:\n\n';
	
	if(document.bid_form.project_name.value == ''){
		msg += '- Project name\n';
	}
	
	if(document.bid_form.estimator_name.value == ''){
		msg += '- Estimator name\n';
	}
	
	if(document.bid_form.phone_number.value != "")
	   if(!document.bid_form.phone_number.value.match(/^\d+$/))
		  msg += '- Phone: invalid format, please enter numbers only\n';
		  
	if(document.bid_form.fax.value != "")
	   if(!document.bid_form.fax.value.match(/^\d+$/))
		  msg += '- Fax: invalid format, please enter numbers only\n';
	
	if(document.bid_form.email_address.value == '')
		msg += '- Email Address\n';
	else {
		if(!checkEmail(document.bid_form.email_address.value))
			msg += '- Invalid E-Mail address\n';
	}
	
	if(msg == 'Please complete the following fields:\n\n'){
		document.bid_form.submit();
	}
	else {
		alert(msg);	
	}
}

function checkEmail(str) {
	var at="@";
	var dot=".";
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1){
	   return false
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   return false
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		return false
	}

	 if (str.indexOf(at,(lat+1))!=-1){
		return false
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		return false
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
		return false
	 }
	
	 if (str.indexOf(" ")!=-1){
		return false
	 }

	 return true					
}
