// JavaScript Document

function openAjax() {

	var ajax;
	try{
	ajax = new XMLHttpRequest();
	}catch(ee){
	try{
	ajax = new ActiveXObject("Msxml2.XMLHTTP");
	}catch(e){
	try{
	ajax = new ActiveXObject("Microsoft.XMLHTTP");
	}catch(E){
	ajax = false;
	}
	}
	}
	return ajax;
}

function PostForm(FormName){
//	Als POST methode wordt gebruikt dan 
	postvar = "document." + FormName;
	var postformvar = eval(postvar);
	Endpostvar = "";
	for (i=0; i<postformvar.length; i++){
		Endpostvar = Endpostvar + postformvar.elements[i].name + "=" + postformvar.elements[i].value + "&";
	}
	Endpostvar = Endpostvar.substring(0,Endpostvar.length -1);
	return Endpostvar;
}


function OpenAjaxPostCmd(pagina,resultaatid,values,msg,berichtid,methode,tpmsg,zoekstring) { 
// 1
// pagina   	Het bestand wat moet worden aangeroepen   bv check.php

// 2
// resultaatid	Het div ID waar het resultaat in moet worden terug geplaatst

// 3
// Values		als zoekstring  = 1 dan de waarde van variable $ajaxvar= ....
//				als zoekstring  = 0 dan de volledige string beginnend met ?mod=18&pg=16
//				ALS AJAX aangeroepen wordt vanuit een FORM dan bij values de naam van het form 

// 4
// msg			De boodschap die moet worden teruggegeven tijdens loading

// 5
// berichtid	de Div ID waar de Loadingboodschap moet worden geplaatst

// 6
// methode		gebruik 1 voor de POST methode
//				gebruik 0 voor de GET methode

// 7
// tpmsg		gebruik 1 voor het bericht in een andere id als het resultaat
//				gebruik 0 voor het bericht in dezelfde ID als het resultaat 

// 8
// zoekstring	gebruik 1 voor zoek variable
//				gebruik 0 voor gehele string

msg1 = "<img src=\'images/ajax/ajax-open.png\' alt=\'Verbinding maken\' width=\'160\' height=\'30\' />";
msg2 = "<img src=\'images/ajax/ajax-sending.png\' alt=\'Data wordt verzonden\' width=\'160\' height=\'30\' />";
msg3 = "<img src=\'images/ajax/ajax-receiving.png\' alt=\'Server stuurt informatie\' width=\'160\' height=\'30\' />";
msg4 = "<a href=\"index.php\"><img src=\'images/ajax/ajax-loading.gif\' alt=\'Verwerking is klaar\' width=\'160\' height=\'30\' border=\'0\'/></a>";


if(document.getElementById) {
		var ajax = openAjax();
		if(tpmsg=='1'){
			var AjaxLoading = document.getElementById(berichtid);
		}
		var Ajaxresultaat = document.getElementById(resultaatid);
		if(methode=='1'){
			ajax.open("POST", pagina, true);
			ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			ajax.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
			ajax.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
			ajax.setRequestHeader("Pragma", "no-cache");
			// geef de header door aan de send . POST procedure
			exitvar = PostForm(values)
		}else{
			// geef NULL aan de send . mee GET procedure	
			exitvar = null
		
			// Laatste parameter geeft aan of we met de zoek variable werken of er een complete string wordt doorgegeven.			
			if (zoekstring=='1') { 
			values = '?ajaxvar=' + values;
			} 

			// geef hier de ajax opdracht door om de pagina te openen
			ajax.open("GET", pagina + values, true);
		}  
		ajax.onreadystatechange = function() {
			if(ajax.readyState == 1) {
				if(tpmsg=='1'){
					AjaxLoading.style.display = 'inline';
					AjaxLoading.innerHTML = msg1
				}else{
					Ajaxresultaat.innerHTML = msg1
				}
			}
			
			
			if(ajax.readyState == 2) {
				if(tpmsg=='1'){
					AjaxLoading.style.display = 'inline';
					AjaxLoading.innerHTML = msg2
				}else{
					Ajaxresultaat.innerHTML = msg2
				}
			}

				
				if(ajax.readyState == 3) {
				if(tpmsg=='1'){
					AjaxLoading.style.display = 'inline';
					AjaxLoading.innerHTML = msg3
				}else{
					Ajaxresultaat.innerHTML = msg3
				}
			}
			
			
			
			if(ajax.readyState == 4) {
				if(tpmsg=='1'){
					AjaxLoading.innerHTML = msg4
					AjaxLoading.style.display = 'inline';
				}else{
					Ajaxresultaat.innerHTML = msg4
				}
				
				
				if(ajax.status == 200) {
					var resultaat = null;
					resultaat = ajax.responseText;
					resultaat = resultaat.replace(/\+/g," ");
					resultaat = unescape(resultaat);
					Ajaxresultaat.innerHTML = resultaat;
				} else {
					Ajaxresultaat.innerHTML = "<br / ><br / ><center>An error occurred:</center><br / ><br / > <center>" + resultaat + "</center>";
				}
			}
		}
		ajax.send(exitvar);
	}		 
}
