var selects = new Array;
var combinaisons = new Array;
var quantities = new Array;
var prices = new Array;
var ecotaxes = new Array;
var images = new Array;
var attr_price = new Number(0);
var product_price = new Number;
var attr_ecotax = new Number(0);
var img_prod_dir = new String;
var id_product = new Number;
var	oosp = new Number;
var last_qties_max = new Number;
var total_qties = new Number;

function	addSelect(id_attribute_group, group_name)
{
	selects[id_attribute_group] = group_name;
}

function writeAvailability()
{
	getE('qtyav').innerHTML = nbpiece;
}

function	getQuantity()
{
	var qtyav = new Number;
	
	qtyav = quantities[getE('id_product_attribute').value];	
	if (!qtyav)
	{
		if (!getE('id_product_attribute').value && getE('qtyav'))
			getE('qtyav').innerHTML = '<span class="red">'+doesntexist+(total_qties ? ' '+doesntexist_but : '')+'</span>';
		else
			if (getE('qtyav'))
				getE('qtyav').innerHTML = '<span class="red">'+outofstock+'</span>';
		qtyav = 0;
		getE('printcart').innerHTML = '';
	}
	else
	{
		if (getE('qtyav'))
		{
			getE('qtyav').innerHTML = nbpiece;
			getE('qtyav').setAttribute('style', 'display: none');
			getE('printcart').innerHTML = '<input type="hidden" name="id_product" value="'+ id_product +'">\n<input type="hidden" name="add" value="1">\n<input type="image" name="Submit" src="'+ imgdir + langiso +'/btn-add.gif" id="add_to_cart_btn" />\n';
		}
	}
	getE('buy').style.display = ((qtyav == 0 && oosp == 0) ? 'none' : 'block');
	getE('last_qties').style.display = ((qtyav && qtyav < last_qties_max) ? 'block' : 'none');
}

function	checkQty()
{
	var qtyav = new Number;
	
	qtyav = quantities[getE('id_product_attribute').value];
	if (!qtyav) { qtyav = 0; }
	if (getE('qty').value > qtyav || getE('qty').value < 0)
		getE('qty').value = qtyav;
}

function	updatePrice()
{
	getE('price').innerHTML = ((attr_price + product_price) * currency_rate).toFixed(2) + ' ' + currency_sign;
}

function	updateEcotax()
{
	if (attr_ecotax != 0)
		getE('ecotax').innerHTML = '&eacute;co-participation : ' + (attr_ecotax * currency_rate) + ' ' + currency_sign;
	else
		getE('ecotax').innerHTML = '';
}

function	addCombinaison(id_product_attribute, attributes, quantity, price, ecotax, id_image)
{
	quantities[id_product_attribute] = quantity;
	total_qties += quantity;
	combinaisons[id_product_attribute] = attributes;
	prices[id_product_attribute] = price;
	ecotaxes[id_product_attribute] = ecotax;
	images[id_product_attribute] = id_image;
}

function	in_array(val, arr)
{
	for (var i in arr)
		if (arr[i] == val)
    		return true;
	return false;    	
}

function	findCombinaison(first)
{
	var currentComb;
	var nbOk = new Number(0);
	var choices = new Array;
	var link = new String();
	
	/* first is true when called for first time */
	
	for (keyVar in selects)
	{
	   current = selects[keyVar];
	   choices.push(eval(getE(current).value));
	}

	for (keyComb in combinaisons)
	{
		for (id_attribute in combinaisons[keyComb])
		{
			if (in_array(combinaisons[keyComb][id_attribute], choices))
				nbOk++;
		}

		if (nbOk == combinaisons[keyComb].length)
		{
			getE('id_product_attribute').value = keyComb;
			getQuantity();
			attr_price = prices[keyComb];
			updatePrice();
			attr_ecotax = ecotaxes[keyComb];
			updateEcotax();
			checkQty();
			
			if (!first && images[keyComb] && images[keyComb] != -1)
			{
			 	link = img_prod_dir + id_product + '-' + images[keyComb] + '-large.jpg';
				getE('bigpic').src = link;
				onClickImage(images[keyComb], '', link);
			}
			
			return;
		}
		
		nbOk = 0;
	}
	
	getE('id_product_attribute').value = null;
	getQuantity();
	return;
}

function getE(name)
{
	if (document.getElementById)
		var elem = document.getElementById(name);
	else if (document.all)
		var elem = document.all[name];
	else if (document.layers)
		var elem = document.layers[name];
	return elem;
}
