function createRequestObject() {
	
	var req;
	
	if(window.XMLHttpRequest) {
		req = new XMLHttpRequest();
	} else if(window.ActiveXObject){
		req = new ActiveXObject("Microsoft.XMLHTTP");
	} else {
		alert('Problem creating the XMLHttRequest object');
	}
	
	return req;
}

var http = createRequestObject();

var nocache = 0;

function postcode() {
	//Optional: Show a waiting message in the layer with ID login_response;
	//document.getElementById('login_response').innerHTML = "Controleren...";
	
	var postcode = document.getElementById('postcode').value;
	document.getElementById('login_form').style.display= "none";
	nocache = Math.random();
	http.open('get', 'postcode-check.php?postcode='+postcode+'&nocache='+nocache);
	http.onreadystatechange = postcodeReply;
	http.send(null);
}

function postcodeReply() {
	if(http.readyState == 4 && http.status == 200) {
		var response = http.responseText;
		if(response == 0)
			window.location = "http://dominos.thuisbezorgd.nl/";
		else
			document.getElementById('login_response').innerHTML = response;
	}
}

function filiaal(bezorggebied, postcode) {
	var postcode = encodeURI(document.getElementById('postcode').value);
	
	nocache = Math.random();
	http.open('get', 'filiaal-check.php?postcode='+postcode+'&bezorggebied='+bezorggebied+'&nocache='+nocache);
	http.onreadystatechange = filiaalReply;
	http.send(null);
}

function filiaalReply() {
	if(http.readyState == 4 && http.status == 200) {
		var response = http.responseText;
		if(response == 0) {
			// Postcode klopt
			window.location = "menu.php";
		} else {
			//window.location = "/";
		}
	}
}

function inloggen() {
	var error_string = "";
	if(document.inlogform.emailadres.value == "")
		error_string = "E-mailadres\n";
	
	if(document.inlogform.wachtwoord.value == "")
		error_string += "Wachtwoord\n";
	
	if(error_string == ""){
		email = document.inlogform.emailadres.value;
		wachtwoord = document.inlogform.wachtwoord.value;
		nocache = Math.random();
		http.open('get','login.php?email='+email+'&ww='+wachtwoord+'&nocache='+nocache);
		http.onreadystatechange = loginReply;
		http.send(null);
	} else
		alert("Geef onderstaande gegevens op om in te loggen:\n\n"+error_string);
}

function loginReply() {
	if(http.readyState == 4 && http.status == 200) {
		var response = http.responseText;
		if(response == 0) {
			// Inlog klopt
			window.location = "afrekenen.php";
		} else if(response == 1) {
			alert("Dit e-mailadres is niet bij ons bekend.");
		} else if(response == 2) {
			alert("E-mailadres en wachtwoord komen niet overeen.");
		}
	}
}

function registreren() {
	var error_string = "";
	if(document.regiform.voornaam.value == "")
		error_string += "Voornaam\n";
	if(document.regiform.achternaam.value == "")
		error_string += "Achternaam\n";
	if(document.regiform.telefoon.value == "")
		error_string += "Telefoon\n";
	if(document.regiform.straat.value == "")
		error_string += "Straat\n";
	if(document.regiform.nummer.value == "")
		error_string += "Nummer\n";
	if(document.regiform.postcode.value == "")
		error_string += "Postcode\n";
	if(document.regiform.plaats.value == "")
		error_string += "Plaats\n";
	if(document.regiform.emailadres.value == "")
		error_string += "E-mailadres\n";
	
	if(document.regiform.wachtwoord.value.length > 0 && document.regiform.wachtwoord.value != document.regiform.wachtwoord_herhaal.value)
		error_string = error_string + "Wachtwoord ontbreekt of is niet gelijk \n";
	
	if(error_string == ""){
		document.regiform.submit();
	} else
		alert("Geef onderstaande gegevens op om in te loggen:\n\n"+error_string);
}

function clear(regel, actie) {
	if(actie == "cl" || actie =="del"){
		if(regel == 0) 
			tekst = "Wilt u de bestelling legen?";
		else
			tekst = "Wilt u deze bestellingregel verwijderen?";
		
		if(confirm(tekst)){
			nocache = Math.random();
			http.open('get','kader.php?regel='+regel+'&actie='+actie+'&nocache='+nocache);
			http.onreadystatechange = clearReply;
			http.send(null);
		}
	} else if (actie == "refr") {
		nocache = Math.random();
		http.open('get','kader.php?regel='+regel+'&actie='+actie+'&nocache='+nocache);
		http.onreadystatechange = clearReply;
		http.send(null);
	}
}

function raise(regel) {
	nocache = Math.random();
	http.open('get','kader.php?regel='+regel+'&actie=verhoog&nocache='+nocache);
	http.onreadystatechange = clearReply;
	http.send(null);
}

function lower(regel) {
	nocache = Math.random();
	http.open('get','kader.php?regel='+regel+'&actie=verlaag&nocache='+nocache);
	http.onreadystatechange = clearReply;
	http.send(null);
}

function clearReply() {
	if(http.readyState == 4 && http.status == 200) {
		var response = http.responseText;
		document.getElementById('comment').innerHTML = response;
	}
}

function checkKorting(kortingscode) {
	var nocache = Math.floor(Math.random()*1001);
	http.open('get','actie.php?code='+kortingscode+'&nocache=' +nocache);
	http.onreadystatechange = handleResponseKortingscode;
	http.send(null);
}

function handleResponseKortingscode() { 
	if(http.readyState == 4 && http.status == 200){ 
		if(http.responseText) { 
			document.getElementById("kortingscode").innerHTML = http.responseText;
			
		} else { 
			document.getElementById("kortingscode").innerHTML = ""; 
		} 
	} else { 
		document.getElementById("kortingscode").innerHTML = "";
	} 
}

