var httpRequest;
function checkRequestStatus(fnc) {
	if(httpRequest.readyState == 4) { // request complete
		if(httpRequest.status == 200) { // ok
			var response = eval("o = " + httpRequest.responseText);
			if(response) window[fnc](response);
		} else {
			alert("There was a problem retrieving the ecma data:\n" + httpRequest.status);
		}
	}
}

function isEmail(email) {
	var l = email.length;
	if(l < 5) return false;
	var s = "*|,\":<>[]{}`';()&$#%";
	for(var i=0; i<l; i++) if(s.indexOf(email.charAt(i)) != -1) return false;
	var at = email.lastIndexOf("@");
	if(at < 1 || at == l - 1) return false;
	var dot = email.lastIndexOf(".");
	if(dot < 4 || dot > l - 3) return false;
	if(at > dot) return false;
	return true;
}

function onMailSent(response) {
	if(response.error != undefined) {
		var span = document.getElementById("error");
			span.innerHTML = response.error;
			window.location.hash = 'error';
	} else {
		var form = document.getElementById("contact");
			form.innerHTML = response.success;
	}
}

function mail(referer) {
	var gender = document.getElementsByName("contact_gender")[0].value;
	var name = document.getElementsByName("contact_name")[0].value;
	var phone = document.getElementsByName("contact_phone")[0].value;
	var email = document.getElementsByName("contact_email")[0].value;
	var website = document.getElementsByName("contact_website")[0].value;
	var network = document.getElementsByName("contact_network")[0].options[document.getElementsByName("contact_network")[0].options.selectedIndex].value;
	var partnerid = document.getElementsByName("contact_partnerid")[0].value;
	var message = document.getElementsByName("contact_message")[0].value;
	/** if(name == '' || phone == '' || email == '' || website == '' || network == '') {
		var response = new Object();
			response.error = "Bitte füllen Sie alle Pflichtfelder aus.";
		onMailSent(response);
		return;
	} **/
	if(!isEmail(email)) {
		var response = new Object();
			response.error = "Bitte geben Sie eine gültige E-Mail-Adresse an.";
		onMailSent(response);
		return;
	}
	
	var post = "gender=" + gender + "&name=" + name + "&phone=" + phone + "&email=" + email + "&website=" + website + "&network=" + network + "&partnerid=" + partnerid + "&message=" + message + "&referer=" + referer;
	
	if(window.XMLHttpRequest) {
		httpRequest = new XMLHttpRequest();
	} else if(window.ActiveXObject) {
		httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	if(httpRequest) {
		httpRequest.onreadystatechange = function() { checkRequestStatus('onMailSent'); };
		httpRequest.open("POST", "http://affiliate.dorst-emarketing.de/wp-content/themes/asterisk/contact-process2.php", true);
		httpRequest.setRequestHeader("content-type", "application/x-www-form-urlencoded; charset=utf-8");
		httpRequest.send(post);
	}
}
