var shoppingCart = new Object();
shoppingCart.cartlines = new Array();


function submitCart(theForm) {

if (theForm.elements['quantity'].value == "") {
	theForm.elements['quantity'].value = "1";
}
var url = "/cgi-bin/webcart.pl";
var vars = "mode=add";
var quantity = theForm.elements['quantity'].value;
vars += ("&stocknum=" + theForm.elements['stocknum'].value);
vars += ("&style=" + theForm.elements['style'].value);
vars += ("&quantity=" + theForm.elements['quantity'].value);
debugMsg += ("item going to cart:" + vars);

if (theForm.elements['style'].value != "") {
	//alert(debugMsg);
	// clear the form
	theForm.elements['style'].value = "";
	theForm.elements['quantity'].value = "";

	sendAjax(url, vars, parseAddToCart);

	var addedMessage = ("<div style=\"width:240px;border-style:solid;border-color:#B1BB1C;border-width:1px;background-color:#7F8416;\"><span style=\"font-size:12px;font-weight:bold;padding:6px;color:#FFFFFF;\">Adding ");
	if (quantity > 1) {
		addedMessage += (quantity + " items ");
	}
	else {
		addedMessage += ("1 item ");
	}
	addedMessage += ("to cart...</span></div>");
	var canvas;
	
	canvas = document.getElementById('webcartDropDown');
	canvas.innerHTML = (addedMessage);	
	var pos = YAHOO.util.Dom.getXY('cartSummary');
	pos[0] += 1;
	pos[1] += 20;
	YAHOO.util.Dom.setXY('webcartDropDown', pos);
	canvas.style.visibility = "visible";
	setTimeout("hideWebcartDropDown()", 2000);
	
	canvas = document.getElementById('canvasAddToCartButtonMessage');
	canvas.innerHTML = (addedMessage);
 
} else {
	var addedMessage = ("<div style=\"width:200px;border-style:solid;border-color:#B1BB1C;border-width:1px;background-color:#7F8416;\"><span style=\"font-size:12px;font-weight:bold;padding:6px;color:#FFFFFF;\">Please choose a color.</div>");
	canvas = document.getElementById('canvasAddToCartButtonMessage');
	canvas.innerHTML = (addedMessage);
	
}



return(false);
}


function parseAddToCart(msg) {
	var canvas;
	var addedMessage = "";
	if (msg.substring(0, 2) == "OK") {
		addedMessage = "<div style=\"font-size:10px;\">Item(s) were added to cart successfully.</div>";
	} else {
		addedMessage = msg;
	}
	canvas = document.getElementById('webcartDropDown');
	canvas.innerHTML = ("<div style=\"font-size:10px;\">" + addedMessage + "</div>");

	if (msg.substring(0, 2) == "OK") {
		addedMessage = "<div style=\"font-size:10px;\">Item(s) were added to cart successfully.</div><div style=\"font-size:10px;\"><a href=\"/cgi-bin/webcart.pl\">Click here to view your shopping cart</a>.</div>";
	} else {
		addedMessage = msg;
	}
	canvas = document.getElementById('canvasAddToCartButtonMessage');
	canvas.innerHTML = (addedMessage);	

	setTimeout("hideWebcartDropDown()", 2000);
	getCart();
	
}

function hideWebcartDropDown() {
	var webcartDropDown = document.getElementById('webcartDropDown');
	webcartDropDown.style.visibility = "hidden";
}


function getCart() {
	var url = "/cgi-bin/webcart.pl";
	var vars = "mode=xml";
	sendAjaxXML(url, vars, showCartSummary);
	
return(false);
}



function showCartSummary(xmlData) {
	updateShoppingCart(xmlData);
	//alert("You have " + shoppingCart.cartlines.length + " items in your cart.  Your subtotal is " + shoppingCart.subtotal);
	var outString = getCartSummaryHTML();
	var displayElem = document.getElementById("cartSummary");
	displayElem.innerHTML = outString;
}

function updateShoppingCart(xmlData) {
	// update the shoppingCart object with incoming xmlData
	var elementsArray = xmlData.getElementsByTagName("webcart");
	if (elementsArray.length > 0) {
		shoppingCart.subtotal = elementsArray[0].getAttribute('subtotal');
	}
	var cartlinesArray = xmlData.getElementsByTagName("cartline");
	var idx = 0;
	//alert("There are " + cartlinesArray.length + " cart lines.");
	for(idx=0;idx<cartlinesArray.length;idx++) {
		shoppingCart.cartlines[idx] = new Object();
		shoppingCart.cartlines[idx].id = cartlinesArray[idx].getAttribute("id");
		shoppingCart.cartlines[idx].productid = cartlinesArray[idx].getAttribute("productid");
		shoppingCart.cartlines[idx].stocknum = cartlinesArray[idx].getAttribute("stocknum");
		shoppingCart.cartlines[idx].size = cartlinesArray[idx].getAttribute("size");
		shoppingCart.cartlines[idx].style = cartlinesArray[idx].getAttribute("style");
		shoppingCart.cartlines[idx].quantity = cartlinesArray[idx].getAttribute("quantity");
		shoppingCart.cartlines[idx].title = cartlinesArray[idx].getAttribute("title");
		shoppingCart.cartlines[idx].thumbnailsrc = cartlinesArray[idx].getAttribute("thumbnailsrc");
		shoppingCart.cartlines[idx].cdate = cartlinesArray[idx].getAttribute("cdate");
		shoppingCart.cartlines[idx].mdate = cartlinesArray[idx].getAttribute("mdate");
		shoppingCart.cartlines[idx].unitwt = cartlinesArray[idx].getAttribute("unitwt");
		shoppingCart.cartlines[idx].shipfree = cartlinesArray[idx].getAttribute("shipfree");
	}
	
}


function setStyle(styleVal) {
	var debugText = "";
	document.forms['webcart'].elements['style'].value = styleVal.toUpperCase();
	
	debugText += ("Checking document images collection for swatches.\n");
	var idx = 0;
	for (idx=0;idx<document.images.length;idx++) {
		if (document.images[idx].src.indexOf("swa_") > 0) {
			debugText += ("Found a swatch in image " + idx + " with src " + document.images[idx].src + ".\n");
			// this is a color swatch
			if (document.images[idx].src.indexOf("swa_" + styleVal + ".gif") > 0) {
				debugText += ("MATCH! " + idx + ":" + styleVal + ".\n");
				document.images[idx].style.borderWidth = "3px";
				document.images[idx].style.borderColor = "#808415";
			}
			else {
				document.images[idx].style.borderWidth = "0px";
			}
		}
	}
	//alert(debugText);
}


function getCartSummaryHTML() {
var outString = "";
if (shoppingCart.cartlines.length > 0) {
	outString += ("<div style=\"font-size:10px;font-weight:normal;margin:3px;color:#666666;\">Cart: ");
	if (shoppingCart.cartlines.length == 1) {
		outString += ("1 item");
	} else {
		outString += (shoppingCart.cartlines.length + " items");
	} 
	outString += ("&nbsp;&nbsp;$" + shoppingCart.subtotal + "&nbsp;&nbsp;<a href=\"/cgi-bin/webcart.pl\" style=\"color:#B1BB1C;text-decoration:none;\">View Your Cart</a></div>");
} else {
	//outString += ("<div style=\"font-size:10px;font-weight:normal;margin:3px;\">Nothing in your shopping cart yet.</div>");
}

return(outString);
}
