function createRequestObject() {
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        ro = new XMLHttpRequest();
    }
    return ro;
}

var http = createRequestObject();

function sendemail() {
	var gnmsg = document.gnform.gnmsg.value;
	var gnname = document.gnform.gnname.value;
	var gnemail = document.gnform.gnemail.value;
	var gnsubject = document.gnform.gnsubject.value;
	// abfrage
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (filter.test(gnemail) == false)  {
		alert("Bitte korrekte eMail Adresse angeben.");
		document.gnform.gnemail.focus();
	} else if ( gnmsg == '') {
		alert("Eine eMail ohne Text-Inhalt?");
		document.gnform.gnmsg.focus();
	} else {
	// versand
	document.gnform.gnformsend.disabled=true; 
	document.gnform.gnformsend.value='wird gesendet ...';
	document.getElementById('gnLoader').style.display = 'block'; // loader icon
    http.open('get', 'js/contact.php?msg='+gnmsg+'&name='+gnname+'&subject='+gnsubject+'&email='+gnemail+'&action=gnformsend');
    http.onreadystatechange = handleResponse;
    http.send(null);
	}
}

function handleResponse() {

    if(http.readyState == 4){
        var response = http.responseText;
        var update = new Array();

        if(response.indexOf('|' != -1)) {
            update = response.split('|');
            document.getElementById(update[0]).innerHTML = update[1];
			document.getElementById('gnform').style.display = 'none'; // form wird ausgeblendet
			document.getElementById('gnResponse').style.display = 'block'; // antwort wird eingeblendet
        }
    }
}