
var stopNavigate = false;
var animationId;
var isSliding =false;

// these set of functions change tab states for product detail content


function createContent(id)
{

	var topUL = document.getElementById('topLinks'+id);
	var topULlists = topUL.getElementsByTagName("li");
	var totalwidth=0;
	
	for(var j=0;j<topULlists.length;j++)
	{
		totalwidth+=topULlists[j].offsetWidth;
	}
	
	var ul = topUL.getElementsByTagName('ul')[0];
	ul.style.width=  totalwidth +'px';
	
	if(totalwidth > topUL.offsetWidth)
	{
		document.getElementById('topLinks'+id).className +=' scroller';
		document.getElementById('moveback'+id).style.display='';
		document.getElementById('movenxt'+id).style.display='';
		document.getElementById('moveback'+id).onclick= function() { moveBack(this); };
		document.getElementById('movenxt'+id).onclick= function() { moveNext(this); };
		
	}
	
	var topLinks = topUL.getElementsByTagName("a");
	if(topLinks.length>1)
	{

		for (var i=0; i<topLinks.length; i++){
			var aLink = topLinks[i];
			  if (aLink.className.indexOf("on") != -1){
						
						showDiv(aLink.rel,1,id);
						showSubTab(1,id);
				 }
			aLink.onclick = function(){
					  makeActive(this,1,id);
						
								
				}	
			}
	}
	else
	{
		var ul1 = topUL.getElementsByTagName("ul")[0];
		
		if(ul1.className=='tabtop')
		{
			ul1.style.display='none';
			var aLink = topLinks[0];
			if (aLink.className.indexOf("on") != -1)
			{
				showDiv(aLink.rel,0,id);
				
			}
				
			
		}
			
	}

}


function showDiv(thisDiv,flag,id)
{
	
	
	var tabDiv = document.getElementById('tabs'+id);
	var tabs = tabDiv.getElementsByTagName("div");
	
	for(i=0; i<tabs.length; i++)
	{
		
		var tabDiv = tabs[i];
		tabDiv.style.display = "none";
		
	}
	
	for(i=0; i<tabs.length; i++)
	{
		var tabDiv = tabs[i];
		if (tabDiv.className.indexOf(thisDiv) != -1)
		{
			
			var tabParent = tabDiv.parentNode;
			
			var list;
			var listlength=0;
			if(tabParent.getElementsByTagName("ul")[0])
			{	
				list = tabParent.getElementsByTagName("ul")[0].getElementsByTagName("li");
				listlength = list.length;
			}
			tabParent.style.display = "block";
			tabDiv.style.display = "block";	
			var innerdivs = tabDiv.getElementsByTagName("div");
			for(var h=0; h<innerdivs.length; h++)
			{
				innerdivs[h].style.display = "block";
				
			}
			if(flag==0)
			{
				tabParent.getElementsByTagName("ul")[0].style.display='none';
				document.getElementById("topLinks").innerHTML = "<ul class='tabtop'>"+tabParent.getElementsByTagName("ul")[0].innerHTML+'</ul>';
				showSubTab(0,id);
				
			}
			else if( flag==1 && listlength ==1 )
			{
				tabParent.getElementsByTagName("ul")[0].style.display='none';
				tabParent.className+= ' whitebg';
			}
			
			
			else if(flag==1 && listlength ==0) 
			{
				tabParent.className+= ' whitebg';
				
			}
			
			return false;
		}
		
		
		
		
	}
	
	

}

