
function ajaxSkuExit(req) {
	var skuOne = document.getElementById('skuvalue1').value;
	var itemid = document.getElementById('s7itemid').value;
	while (skuOne.indexOf(' ') > -1) {
		skuOne = skuOne.replace(' ', '_');	
	}
	var color = itemid + "_" + skuOne;
	s7SetColorImage(color);
}

function addtocart(failureMessage) {
	  if (isOptionsSelected()) {
		document.form.submit();
	  }
	  else {
	    document.getElementById('cartmessage').innerHTML = failureMessage;
	  }
	}

function addmultipletocart(thisForm, selectOptionName, errorDivID) {
	var errorDiv = document.getElementById(errorDivID);
	errorDiv.innerHTML = '';

	// check if an item has been selected to be added to cart
	var optionElems = thisForm.elements[selectOptionName];
	var itemSelected = false;
	for(var c=0; c<optionElems.length; c++) {
		if(optionElems[c].checked) itemSelected = true;
	}
	if(!itemSelected) {
		errorDiv.innerHTML = 'Please select the item to add to cart!';
	} else {
		var itemsOptionValid = isSelectedItemsOptionValid(thisForm, selectOptionName);
		var itemsQtyValid = isSelectedItemsQuantityValid(thisForm, selectOptionName);
		if (itemsOptionValid && itemsQtyValid) {
			thisForm.submit();
		} else if (!itemsOptionValid && !itemsQtyValid) {
			errorDiv.innerHTML = 'Please select all options and enter quantity!';
		} else if (!itemsOptionValid) {
			errorDiv.innerHTML = 'Please select all options!';
		} else if (!itemsQtyValid) {
			errorDiv.innerHTML = 'Please enter valid quantity!';
		}
	}
}

function isSelectedItemsOptionValid(thisForm, selectOptionName) {
	var optionElems = thisForm.elements[selectOptionName];
	var skuCountElems = thisForm.elements["skucount"];
	var skuValueElems = thisForm.elements["skuvalue"];
	var nextSkuIndex = 0;
	var optionsSelected = true;
	for (var loop = 0; loop < skuCountElems.length; loop++) {
		var skuCount = skuCountElems[loop].value * 1;
		var loopSize = nextSkuIndex+skuCount;
		if(optionElems[loop].checked && skuCount > 0 && loopSize <= skuValueElems.length) {
			for(var x = nextSkuIndex; x < loopSize; x++) {
				skuElem = skuValueElems[x];
				if (skuElem && skuElem.value.indexOf('Select') > -1) {
					optionsSelected = false;
				}
			}
		}
		nextSkuIndex = loopSize;
	}
	return optionsSelected;
}

function isSelectedItemsQuantityValid(thisForm, selectOptionName) {
	var optionElems = thisForm.elements[selectOptionName];
	var qtyElems = thisForm.elements["QTY"];
	var qtyValid = true;
	for (var loop = 0; loop < optionElems.length; loop++) {
		var qty = qtyElems[loop].value;
		if(optionElems[loop].checked && (isNaN(qty) || qty <= 0)) {
			qtyValid = false;
		}
	}
	return qtyValid;
}

function previewPersonalization(thisForm, messageDivId, optionsMessage, qtyMessage) {
	if (isOptionsSelected()) {
		if (isQuantitySelected(thisForm)) {
			thisForm.submit();
		}
		else {
			var firstQtyField = getField(thisForm, 'QTY', 0);
			if(firstQtyField) {
				firstQtyField.options[1].selected = true;
				thisForm.submit();
				//document.getElementById(messageDivId).innerHTML = 'QTY SET';
			}
		}	
	}
	else {
		document.getElementById(messageDivId).innerHTML = optionsMessage;
	}	
}

function addInvitationToCart(thisForm, messageDivId, optionsMessage, qtyMessage) {
	if (isOptionsSelected()) {
		if (isQuantitySelected(thisForm)) {
			thisForm.submit();
		}
		else {
			document.getElementById(messageDivId).innerHTML = qtyMessage;
		}	
	}
	else {
		document.getElementById(messageDivId).innerHTML = optionsMessage;
	}	
}

function isQuantitySelected(thisForm) {
	var fields = thisForm.elements;
	var returnField;
	var qtySelected = false;
	for (var x=0; x<fields.length; x++) {
		if(fields[x].name == 'QTY') {
			if(fields[x].value.length > 0) qtySelected = true;
		}
	}
	
	return qtySelected;
}

function isOptionsSelected() {
	var skuOne = document.getElementById('skuvalue1');
	var skuTwo = document.getElementById('skuvalue2');
	var skuThree = document.getElementById('skuvalue3');
	var skuFour = document.getElementById('skuvalue4');
	var skuFive = document.getElementById('skuvalue5');
	var skuSix = document.getElementById('skuvalue6');
	var optionsSelected = true;
	if (skuOne && skuOne.value.indexOf('Select') > -1) {
		optionsSelected = false;
	}
	if (skuTwo && skuTwo.value.indexOf('Select') > -1) {
		optionsSelected = false;
	}
	if (skuThree && skuThree.value.indexOf('Select') > -1) {
		optionsSelected = false;
	}
	if (skuFour && skuFour.value.indexOf('Select') > -1) {
		optionsSelected = false;
	}
	if (skuFive && skuFive.value.indexOf('Select') > -1) {
		optionsSelected = false;
	}
	if (skuSix && skuSix.value.indexOf('Select') > -1) {
		optionsSelected = false;
	}  

	return optionsSelected;	  
}
