
var animating = true;	// Animation playing - boolean
var actual_block;
var glossary = false; // Glossary prepared
var gTimer;
var gInterval = 10;

$(document).ready(function(){	// Onload function
    if($("#tabs-navigation").length > 0) {
	/* Page tabs */
	$(".tab_content").each(function(){	// Rewrite each tab ID - unset anchor jumping to id
		var id = $(this).attr("id");
		$(this).removeAttr("id").attr("id","t"+id);
	});
	
	UpdateTabNavigation(0);
	
	$(".active").click(function(e){  // Disable active tab click function
		/*if ($(this).parent().parent().attr("id")!="right_navigation" && $(this).parent().parent().parent().attr("id")!="top_navigation") e.preventDefault();*/							
	});
	
	$(".tab").click(function(e){	// Click event activation - Tabs
		if (!$(this).hasClass("active") && !animating)
		{
			animating = true;
			// Tracking
			url = document.URL;
			url = url.substring(url.indexOf('www.avast.com'));
			if (url.indexOf('#') != -1) url = url.substring(0,url.indexOf('#'));
			var h =  $(this).attr('href');
			if(typeof pageTracker != 'undefined'){
				pageTracker._trackEvent('Tab', url, h);
			}
			
			UpdateTabNavigation($(this).attr("href"));
			e.preventDefault();
			return false;
		}
		else
		{
			return false;
		}
		
	});

	/* END - Page tabs */
    }
});

function UpdateTabNavigation(tab)	// Controle Tab navigation
{
	switch(tab)
	{
		case 0:	// On page entering or reloading
			var url = document.URL;
			var parameter = location.hash.substring(1);
			
			if (parameter.length > 0) // Url has hash value
			{
				HandleTabWithParameter(parameter);
			}
			else	// Url has no hash value
			{
				if(typeof( defaultTab ) != 'undefined') {
					UpdateTabNavigation(defaultTab);
					break;
				}
				HandleFirstTab();
			}
			break;
		default:	// Tab navigation button clicked
			var parameter = tab.substring(tab.indexOf("#")+1,tab.length);
			HandleTabClick(parameter);
	}
}

function HandleFirstTab(){	
	var i = 0;
	var id = HideAllContentWithIdOutput();
	$("#"+id).fadeIn(350,function(){animating = false;});
}

function HandleTabWithParameter(parameter){
	HideAllSubNavs();
	var o = ShowNav(parameter);
	
	HideAllContent();
	$("#t"+o.tab).fadeIn(350,function(){animating = false;});	
	SetActiveNavigationTabs(o.tab);
}

function HandleTabClick(parameter){
	HideAllSubNavs();
	var o = ShowNav(parameter);
	
	HideAllContent();
	$("#t"+o.tab).fadeIn(350,function(){animating = false;});	
	SetActiveNavigationTabs(o.tab);
	parent.location.hash = o.tab;	// Sets the hash value to url without reloading page
}

function HideAllContentWithIdOutput(){
	var id = "";
	$(".tab_content").each(function(index){
		if(index == 0)
		{
			id = $(this).attr("id");
			var tId = id.substr(1);
			$("a[href=#"+tId+"]").addClass("active");	
		}
		if ($(this).css("display") == "block") 
		{
			$(this).fadeOut(1);
		}
	});
	return id;
}

function ShowNav(parameter){
	var t;
	var p;
	var tp = "";
	if(parameter.indexOf("-") != -1) tp = parameter.split("-")[0];		
	
	if(tp != "") {
		$(".tab-subnav").each(function(){
			if($(this).hasClass(tp)){
				$(this).fadeIn(1);
			}
		});
		t = parameter;
		p = parameter;
	}
	else {
		var sub = false;
		var href;
		$(".tab-subnav").each(function(){
			if($(this).hasClass(parameter)){
				sub = true;
				$(this).find("a").each(function(index){
					href = $(this).attr("href");
					return false;
				});
				$(this).fadeIn(1);
			}
		});
		if(sub){
			t = href.substr(href.indexOf("#")+1,href.length);
			p = parameter;
		}
		else{
			t = parameter;
			p = parameter;
		}
	}
	return {tab:t,parameter:p};
}

function SetActiveNavigationTabs(parameter){
	$(".tab").each(function(){
		if($(this).hasClass("active")) $(this).removeClass("active");
		if($(this).attr("href") == "#"+parameter) $(this).addClass("active");
		if(parameter.indexOf("-") != -1){
			var tp = parameter.split("-")[0];
			$("#tabs-navigation .tab").each(function(){
				if($(this).attr("href").indexOf(tp) != -1){
					$(this).addClass("active");
				}
			});
		}
	});
}

function HideAllContent(){
	$(".tab_content").each(function(){
		if ($(this).css("display") == "block") 
		{
			$(this).fadeOut(1);
		}
	});
}

function HideAllSubNavs(){
	$(".tab-subnav").each(function(){
		if ($(this).css("opacity") == 1) 
		{
			$(this).fadeOut(1);
		}
	});
}
