Cross_selling = Class.create();

Cross_selling.prototype.container = null;
Cross_selling.prototype.currentCross = 0;
Cross_selling.prototype.currentProduct = 0;
Cross_selling.prototype.product_id = 0;
Cross_selling.prototype.listProduct = [];
Cross_selling.prototype.lastColorId = 0;
Cross_selling.prototype.lastSizeId = 0;
Cross_selling.prototype.src_product_id = 0;
Cross_selling.prototype.cross_id = 0;

Cross_selling.prototype.initialize = function(containerId)
{
	this.container = $(containerId);
}

Cross_selling.prototype.changeCross = function(cross_id,productSrc_price)
{
	var parameters = {};
	parameters.crossId = cross_id;
	parameters.productSrc_price = productSrc_price;
	parameters.ms = new Date();
	
	this.currentCross = cross_id;
	
	new Ajax.Request("frontoffice/ajax/cross_selling/showCrossSelling.php",{
			method : "post",
		 	evalJSON : "force",
			parameters : parameters,
			onSuccess : this._onChangeCrossSuccess.bind(this),
			onFailure : this._onChangeCrossFailure.bind(this)
	});
}

Cross_selling.prototype._onChangeCrossSuccess = function(xhr)
{
	this.container.update(xhr.responseText);
}

Cross_selling.prototype._onChangeCrossFailure = function(xhr)
{
	alert(xhr.responseJSON.error);
}

Cross_selling.prototype.selectColor = function(color_id)
{
	if(color_id != this.lastColorId){
		$("cross_picture_" + this.lastColorId).hide();
		$("sizes_from_" + this.lastColorId).hide();
		
		$("cross_picture_" + color_id).show();
		$("sizes_from_" + color_id).show();
		$("Couleurs_selected").src = "backoffice/showPicture.php?id=" + color_id + "&type=pictogram&format=pictos";
		this.lastColorId = color_id;			
		
		var divElement = $("sizes_from_" + color_id).childElements();
		var product_infos = divElement[0].id;
		product_infos = product_infos.split('_');
		var product_id = product_infos[1];
		size_id = product_infos[2];
		this.product_id = product_id;
		this.lastSizeId = size_id;
		this.selectSize(this.product_id, this.lastSizeId, 1);		
	}
	$("productCrossSellingColorsChoice").hide();
}

Cross_selling.prototype.selectSize = function(product_id, size_id, onSelectColor)
{
	if(size_id != this.lastSizeId || (onSelectColor !== null && onSelectColor == 1)){
		$("size_" + this.product_id + "_" + this.lastSizeId).src = "backoffice/showPicture.php?id=" + size_id + "&type=pictogram&format=pictos";
		$("size_" + this.product_id + "_" + this.lastSizeId).id = "size_" + product_id + "_" + size_id;
		$("sizeContainer_" + this.product_id + "_" + this.lastSizeId).id = "sizeContainer_" + product_id + "_" + size_id;
		this.lastSizeId = size_id;
		this.product_id = product_id;
		
		var parameters = {};
		parameters.product_id = product_id;
		parameters.src_product_id = this.src_product_id;
		parameters.cross_id = this.cross_id;
		parameters.ms = new Date();
		
		/*On récupere les info du nouveau cross */
		new Ajax.Request("frontoffice/ajax/cross_selling/getCrossedProductInfos.php",{
			method : "post",
		 	evalJSON : "force",
			parameters : parameters,
			onSuccess : function(xhr){
				$("crossProductTitle").innerHTML = xhr.responseJSON.product_name;
				//$("productCrossSellingSize").innerHTML = xhr.responseJSON.avalaibleSizesText;
				$("productCrossSellingNewPrice").innerHTML = xhr.responseJSON.total_price_discounted;
				$("crossed_product_price").innerHTML = xhr.responseJSON.product_price;
				$("productCrossSellingOldPrice").innerHTML = xhr.responseJSON.total_price;		
			}
		});
	}
	$("productCrossSellingSizesChoice_" + this.lastColorId).hide();
}