// JavaScript Document

window.onload = function() {
	setTimeout(correctGoogle, 500);
}

function correctGoogle()
{
	document.getElementById("googlecart-widget").style.position = 'relative';
	document.getElementById("googlecart-widget").style.height = 'auto';
	document.getElementById("googlecart-widget").style.width = '230px';
	document.getElementById("googlecart-widget").style.display = 'block';
	setTimeout(correctGoogle, 500);
}

function init()
{
	// Get Elements
	var total = document.getElementById('ontotal');
	var cart = document.getElementById('oncart');
	cart.innerHTML = '';
	var ctemp = false;
	
	// Get Items
	var x=0;
	var endT = 0;
	while(x != 20)
	{
		Item = getCookie("Item["+x+"]['Name']");
		if(Item == null || Item == '')
		{
			if(x==19 && ctemp == false)
			{
				cart.innerHTML = 'You have no items in your cart.';
				total.style.display = 'none';
				break;
			}
			x++;
			continue;
		}
		else
		{
			var Price = getCookie("Item["+x+"]['Price']");
			Price = parseFloat(Price);
			var Quantity = getCookie("Item["+x+"]['Quantity']");
			Quantity = parseFloat(Quantity);
			var Type = getCookie("Item["+x+"]['Type']");
			cart.innerHTML += '<div style="width: 160px;float:left;">' + Quantity + 'x ' + Item + '<input type="hidden" name="item_name_'+x+'" value="'+ Item +'"/><input type="hidden" name="item_description_'+x+'" value="' + Quantity + 'x ' + Item + ' ('+ Type +')"/></div><div style="width: 50px;float: left;">&pound;' + (Price * Quantity) + '<input type="hidden" name="item_price_'+x+'" value="' + (Price * Quantity) + '"/></div><div style="float:left;"><a href="javascript:removeItem(' + x + ');" alt="Remove" title="Remove">[x]</a></div><br />';
			endT = endT + (Price * Quantity);
			
			total.innerHTML = '<br />Cart Total: &pound;' + number_format(endT) + '<div style="text-align:center;"><input type="image" name="Google Checkout" alt="Fast checkout through Google" src="http://sandbox.google.com/checkout/buttons/checkout.gif?merchant_id=802565799925682&amp;w=180&amp;h=46&amp;style=white&amp;variant=text&amp;loc=en_GB" height="46" width="180"></div>';
			total.style.fontWeight = 'bold';
			total.style.fontSize = '14px';
			total.style.display = 'block';
			ctemp = true;
		}
		x++;
	}
}

function setCookie(name, value, days)
{
	// Dates
	var cDate = new Date();	
	cDate.setDate(cDate.getDate()+days);
	// Set Cookie
	document.cookie = name + '=' + escape(value) + '; expires=' + cDate.toGMTString() + '; path=/';
}

function getCookie(c_name)
{
	if (document.cookie.length>0)
	{
		//alert("ok");
		c_start=document.cookie.indexOf(c_name + "=");
		if (c_start!=-1)
		{ 
			c_start=c_start + c_name.length+1; 
			c_end=document.cookie.indexOf(";",c_start);
			
			if (c_end==-1) c_end=document.cookie.length;
			return unescape(document.cookie.substring(c_start,c_end));
			//alert(document.cookie.substring(c_start,c_end));
		} 
	}
	return "";
}

function addItem(id, name, price, delivery, type)
{
	setCookie("Item["+id+"]['Name']", name, 30);
	setCookie("Item["+id+"]['Type']", type, 30);
	setCookie("Item["+id+"]['Price']", price, 30);
	setCookie("Item["+id+"]['Delivery']", delivery, 30);
	Quant = getCookie("Item["+id+"]['Quantity']");
	Quant = ((Quant==null || Quant == '') ? 0 : Quant);
	setCookie("Item["+id+"]['Quantity']", parseFloat(Quant)+1, 30);
	
	init();
}

function removeItem(id)
{
	setCookie("Item["+id+"]['Name']", 0, -1);
	setCookie("Item["+id+"]['Price']", 0, -1);
	setCookie("Item["+id+"]['Delivery']", 0, -1);
	setCookie("Item["+id+"]['Quantity']", 0, -1);
	setCookie("Item["+id+"]['Type']", 0, -1);
	
	init();
}

function number_format( number, decimals, dec_point, thousands_sep ) {
 
    var n = number, prec = decimals;
    n = !isFinite(+n) ? 0 : +n;
    prec = !isFinite(+prec) ? 0 : Math.abs(prec);
    var sep = (typeof thousands_sep == "undefined") ? ',' : thousands_sep;
    var dec = (typeof dec_point == "undefined") ? '.' : dec_point;
 
    var s = (prec > 0) ? n.toFixed(prec) : Math.round(n).toFixed(prec); //fix for IE parseFloat(0.55).toFixed(0) = 0;
 
    var abs = Math.abs(n).toFixed(prec);
    var _, i;
 
    if (abs >= 1000) {
        _ = abs.split(/\D/);
        i = _[0].length % 3 || 3;
 
        _[0] = s.slice(0,i + (n < 0)) +
              _[0].slice(i).replace(/(\d{3})/g, sep+'$1');
 
        s = _.join(dec);
    } else {
        s = s.replace('.', dec);
    }
 
    return s;
}