function showSubTab(flag,id)
{

	if(flag==1)
	{
		var topUL = getElementsByClassName("tabtopinner" , "ul", document.getElementById('tabs'));
		var topLinks = new Array();
		for(var k=0;k<topUL.length;k++)
		{
			var links = topUL[k].getElementsByTagName("a");
			for(var j=0;j<links.length;j++)
			{
				topLinks.push(links[j]);
			}
			
		}
		
		for (var i=0; i<topLinks.length; i++){
			var bLink = topLinks[i];
			/*  if (bLink.className.indexOf(thisTab) != -1){
						showDiv(bLink.rel,flag,id);
					}*/
			bLink.onclick = function(){
					  makeActiveInner(this,flag,id);
		
				}	
			}
			
	}
	else if(flag==0)
	{
		var topUL = document.getElementById('topLinks'+id)
		var topLinks = topUL.getElementsByTagName("a");
		for (var i=0; i<topLinks.length; i++){
			var bLink = topLinks[i];
			  if (bLink.className.indexOf(thisTab) != -1){
						showDiv(bLink.rel,flag,id);
					}
			bLink.onclick = function(){
					  makeActive(this,flag,id);
		
				}	
			}
	}
}



function makeActive(changeTab,flag,id){

var topUL = document.getElementById('topLinks'+id);
var topLinks = topUL.getElementsByTagName("a");
for (var i=0; i<topLinks.length; i++){
		var aLink = topLinks[i];
		aLink.className = null;
		aLink.parentNode.className = null;
		
		}
				
		changeTab.className = "on";
		showDiv(changeTab.rel,flag,id);
		//resetSubLink(changeTab.rel,flag,id);
		//showSubTab(changeTab.rel);
	
}


function makeActiveInner(changeTab,flag,id){

id= changeTab.parentNode.parentNode.parentNode.parentNode.id;
id = id.replace('tabs','');

var topUL = document.getElementById('tabs'+id);
var topLinks = topUL.getElementsByTagName("a");
for (var i=0; i<topLinks.length; i++){
		var aLink = topLinks[i];
		aLink.className = null;
		}
			
		changeTab.className = "onInner";
		showDiv(changeTab.rel,flag,id);
	
}





function moveBack(btn)
{
	var id= btn.id.replace('moveback','');
	var ul = document.getElementById('topLinks'+id).getElementsByTagName('ul')[0];
	var toX = ul.getElementsByTagName('li')[0].offsetWidth;
	var NewPos =  ul.offsetLeft + toX;
	
	if(isSliding==false && NewPos <= 0 )
		animateSlide(toX,1,id);
	else
	{
	  ul.style.left = 33 + 'px';
	  btn.className += ' dimmed';
	  stopNavigate=false;
	}
}

function moveNext(btn)
{
	var id= btn.id.replace('movenxt','');

	var ul = document.getElementById('topLinks'+id).getElementsByTagName('ul')[0];
	var toX = ul.getElementsByTagName('li')[0].offsetWidth;
	var NewPos =  ul.offsetLeft - toX;
	if(isSliding==false && NewPos >= (document.getElementById('topLinks'+id).offsetWidth-ul.offsetWidth))
		animateSlide(toX,-1,id);
		
	else
	{
	  ul.style.left = (document.getElementById('topLinks'+id).offsetWidth-ul.offsetWidth-33) + 'px';
	  btn.className += ' dimmed';
	  stopNavigate=false;
	}
	
		
	
}


function animateSlide(toX,dir,id)
{
	
	var ul = document.getElementById('topLinks'+id).getElementsByTagName('ul')[0];
	if(isSliding==false)
	{ 
	    isSliding =true;
		window.clearInterval(animationId);
		var l=ul.offsetLeft;
		var stopPoint=l+(toX*dir);

		animationId=window.setInterval(function(){
		
			var sliderPos=parseInt(ul.offsetLeft)||33;
			var x=calculateDecel(sliderPos,stopPoint);
			ul.style.left=x+"px";
			
	
			if(x==stopPoint)
			{
				window.clearInterval(animationId);
				isSliding =false;
			}
		
		},30);
		
		
		
	}
}

function calculateDecel(from,to)
{
	var n=from-Math.floor((from-to)*.4);
	if(Math.abs(from-to)<4)return to;
	else return n;
}



