/*
Nerd - Nieuws en Redactie Ding

(C) 2009, Computer Service Wieberdink, Putten
*/

// Ajax threads
var cart_req = null;
var data_req = null;

// General streaming functions
function ajax_create_stream() {
	if (window.XMLHttpRequest)     // Object of the current windows
	{ 
		return new XMLHttpRequest();     // Firefox, Safari, ...
	} 
	else 
	{
		 if (window.ActiveXObject)   // ActiveX version
		 {
			return new ActiveXObject("Microsoft.XMLHTTP");  // Internet Explorer 
		 } 
	}
	//	return window.XMLHttpRequest ? new XMLHttpRequest() : (window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : null);
}

function ajax_do_request(req, url, callback) {
	try {
		req.open ("GET", url, true);
		req.onreadystatechange = callback;
		req.send (null);
	} catch (e) {
	}
	return req;
}

function ajax_do_post_request(req, url, data, callback) {
	try {
		req.open ("POST", url, true);
		req.onreadystatechange = callback;
		req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 
		req.send (data);
	} catch (e) {
	}
	return req;
}

function ajax_sendData(sURL) {
	data_req=ajax_create_stream();
	ajax_do_request(data_req, sURL,ajax_sendData_finished);
}
function ajax_sendData_finished() { 
	if(data_req.readyState==4) { // All data received
//	alert(order_req.responseText);
	}
}


// Vote request
function ajax_setorder(sXML) {
	order_req=ajax_create_stream();
	ajax_do_post_request(order_req,'setorder.php', "data=" + escape(sXML), ajax_setorder_finished);
}
function ajax_setorder_finished() { 
	if(order_req.readyState==4) { // All data received
//	alert(order_req.responseText);
	}
}

// Autofill op een textfield
function ajax_autofill(what,query) {
	if(what.value=='') { return false; }
	if(what.value==what.lastValue) { return false; }
	autofill_ajax = ajax_create_stream();
	autofill_obj=what;
	what.lastValue=what.value;
	var req_url=query+escape(what.value);
	autofill_ajax = ajax_do_request (autofill_ajax, req_url, ajax_autofill_dataArrived);
}
function ajax_autofill_dataArrived() {
	if (autofill_ajax.readyState == 4 && autofill_ajax.status == 200) {
		var res = autofill_ajax.responseText;
		if(res!='0') {
			res=res.replace("\r","");
			var p=res.split("\n");
			if((autofill_obj.value == p[0]) && (p[0] != p[1])) {
				autofill_obj.value=p[1];
				if(autofill_obj.createTextRange) { // Internet Explorer-versie
					var range=autofill_obj.createTextRange();
					range.moveStart("character",p[0].length);
					range.select();
				} else { // Firefox
					autofill_obj.focus();
					autofill_obj.setSelectionRange(p[0].length,autofill_obj.value.length);
				}
			}
		}
		autofill_ajax=null;
	}
}
var autofill_ajax=null;
var autofill_obj=null;

function fillElement(id, tekst)
{
	var obj = document.getElementById(id);
	if (obj != undefined)
	{
		obj.innerHTML = tekst;
	}
} 

function loadCart()
{
	cart_req = ajax_create_stream();
	ajax_do_request(cart_req, "./ajax_cart.php", loadCart_finished);
}
function loadCart_finished()
{
	if(cart_req.readyState==4) 
	{
		document.getElementById('c').innerHTML = cart_req.responseText;
	}
}

function addCart(aid, amount)
{
	cart_req = ajax_create_stream();
	ajax_do_request(cart_req, "./ajax_addcart.php?aid=" + aid + "&amount=" + amount, addCart_finished);
}
function addCart_finished()
{
	if(cart_req.readyState==4) 
	{
		if (cart_req.responseText != '')
		{
			eval(cart_req.responseText);
		}

		loadCart();
	}
}

