var setupFeatures = function(numFeat) 
{
	var mouseover = function(e) 
		{
			if(this.className == "item")
				this.className = "item hover";
		}
	var mouseout = function(e) 
		{
			if(this.className == "item hover")
				this.className = "item";
		}
	var click = function(e) 
		{
			if(selected == this)
				return;
			
			if(selected != null)
			{
				fadeOutIn('feat' + selected.id,'feat' + this.id);
				selected.className = "item";
			}
			else
			{
				fadeIn('feat' + this.id);
			}

			this.className = "item selected";
			selected = this;
		}
	for(var i=1;i<=numFeat;i++)
	{
		var b = document.getElementById("m" + i);
		YAHOO.util.Event.addListener(b,"mouseover", mouseover);
		YAHOO.util.Event.addListener(b,"mouseout", mouseout);
		YAHOO.util.Event.addListener(b,"click", click);
	}
}

var fadeOutIn = function(id,nid)
{
	var fi = new YAHOO.util.Anim(id, { opacity: { from: 1, to: 0 } }, .3, YAHOO.util.Easing.easeOut);
	fi.onComplete.subscribe( function()  { 
		var el = document.getElementById(id);
		el.style.display = "none";
		fadeIn(nid); } );
	fi.animate();
}

var fadeIn = function(id)
{
	var el = document.getElementById(id);
	el.style.opacity = "0";
	el.style.filter = "alpha(opacity=0)";
	el.style.display = "block";
	//console.log("just set element " + id + " style to " + el.style);
	var fi = new YAHOO.util.Anim(id, { opacity: { from: 0, to: 1 } }, .6, YAHOO.util.Easing.easeIn);
	fi.animate();
}

var featSelect = function(id)
{
	fadeIn('feat' + id);
	var m1 = document.getElementById(id);
	m1.className = "item selected";
	selected = m1;
}

var compSelect = function(id)
{
	fadeIn(id + 'Main');
	var m1 = document.getElementById(id);
	YAHOO.util.Dom.addClass(m1,"selected");
	selected = m1;
}

var setupComponents = function(numComps) 
{
	YAHOO.util.Easing.easeSinoidal = function(t, b, c, d) 
	{
		t = t / 1000; // convert milliseconds to seconds
		return ((-Math.cos(t*Math.PI)/2) + 0.5) * c + b;
	};

	var mouseover = function(e) 
		{
			YAHOO.util.Dom.addClass(this,"selected");
		}
	var mouseout = function(e) 
		{
			if(selected != this)
				YAHOO.util.Dom.removeClass(this,"selected");
		}
	var click = function(e) 
		{
			if(selected == this)
				return;
			
			if(selected != null)
			{
				fadeOutIn(selected.id + 'Main',this.id + 'Main');
				YAHOO.util.Dom.removeClass(selected,"selected");
			}
			else
			{
				fadeIn(this.id + 'Main');
			}

			YAHOO.util.Dom.addClass(this,"selected");
			var cnum = (92 * (this.id.substring(4,5) - 1)) + 37;
			
			var fi = new YAHOO.util.Anim("compIndicator", { marginLeft: { to: cnum } }, .6, YAHOO.util.Easing.easeBoth);
			fi.animate();
			
			selected = this;
		}
		
	for(var i=1;i<=numComps;i++)
	{
		var b = document.getElementById("comp" + i);
		YAHOO.util.Event.addListener(b,"mouseover", mouseover);
		YAHOO.util.Event.addListener(b,"mouseout", mouseout);
		YAHOO.util.Event.addListener(b,"click", click);
	}
}


