function mailto(username, domain, text) {
  mail = username + '@' + domain;
  text = (typeof(text) === undefined) ? mail : text
  text = text.replace(/<\S[^><]*>/g, '');
  document.write('<a href=\"mailto:' + mail + '\">' + text + '</a>');
}


function valButton(btn) {
  var cnt = -1;
  for (var i = btn.length - 1; i > -1; i--) {
    if (btn[i].checked) {
      cnt = i;
      i = -1;
    }
  }
  return (cnt > -1) ? btn[cnt].value : null;
}


function validateForm(form) {
  if (form.fname && form.fname.value == "") {
    form.fname.focus();
    alert("Please enter a first name.");
    return false;
  }
  
  if (form.lname && form.lname.value == "") {
    form.lname.focus();
    alert("Please enter a last name.");
    return false;
  }
  
  if (form.company && form.company.value == "") {
    form.company.focus();
    alert("Please enter company.");
    return false;
  }
  
  if (form.addr1 && form.addr1.value == "") {
    form.addr1.focus();
    alert("Please enter an address.");
    return false;
  }
  
  if (form.city && form.city.value == "") {
    form.city.focus();
    alert("Please enter a city.");
    return false;
  }
  
  if (form.state) {
    if ((form.state.tagName == 'SELECT') && (form.state.options[form.state.selectedIndex].value == "")) {
      alert("Please select a state/region.");
      return false;
    } else if ((form.state.tagName == 'INPUT') && (form.state.value == "")) {
      alert("Please enter a state/region.");
      return false;
    }
  }
  
  if (form.zip && form.zip.value == "") {
    form.zip.focus();
    alert("Please enter a zip code.");
    return false;
  }
  
  if (form.phone && form.phone.value == "") {
    form.phone.focus();
    alert("Please enter a phone number.");
    return false;
  }
  
  if (form.email && form.email.value == "") {
    form.email.focus();
    alert("Please enter a valid email address.");
    return false;
  }
  
  if (form.email) {
    var str = form.email.value;
    var regex = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    if (!regex.test(str)) {
      form.email.focus();
      alert("Please enter a valid email address.");
      return false;
    }
  }
  
  if (form.email && form.email.value == "") {
    form.email.focus();
    alert("Please enter a valid email address.");
    return false;
  }
  
  if (form.employees && form.employees.value == "") {
    form.employees.focus();
    alert("Please enter number of employees.");
    return false;
  }
  
  if (form.service) {
    var btn = valButton(form.service);
    if (btn == null) {
      alert("Please select a service.");
      return false;
    }
  }
  return true;
}




/* Author: Andrew Sohn */


function subNavShow(id) {
  var divs = document.getElementById('Subnavigation').getElementsByTagName('div');
  for (var div = 0; div < divs.length; div++) {
    divs[div].style.display = "none";
  }
  if (document.getElementById('subnav_'+id)) {
    /*document.getElementById('Navigation')   .style.borderBottomWidth = "0px"
    document.getElementById('Subnavigation').style.borderBottomWidth = "1px"*/
    document.getElementById('subnav_'+id).style.display = '';
  }/* else {
    document.getElementById('Navigation')   .style.borderBottomWidth = "1px"
    document.getElementById('Subnavigation').style.borderBottomWidth = "0px"
  }*/
}



/* Author: Andrew Sohn */
var xmlhttp = '';
var xmlhttp_obj;
function getXmlHttpRequest() {
  var r = false;  //request
  
  if (window.XMLHttpRequest) {  // Mozilla, Safari, etc ...
    r = new XMLHttpRequest();
    if (r.overrideMimeType) {
      r.overrideMimeType('text/xml');
    }
  } else if (window.ActiveXObject) {  // IE
    try {
      r = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(err) {
      try {
        r = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(err) {
        r = false;
      }
    }
  }
  return r;
}
function ajaxGet(obj, file, params, evnt) {
  xmlhttp_obj = obj;
  
  xmlhttp = getXmlHttpRequest();
  if (!xmlhttp) {return;}
  
  if (params.length > 0) {
    file = file+'?'+params;
  }
  
  xmlhttp.open("GET", file, true);
  xmlhttp.onreadystatechange = printContent;
  xmlhttp.send(null);
  
  if (evnt && evnt.preventDefault()) {evnt.preventDefault();}
  
  return false;
}
function printContent() {
  if (xmlhttp.readyState == 4) {
    xmlhttp_obj.other = xmlhttp.responseText;
  } else {
    return false;
  }
}
