function AnswerToEnergyType(radio)
{
	energytype = radio;
	
	if(energytype != -1 && energytype != "GROUP4")
	{
		document.getElementById("question2").style.display = "block";
		document.getElementById("question1").style.display = "none";
	}
	else
	{	
		MakeTri();	
	}
}

function AnswerToNbPerson(radio)
{
	nbperson = radio;
	
	if(nbperson != -1)
	{
		document.getElementById("question3").style.display = "block";
		document.getElementById("question2").style.display = "none";
	}
}

function AnswerToFrequency(radio)
{
	frequency = radio;
	
	if(frequency == -1)
	{	
	}
	else
	{
		document.getElementById("question3").style.display = "none";
		MakeTri();
	}
}

function MakeTri()
{

	var chosenProd = new Array();
	
	if(energytype == "GROUP4")
	{	
		var w;
		for (w in arrProduct)
		{
			if(arrProduct[w][GroupID] == energytype)
			{
				chosenProd[w] = arrProduct[w];
			}
		}
	}
	else
	{	
		for(var x in arrProduct)
		{	
			if(arrProduct[x][GroupID] == energytype)
			{	
				if(array_key_exists(x, arrProductChar))
				{	
					if(arrProductChar[x])
					{							
						var size = getNbPerson();
						if( FitSize( arrProductChar[x], size ))
						{
							
							if( FitFrequency(arrProductChar[x], getFrequency(), size ))
							{			
								chosenProd[x] = arrProduct[x];
							}
						}
					}
				}
			}
		}
	}
	
	
	FillProdList(chosenProd);
}

function getNbPerson()
{
	var lst = document.getElementsByName("NbPerson");
	var NbPerson = "";
	
	for (var i = 0; i <  lst.length && NbPerson == ""; i++)
	{
		if(lst[i].checked)
		{
			NbPerson = lst[i].value;
		}
	}
	
	return NbPerson;
}

function getFrequency()
{
	var lst = document.getElementsByName("Frequency");
	var Frequency = "";
	
	for (var i = 0; i <  lst.length && Frequency == ""; i++)
	{
		if(lst[i].checked)
		{
			Frequency = lst[i].value;
		}
	}
	
	return Frequency;
}

function FitFrequency(productchar, Frequency, size)
{	
	var bFit = false;
	if(isArray( productchar[0] ))
	{		
		var pos = getPos(size, productchar[0]);
		
		if( isArray( productchar[1]))
		{
			var y;
			for(y in productchar[1])
			{
				if (productchar[1][y] == Frequency )
				{
					bFit = true;
				}
			}		
		}
		else
		{
			bFit = (productchar[1] == Frequency );
		}
	}
	else
	{
		
		if( isArray( productchar[1] ))
		{
			var y;
			for(y in productchar[1])
			{
				if (productchar[1][y] == Frequency )
				{
					bFit = true;
				}
			}		
		}
		else
		{
			bFit = (productchar[1] == Frequency );
		}
	}
	return bFit;
}

function getPos(value, arr)
{
	var pos = -1;
	
	for ( var v = 0; v < arr.length && pos == -1; v++ )
	{
		if(arr[v] == value)
		{
			pos = v;
		}
	}	
	return pos;
}

function FitSize(productchar, size)
{		
	var bFit = false;
		
		if (productchar[0] == '')
			return true;
	if( isArray( productchar[0] ))
	{
		
		var u;
		
		for(u in productchar[0])
		{
			if (productchar[0][u] == size )
			{
				bFit = true;
			}
		}		
	}
	else 
	{
		
		bFit = (productchar[0] == size ) ;
	}

	
	return bFit;
}

function FillProdList(arrProd)
{
	prodlist = document.getElementById("ProductList");
	
	prodlist.innerHTML = "";
	var k;
	
	for(k in arrProd)
	{
		prodlist.innerHTML += "<li><a href='/Default.aspx?ID="+arrProd[k][ProductPageID]+"&ProductID=" + arrProd[k][ProductID] +"' ><img src=files/" + arrProd[k][ProductImageSmall] + " /><br />" + arrProd[k][ProductName] + "</a></li>"; 
	}
	
	document.getElementById("question1").style.display = "none";
	document.getElementById("ProdList").style.display = "block";
}

function isArray(obj) {
//returns true is it is an array
if (obj == null) return  false;
if (obj.constructor.toString().indexOf("Array") == -1)
return false;
else
return true;
}

function array_key_exists ( key, search ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Felix Geisendoerfer (http://www.debuggable.com/felix)
    // *     example 1: array_key_exists('kevin', {'kevin': 'van Zonneveld'});
    // *     returns 1: true
 
    // input sanitation
    if( !search || (search.constructor !== Array && search.constructor !== Object) ){
        return false;
    }
 
    return key in search;
}