jQuery(document).ready(function() {
	displayCart();
});

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

Number.prototype.formatMoney = function(c, d, t){
    var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, d = d == undefined ? "," : d, t = t == undefined ? "." : t, s = n < 0 ? "-" : "",
    i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;
    return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t)
    + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
};

function CommaFormatted(amount)
{
	var strAmount = amount + '';
	var delimiter = ","; // replace comma if desired
	var a = strAmount.split('.',2)
	var d = a[1];
	var i = parseInt(a[0]);
	if(isNaN(i)) { return ''; }
	var minus = '';
	if(i < 0) { minus = '-'; }
	i = Math.abs(i);
	var n = new String(i);
	var a = [];
	while(n.length > 3)
	{
		var nn = n.substr(n.length-3);
		a.unshift(nn);
		n = n.substr(0,n.length-3);
	}
	if(n.length > 0) { a.unshift(n); }
	n = a.join(delimiter);
	if(d.length < 1) { strAmount = n; }
	else { strAmount = n + '.' + d; }
	strAmount = minus + strAmount;
	return strAmount;
}

function getKey(name,textToSearch)
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( '?' + textToSearch );
  //window.location.href
  if( results == null )
    return "";
  else
    return results[1];
}

function UrlFullDecode(str) {
	str = str.replace('%*','%');
	str = unescape(str);
	return str;
}

function getVariables() {
	var parameters = readCookie('ysw-fc-parms');
	var varArray = new Array;
	if (parameters) {
		var paramArray = parameters.split('&');
		for (var i=0;i < paramArray.length;i++) {
			//get each parameter and store in a variable array 
			var fields = paramArray[i].split('=');
			varArray[fields[0]] = UrlFullDecode(fields[1]);
		}
	}
	return varArray;
}

function displayCart() {
	
	var variables = getVariables();
   if (!variables['howMany']) {
		jQuery("#floatingCartContents").innerHTML = 'nocart';
		return;  // we have no data
	}
	
   if (variables['howMany'] == 0) {
		jQuery("#floatingCartContents").innerHTML = 'homany';
		return;  // we have no data
	}

	var onOff = 0;
	if (onOff == 0) {
		var sepLine = '<tr><td colspan="2" class="left-nav-seperator"><img src="http://us.st1.yimg.com/store1.yimg.com/Img/trans_1x1.gif" height=1 width=1 border=0 alt="pad"></td></tr>';
		var freeShipThreshold = 100;
		var totalPrice = 0;
		var cookieData = '<table align=center border=0 cellpadding=0 cellspacing=0 id="fc_box"><tr><td><form method=post action=http://' + variables['server'] + '/ymix/MetaController.html>';
		for (varName in variables) {
			if (varName != 'howMany' && varName != 'server') {
				cookieData += '<input type="hidden" name="' + varName + '" value="' + variables[varName] + '" />';
			}
		}
		cookieData += '<table border="0" cellspacing=0 cellpadding=0 width="100%">';
		cookieData += '<tr align=center valign=middle><td colspan="2" class="right-nav-header"><a class="right-nav-header" href="http://' + variables['server'] + 'us-dc1-order.store.yahoo.net/cgi-bin/wg-order?' + variables['ysco_key_store_id'] + '">Cart</a>&nbsp;|&nbsp;<a class=right-nav-header href="https://' + variables['server'] + '/ymix/MetaController.html?ysco_key_event_id=1&sectionId=ysco.ship-bill&ysco_key_store_id=' + variables['ysco_key_store_id'] + '">Checkout</a> ';
		cookieData += '</td></tr>';

		for (var itemNumber=0;itemNumber < variables['howMany'];itemNumber++) {
			var itemData = readCookie('ysw-fc-item' + itemNumber);
			cookieData += '<tr valign=top class=fc_item_list><td colspan=2 align=left class=fc_item_list_name><input class=fc_item_qty type=text size=1 value=' + getKey('q',itemData) + ' name=';
			cookieData += 'cartDS.shoppingcart_ROW0_m_orderItemVector_ROW' + itemNumber + '_m_quantity>';
			cookieData += '<a class=fc_item_list_name href=http://' + getKey('u',itemData) + '>' + getKey('n',itemData) + '</a></td></tr>';
			cookieData += '<tr valign=top class=fc_item_list><td align=left class=fc_item_list_remove><a class=fc_item_list_remove href="http://' + variables['server'] + '/ymix/MetaController.html?eventName.removeEvent&sectionId=' + variables['sectionId'] + '&ysco_key_store_id=' + variables['ysco_key_store_id'];
			cookieData += '&cartDS.shoppingcart_ROW0_m_orderItemVector_ROW' + itemNumber + '_m_identity=' + getKey('k',itemData);
			if (variables['yscob']) {
				cookieData += '&yscob=' + variables['yscob'];
			}
			cookieData += '">[remove]</a>';
			cookieData += '<input type="hidden" name="cartDS.shoppingcart_ROW0_m_orderItemVector_ROW' + itemNumber + '_m_identity" value=' + getKey('k',itemData) + ' />';
			cookieData += '</td><td align=right class=fc_item_list_price>$' + getKey('p',itemData) + '</td></tr>';
         totalPrice += parseFloat(getKey('p',itemData)) * parseFloat(getKey('q',itemData));
		}
		
		freeShipToGo = freeShipThreshold - totalPrice;
		cookieData += sepLine;
		cookieData += '<tr class=fc_item_list_total><td align=left class=fc_item_list_total_text>Product Total</td><td align=right class=fc_item_list_total_price>$' + totalPrice.formatMoney() + '</td></tr>';
		cookieData += sepLine;
		if (freeShipThreshold > 0) {
			if (freeShipToGo > 0) {
				cookieData += '<tr class=fc_footer><td colspan=2 align=center class=fc_footer>Add <b>$' + freeShipToGo.formatMoney() + '</b> to your cart to qualify for <b><font color=red>Free Ground Shipping</font></b> </td></tr>';
			}
			else {
				cookieData += '<tr class=fc_footer><td colspan=2 align=center class=fc_footer>Congratulations, you qualify for <b><font color=red>Free Ground Shipping</font></b></td></tr>';
			}
		}

		cookieData += sepLine;
		cookieData += '<tr class=fc_update_button><td colspan=2 class=fc_update_button><input type=submit name="eventName.updateEvent" value="Update" class=fc_update_button></td></tr>';
		cookieData += '</table></form></td></tr></table>';
		jQuery("#floatingCartContents")[0].innerHTML = cookieData;
		jQuery("#ysw-fc-Total")[0].innerHTML = "Shopping Cart <b>$" + totalPrice.formatMoney() + "</b>";
	}
}
