	function ge(name) {
		try {
		    	return document.getElementById(name);
		}catch(e){ }
	}
	
	function checkEmail(emailStr) {
	   if (emailStr.length == 0) {
	       return true;
	   }
	   var emailPat=/^(.+)@(.+)$/;
	   var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]";
	   var validChars="\[^\\s" + specialChars + "\]";
	   var quotedUser="(\"[^\"]*\")";
	   var ipDomainPat=/^(\d{1,3})[.](\d{1,3})[.](\d{1,3})[.](\d{1,3})$/;
	   var atom=validChars + '+';
	   var word="(" + atom + "|" + quotedUser + ")";
	   var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	   var domainPat=new RegExp("^" + atom + "(\\." + atom + ")*$");
	   var matchArray=emailStr.match(emailPat);
	   if (matchArray == null) {
	       return false;
	   }
	   var user=matchArray[1];
	   var domain=matchArray[2];
	   if (user.match(userPat) == null) {
	       return false;
	   }
	   var IPArray = domain.match(ipDomainPat);
	   if (IPArray != null) {
	       for (var i = 1; i <= 4; i++) {
	          if (IPArray[i] > 255) {
	             return false;
	          }
	       }
	       return true;
	   }
	   var domainArray=domain.match(domainPat);
	   if (domainArray == null) {
	       return false;
	   }
	   var atomPat=new RegExp(atom,"g");
	   var domArr=domain.match(atomPat);
	   var len=domArr.length;
	   if ((domArr[domArr.length-1].length < 2) ||
	       (domArr[domArr.length-1].length > 6)) {
	       return false;
	   }
	   if (len < 2) {
	       return false;
	   }
	   return true;
	}

function validateEmail(fieldname){
            var number = document.getElementById (fieldname);
            number.className = 'form-text';

            var numval = number.value;
            if(numval == "") {
            	return true;
            }
            
            if (!checkEmail(number.value)) {
                        alert("Invalid email format.\n");
						number.select();
	                    number.className = 'error';
                        number.focus();
                        return false;
            }
             else{
                        return true;
           }
}	

function validatePhone(fieldname){
            var number = document.getElementById (fieldname);
            number.className = 'form-text';

            var numval = number.value;
            if(numval == "") {
            	return true;
            }
            var valid = numval.search(/^\d\d\d-\d\d\d-\d\d\d\d$/);
            if (valid == -1) {
                        alert("The Phone number is not in the requested format. Please enter again.\n");
						number.select();
                        number.className = 'error';
                        number.focus();
                        return false;
            }
             else{
                        return true;
           }
}


function check_form(){
	
	if(ge("edit-first-name").value=='') {
		alert("Please enter your First Name.");
		ge("edit-first-name").className = 'error';
		ge("edit-first-name").focus();
		return false;
	} else ge("edit-first-name").className = 'form-text';

	if(ge("edit-title").value=='') {
		alert("Please enter your Title.");
		ge("edit-title").className = 'error';
		ge("edit-title").focus();
		return false;
	} else ge("edit-title").className = 'form-text';

	if(ge("edit-department").value=='') {
		alert("Please enter your Department.");
		ge("edit-department").className = 'error';
		ge("edit-department").focus();
		return false;
	} else ge("edit-department").className = 'form-text';

	if(ge("edit-company").value=='') {
		alert("Please enter your Company.");
		ge("edit-company").className = 'error';
		ge("edit-company").focus();
		return false;
	} else ge("edit-company").className = 'form-text';

	if(ge("edit-phone").value=='') {
		alert("Please enter your Phone.");
		ge("edit-phone").className = 'error';
		ge("edit-phone").focus();
		return false;
	} else ge("edit-phone").className = 'form-text';

	if(ge("edit-email-address").value=='') {
		alert("Please enter your Email Address.");
		ge("edit-email-address").className = 'error';
		ge("edit-email-address").focus();
		return false;
	} else ge("edit-email-address").className = 'form-text';

	if(!checkEmail(ge("edit-email-address").value)) {
		alert("The Email Address  is not in the requested format. Please enter again.");
		ge("edit-email-address").className = 'error';
		ge("edit-email-address").focus();
		return false;
	} else ge("edit-email-address").className = 'form-text';
	
	if(ge("edit-comments").value=='') {
		alert("Please enter your Comments.");
		ge("edit-comments").className = 'error';
		ge("edit-comments").focus();
		return false;
	} else ge("edit-comments").className = 'form-text';

	return true;
}

function fsubmit(bp)
{
	var xmlHttp;
	try { xmlHttp = new XMLHttpRequest(); }
	catch(e) {
	var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0", "MSXML2.XMLHTTP.5.0", "MSXML2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP");
	for (var i=0; i<XmlHttpVersions.length && !xmlHttp; i++) {
	  try { xmlHttp = new ActiveXObject(XmlHttpVersions[i]); } 
	  catch (e) {}
	}
	}
	if (!xmlHttp)
	alert("Error creating the XMLHttpRequest object.");
	
	
	var query = [];
	
	query[query.length] = escape('first_name') + "=" + escape(ge('edit-first-name').value);
	query[query.length] = escape('last_name')  + "=" + escape(ge('edit-last-name').value);
	query[query.length] = escape('title')      + "=" + escape(ge('edit-title').value);
	query[query.length] = escape('department') + "=" + escape(ge('edit-department').value);
	query[query.length] = escape('company')    + "=" + escape(ge('edit-company').value);
	query[query.length] = escape('phone')      + "=" + escape(ge('edit-phone').value);
	query[query.length] = escape('email_address') + "=" + escape(ge('edit-email-address').value);
	query[query.length] = escape('comments')   + "=" + escape(ge('edit-comments').value);
	
	xmlHttp.open ('GET', '/contact_mail.php?' + query.join('&'), true);
	xmlHttp.send(null);	
//	xmlHttp.send(query.join('&'));	
	
	ge('contact-mail-form').reset();
	alert('Your request has been successfully sent to SteepRock, Inc. Thank you for your time, we will be in touch shortly!');
}
  	
