/*
Functions for handling dynamic kit products

Dependencies: jquery
*/


// Handle the event when a user selects an attribute for a
// dynamic kit (configured product).
function changeConfigOption(ctrl) {
	var vVal = ctrl.options[ctrl.selectedIndex].value;
	var vText = ctrl.options[ctrl.selectedIndex].name;
	var ctrlId = "" + ctrl.id;
	var parentProdId = ctrlId.substring(ctrlId.lastIndexOf("_")+1);
	var attrId = ctrlId.substring(ctrlId.indexOf("_")+1,ctrlId.lastIndexOf("_"));
	var childProdId = vVal.substring(0, vVal.indexOf(","));
	var childPricingId = vVal.substring(vVal.indexOf(",")+1, vVal.lastIndexOf(","));
	
	var imgItem = document.getElementById("prodAttrImage_" + parentProdId);
	if (imgItem != null) {
		var oldSrc = imgItem.src;
		var newSrc = oldSrc.substring(0, oldSrc.indexOf("Product-")) + vVal.substring(vVal.indexOf("Product-"));
		imgItem.src = newSrc;
		imgItem.alt = vText;
	}

	// Change the qty and addToCart Button img
	$("#itemForm_"+parentProdId).each(function() {
		var formItem = this;
		for (var i=0; i<formItem.length; i++) {
			var elem = formItem.elements[i];
			// change this element
			if (elem.type == "text" && elem.name.indexOf("quantity_") > -1) {
				elem.name = "quantity_" + childProdId;
				elem.id = "quantity_" + childProdId;
			}
		}

		$("img", this).each(function() {
			this.id = makeOrderBtnId(childProdId, childPricingId);
		});
	});
	
	
}

function makeOrderBtnId(prodId, priceId) {
	return "orderBtn_productid_" + prodId + "_pricingid_" + priceId;
}

/* Handles enter key press from QTY fields */
function catchQtyEnter(e,o) {
	var key = e.keyCode || e.which;
	if (key == 13) {
		addToCart(o);
		return false;
	}
	return true;
}