function getXmlHttpObject()
{
	var xmlHttp=null;

	try
	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e)
	{
		// Internet Explorer
		try
		{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{

			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}

return xmlHttp;
}

function addProd(code, quantity)
{
	var xmlHttp = getXmlHttpObject();
	var page = "ajax_functions.php?";
	var action = "action=add_prod";
	
	var data = "&code=" + code + "&quantity=" + quantity;
		
    xmlHttp.onreadystatechange=function()
	{
		if(xmlHttp.readyState==4)
		{
			//set the value on the form back to 0
			document[code].quantity.value = '';
			renderBasket();
		}
	}
	
    xmlHttp.open("GET", page + action + data, true);
	xmlHttp.send(null);
}

function getBasketItems()
{
	var xmlHttp = getXmlHttpObject();
	var page = "ajax_functions.php?";
	var action = "action=get_basket_items";
	
	/*
    xmlHttp.onreadystatechange=function()
	{
		if(xmlHttp.readyState==4)
		{
			return xmlHttp.responseText;
		}
	}*/
		
    xmlHttp.open("GET", page + action, false);
	xmlHttp.send(null);
	
	return xmlHttp.responseText;
}

function removeProd(code)
{
	var xmlHttp = getXmlHttpObject();
	var page = "ajax_functions.php?";
	var action = "action=remove_prod";
	
	var data = "&code=" + code;
	
    xmlHttp.onreadystatechange=function()
	{
		if(xmlHttp.readyState==4)
		{
			//update the basket
			renderBasket();
		}
	}
	
    xmlHttp.open("GET", page + action + data, true);
	xmlHttp.send(null);
}


function emptyBasket()
{
	
	var xmlHttp = getXmlHttpObject();
	var page = "ajax_functions.php?";
	var action = "action=empty_basket";
	
    xmlHttp.onreadystatechange=function()
	{
		if(xmlHttp.readyState==4)
		{
			renderBasket();
		}
	}
	
    xmlHttp.open("GET", page + action, true);
	xmlHttp.send(null);
}

function renderBasket()
{	
	//call an ajax function to grab the items in the basket
	var items = getBasketItems();
	var remove_image = "images/delete_link.gif";
	
	var tmp_code;
	var tmp_quantity;
	var output = ""; 

	//convert newlines to <br> and add a remove icon for html
	
	items = items.split("\n");


	output += '<table class="renderBasket">';
	
	for(var i=0; i< items.length -1; i=i+2)
	{
		tmp_code = items[i];
		tmp_quantity = items[i+1];
		output += '<tr><td class="basketItem"><a href="search.php?itemCode=' + tmp_code + '">' + tmp_code + '</a></td>';
		output += '<td class="basketQuantity">x&nbsp;' + tmp_quantity + '</td>';
		output += '<td class="basketRemove"><a href="javascript: removeProd(\'' + tmp_code + '\');">' 
		output += '<img src="' + remove_image + '" border="0"><\/a></td></tr>';
	}
	
	output += '</table>';	

	//save it to the basket area in the html
	document.getElementById("basket").innerHTML = output;
}

function loadJS(url)
{
	var newElement = document.createElement("script");
	newElement.src = url;
	newElement.type="text/javascript";
	document.getElementsByTagName("head")[0].appendChild(newElement);
}