// JavaScript Document
function sendMail()
{
  var absender = document.getElementById("absender").value;
  var betreff = document.getElementById("betreff").value;
  var mail = document.getElementById("email").value;
  var phone = document.getElementById("phone").value;
  var inhalt = document.getElementById("inhalt").value;
  var state = document.getElementById("state");

  if(absender!=''&&betreff!=''&&inhalt!='')
  {
    if(mail==''&&phone=='')
    {
      state.innerHTML="Bitte geben sie eine Mail Adresse oder eine Telephonnummer an!";
    }
    else if(mail!='')
    {
      if(validateEmail(mail)==true)
      {
        doRequest(absender,betreff,mail,phone,inhalt);
      }
      else
      {
        state.innerHTML="Bitte geben sie eine g&uuml;ltige Email Adresse an!";
      }
    }
    else
    { 
      doRequest(absender,betreff,mail,phone,inhalt);
    }
  }
  else
  {
    state.innerHTML="Bitte f&uuml;llen sie alle Felder aus!";
  }

}

function doRequest(absender,betreff,mail,phone,inhalt)
{
    if (window.XMLHttpRequest) {
			request = new XMLHttpRequest();
		} else if (window.ActiveXObject) {
			try {
				request = new ActiveXObject('Msxml2.XMLHTTP');
			} catch (e) {
				try {
					request = new ActiveXObject('Microsoft.XMLHTTP'); 
				} catch (e) {}
			}
		}

		if (!request) {
			alert("Kann keine XMLHTTP-Instanz erzeugen");
			return false;
		} else {
			var url = "./mail.php";
			request.open('post', url, true);
			request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			
			request.send('absender='+absender+'&betreff='+betreff+'&mail='+mail+'&phone='+phone+'&inhalt='+inhalt);
			
			request.onreadystatechange = interpretRequest;
		}
}

	function interpretRequest() {
	  var state = document.getElementById("state");
	  var absender = document.getElementById("absender");
    var betreff = document.getElementById("betreff");
    var mail = document.getElementById("email");
    var phone = document.getElementById("phone");
    var inhalt = document.getElementById("inhalt");
    
		switch (request.readyState) {
			case 4:
				if (request.status != 200) {
					alert("Der Request wurde abgeschlossen, ist aber nicht OK\nFehler:"+request.status);
				} else {
					var content = request.responseText;
          
          if(content=='fail')
            state.innerHTML="Email konnte nicht gesendet werden!";
          
          if(content=='success')
          {
            absender.value='';
            betreff.value='';
            mail.value='';
            phone.value='';
            inhalt.value='';
            state.innerHTML="Email wurde erfolgreich versendet!";
          }
				}
				break;
			default:
				break;
		}
	}
	
  function validateEmail(mail) 
  { 
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$/; 
    return emailPattern.test(mail); 
  } 

