var xmlhttp;
var targetDiv = "";
var searchTimer = 0;

function GetTab(tab, page, id)
{
	// Get xmlhttp object
	xmlhttp = GetXmlHttpObject();
	
	// Make sure ajax is supported
	if(xmlhttp == null)
	{
		alert("Your browser do not support AJAX, get a new at http://www.microsoft.com/ie");
		return;
	}
	
	// Set tabs correctly if needed
	if(tab != 0)
	{
		ChangeTabState(tab);
	}
	else
	{
		UnselectAllTabs();
	}
	
	// Do not go back in directories!
	page = page.substring(page.lastIndexOf('../') + 1, page.length);
	
	// Set url
	var url = "pages/tab_pages/" + page + ".php";
	url = url + "?id=" + id;
	url = url + "&sid=" + Math.random();
	
	SendURL(url);
}

function Browse(tab)
{
	// Get xmlhttp object
	xmlhttp = GetXmlHttpObject();
	
	// Make sure ajax is supported
	if(xmlhttp == null)
	{
		alert("Your browser do not support AJAX, get a new at http://www.microsoft.com/ie");
		return;
	}
	
	// Set tabs correctly if needed
	if(tab != 0)
	{
		ChangeTabState(tab);
	}
	
	// Make the url
	var url = "pages/tab_pages/browse.php";
	url = url + "?q=" + document.getElementById("q").value;
	url = url + "&sort=" + GetSelectedTab();
	url = url + "&platform=" + document.getElementById("gamePlatform").value;
	url = url + "&developer=" + document.getElementById("developer").value;
	url = url + "&publisher=" + document.getElementById("publisher").value;
	url = url + "&sid=" + Math.random();
	
	SendURL(url);
}

function FrontpageTimer()
{	
	if(searchTimer != 0)
		clearTimeout(searchTimer);
	
	searchTimer = setTimeout("FrontpageSearch()", 300);
}

function FrontpageSearch()
{
	// Set searchTimer to 0
	searchTimer = 0;
	
	// Get xmlhttp object
	xmlhttp = GetXmlHttpObject();
	
	// Set targetDiv
	targetDiv = "searchResults";
	
	// Make sure ajax is supported
	if(xmlhttp == null)
	{
		alert("Your browser do not support AJAX, get a new at http://www.microsoft.com/ie");
		return;
	}
	
	// If it is empty
	if(document.getElementById("q").value == "")
	{
		document.getElementById(targetDiv).innerHTML = "";
		return;
	}
	
	var url = "pages/tab_pages/frontpage_search.php";
	url = url + "?q=" + document.getElementById("q").value;
	url = url + "&sid=" + Math.random();
	
	SendURL(url);
}

// Gets the selected tab id
function GetSelectedTab()
{
	for(var i = 1; i <= GetNrOfTabs(); i++)
	{
		if(document.getElementById(i).className == "current")
			return i;
	}
}

// Gets the number of tabs on the page
function GetNrOfTabs()
{
	for(var i = 1; i < 20; i++)
	{
		if(document.getElementById(i) == null)
			return i - 1;
	}
}

function ChangeTabState(tab)
{
	tab.className = "current";
	for(var i = 1; i <= GetNrOfTabs(); i++)
	{
		if(i != tab.id)
			document.getElementById(i).className = "none";
	}
}

// Makes all tabs unselected
function UnselectAllTabs()
{
	for(var i = 1; i < GetNrOfTabs(); i++)
	{
		document.getElementById(i).className = "none";
	}
}

function SendURL(url)
{
	// Send the url
	xmlhttp.onreadystatechange = stateChanged;
	xmlhttp.open("GET", url, true);
	xmlhttp.send(null);
}

function stateChanged()
{
	if(targetDiv == "")
		targetDiv = "submenu_content";
	
	
	obj = document.getElementById(targetDiv);
	
	if(xmlhttp.readyState == 4)
	{
		obj.innerHTML = xmlhttp.responseText;
	}
	else
	{
		obj.innerHTML = "<h2>Please Wait</h2><p>Loading content...</p>";
	}
}

function GetXmlHttpObject()
{
	if(window.XMLHttpRequest)
	{
		return new XMLHttpRequest();
	}
	if(window.ActiveXObject)
	{
		return new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	return null;
}
