// JavaScript Document

<script type='text/javascript'>

// Removes white-space from both the left and right sides of
// the provided string.
function trim(s) {
  if (s == null) {
    return '';
  }
  var i;
  for (i = 0; i < s.length; i++) {
    var c = s.charAt(i);
    if (c != ' ' && c != '\n' && c != '\r' && c != '\t') {
      break;
    }
  }
  var j;
  for (j = s.length -1; j >= i; j--) {
    c = s.charAt(j);
    if (c != ' ' && c != '\n' && c != '\r' && c != '\t') {
      break;
    }
  }
  return j < i ? '' : s.substring(i, j+1);
}

function validBasic(vb) { return vb.value != vb.defaultValue && trim(vb.value) != ''; }
function validName(vn) { return validBasic(vn) && trim(vn.value).indexOf(" ") >= 0; }
function validMail(vm) {
  var m = trim(vm.value);
  var u = m.indexOf("@");
  var x = m.lastIndexOf("@");
  var y = m.lastIndexOf(".");
  var z = m.indexOf(" ");
  return u >= 1 && u == x && y > x + 1 && m.length > y + 2 && z < 0 && validBasic(vm);
}

function validForm(f) {
  var name = document.getElementById('form-bPTwD2tzmMaJ');
  var mail = document.getElementById('form-I8Xmmn41lyRA');
  var city = document.getElementById('form-city');
  var nameStat = document.getElementById('name-status');
  var mailStat = document.getElementById('email-status');
  var cityStat = document.getElementById('city-status');
  
  var valid = true;
  if (!validName(name)) {
    valid = false;
    nameStat.className = 'on';
  } else {
    nameStat.className = 'off';
  }

  if (!validMail(mail)) {
    valid = false;
    mailStat.className = 'on';
  } else {
    mailStat.className = 'off';
  }
  
  if (!validBasic(city)) {
    valid = false;
    cityStat.className = 'on';
  } else {
    cityStat.className = 'off';
  }

  return valid;
}

function sendLetter(f) {
  if (!validForm(f)) {
    return;
  }
  if (document.getElementById('ajax.url').value != '') {
    // prevent double click
    return;
  }
  document.getElementById("sendStatus").className="on";

  var url =  f.action + '?';
  var nl = f.getElementsByTagName('input');
  for (var i = 0; i < nl.length; i++) {
    var n = nl.item(i);
    if (n.type == 'checkbox') {
      if (n.checked) {
        url += (n.name + "=" + n.value + "&");
      }
    } else if (n.className != 'attention' && n.type != 'submit') {
      url += (n.name + "=" + n.value + "&");
    }
  }
  nl = f.getElementsByTagName('select');
  for (i = 0; i < nl.length; i++) {
    n = nl.item(i);
    url += (n.name + "=" + n.value + "&");
  }
  url += "ajax=1";
  
  document.getElementById('ajax.url').value = url;
  setTimeout("sendEmailAjax()",250);
}

var xmlhttp;
function sendEmailAjax()
{
    var url = document.getElementById('ajax.url').value;
    xmlhttp=null;
    if (window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest(); }
    else if (window.ActiveXObject) { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); }
    if (xmlhttp!=null)
    {
        xmlhttp.onreadystatechange=handleAJAX;
        xmlhttp.open("GET",url,true);
        xmlhttp.send(null);
    }
    else
    {
        alert("Your browser does not support AJAX as required for this page.");
    }
}

function handleAJAX() {if (xmlhttp.readyState==4 && xmlhttp.status==200){
  var yes = document.getElementById("yesSent");
  var not = document.getElementById("notSent");
  not.className = "off";
  yes.className = "on";

  var sendStat = document.getElementById("sendStatus");
  sendStat.firstChild.data = "Sent!";

}return true;}

</script>
