$(window).addEvent('domready', function(){ initProducts(); } );
function initProducts(){
	initFormFields("prodDetailBuyForm");
	Shadowbox.init();
	restartShadowbox();
}

function showArrowOption(objId){
	var obj = $(objId);
	
	$$('.productDetailOptionsImageArrow').each(
		function(el)
		{
			el.removeClass("productDetailOptionsImageArrow");
			el.addClass("productDetailOptionsImage");
		}
	);

	obj.removeClass("productDetailOptionsImage");
	obj.addClass("productDetailOptionsImageArrow");
}

function selectOption(optionId, optionValueId, color){
	$('optionValue'+optionId).value = optionValueId;
	// Change mainImage in product related to option choosen
	//$('mainImage').src = $('imageOption'+optionValueId).src;
	//$('mainImageLink').href = $('imageOption'+optionValueId).src;
	//restartShadowbox();
	changeImageWithOptions(color)
	$('radio5ValidationValueDiv').innerHTML = color;
	if($('optionValue'+optionId).getAttribute('affectsstock') && $('optionValue'+optionId).getAttribute('affectsstock') == 1){
		getStockByCombination($('prodDetailBuyForm'))
	}
}

function changeImageWithOptions(option){
	if ($('mainAdditionalImage')) $('mainAdditionalImage').onclick();
	image= $('mainImage').src;
  imageExtension = (image.substring(image.lastIndexOf("."))).toLowerCase();
	imagePath = (image.substring(0,image.lastIndexOf("/")+1))
	imageName = (image.substring(image.lastIndexOf("/")+1,image.indexOf("_")));
	imageMedium = imagePath + imageName + '_m_' + option.replace(' ','') + imageExtension
	imageLarge = imagePath + imageName + '_l_' + option.replace(' ','') + imageExtension
	$('mainImage').src = imageMedium;
	$('mainImageLink').href = imageLarge;
	$('zoomImageLink').href = imageLarge;
	restartShadowbox();
}

function showArrowOptionGroup(objId){
	var obj = $(objId);
	
	if(obj.hasClass("productDetailOptionsGroupImage")){
		obj.removeClass("productDetailOptionsGroupImage");
		obj.addClass("productDetailOptionsGroupImageArrow");
	}
	else{
		obj.removeClass("productDetailOptionsGroupImageArrow");
		obj.addClass("productDetailOptionsGroupImage");
	}
	
}

function selectOptionGroup(id){
	if($('optionValue'+id).value == id)
		$('optionValue'+id).value = "";
	else
		$('optionValue'+id).value = id;
}

function addWishList(productId){
		var div = $('wishlistAction'+productId);
		var el = $('prodDetailWishlistButton'+productId);
		el.style.display = 'none';
		var loadingImage = document.createElement('img');
		loadingImage.src = shop.url + '/ecommerce/images/icons/smallLoading.gif';
		loadingImage.id = 'loadingImage' + productId;
		div.parentNode.appendChild(loadingImage);
		loadContent(shop.url + '/ajaxTemplates/products/addToWishlist.cfm?id='+productId, null, 'addWishListActions('+productId+')', null);
}

function addWishListActions(productId){
	$('loadingImage'+productId).destroy();
	$('prodDetailWishlistButton'+productId).disabled = true;
	$('prodDetailWishlistButton'+productId).style.display = '';
	shop.cuteAlert.addMessage(null, languageSheet.lblProductWishlistAdded, 0, 0);
	
}

function showMessageMustRegister(){
	shop.cuteQuestion.addMessage('', languageSheet.lblMustRegister, languageSheet.lblYes, languageSheet.lblNo, 2, "yes", shop.url + '/ecommerce/users/user.cfm', 0,0);
}

function showPriceByOption(form){
	var productId = form.productId.value;
	var lastRadioButton = ""; 
	var listOptions = "";

	if(form.options && form.options.length){
		for(var i=0; i<form.elements.length; i++){
			if( form.elements[i].getAttribute('uniqueprice') && form.elements[i].getAttribute('uniqueprice') == 0){
				optionId = form.elements[i].getAttribute('optionId');                                                                   
				if($('optionValue'+optionId).type == 'radio') {
					if (lastRadioButton != 'optionValue'+optionId) {
						if(listOptions.length > 0) listOptions = listOptions + ",";
						radioValue = getRadioButtonSelectedValue(document.getElementsByName('optionValue'+optionId));
						listOptions = listOptions + radioValue;
						lastRadioButton = 'optionValue'+optionId;
					}
				}
				else if($('optionValue'+optionId).type == 'select') {
					if(listOptions.length > 0) listOptions = listOptions + ",";
					listOptions = listOptions + $('optionValue'+optionId)[selectedIndex].value;
				}
				else{
					if($('optionValue'+optionId).type != 'text' && $('optionValue'+optionId).type !='textarea'){
						if(listOptions.length > 0) listOptions = listOptions + ",";
						listOptions = listOptions + $('optionValue'+optionId).value;
					}
				} 
			}
		}
	}
	else if(form.options){
		for(var i=0; i<form.elements.length; i++){                            
			if( form.elements[i].getAttribute('uniqueprice') && form.elements[i].getAttribute('uniqueprice') == 0){
				optionId = form.elements[i].getAttribute('optionId');
				if($('optionValue'+optionId).type == 'radio'){
					radioValue = getRadioButtonSelectedValue(document.getElementsByName('optionValue'+optionId));
					listOptions = radioValue;
				}
				else if($('optionValue'+optionId).type == 'select'){
					listOptions = $('optionValue'+optionId)[selectedIndex].value;
				}
				else{
					if($('optionValue'+optionId).type != 'text' && $('optionValue'+optionId).type !='textarea')
						listOptions = $('optionValue'+optionId).value;
				} 
			}
		}
	}
	if(listOptions.length > 0){
		var url = shop.url + '/ajaxTemplates/products/showPriceByOptions.cfm?productId='+productId+'&listOptions='+listOptions;
		var responseText = ajaxLoadSync(url);
		var objResponse = eval('(' + responseText + ')');

		if($('productBasePrice'))$('productBasePrice').innerHTML = objResponse.BASEPRICE;
		if($('productRetailPrice'))$('productRetailPrice').innerHTML = objResponse.RETAILPRICE;
	}
}

function getRadioButtonSelectedValue(ctrl) {
	for(i=0;i<ctrl.length;i++)
		if(ctrl[i].checked) return ctrl[i].value;
}
