// Funktion för nytt request via AJAX
function newXMLHTTPRequest()
{
	try 
	{
		// Visssa typer av ie
		req = new ActiveXObject("Microsoft.XMLHTTP");
	}
	catch(error)
	{
		try
		{
			// Andra typer av ie
			req = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(error)
		{
			try
			{
				// Alla andra webläsare
				req = new XMLHttpRequest();
			}
			catch(NoAJAX)
			{
				req = false;
			}
		}
	}
	// Returnerar
	return req;
}

// Skapar min http variabel som används för all AJAX inhämtning
var http = newXMLHTTPRequest();



// För nya webbläsare som stödjer locationHashChanged kan vi nu använda denna för att bläddra fram och tillbaka i webbläsaren
/*
function locationHashChanged() 
{

}
window.onhashchange = locationHashChanged;  
*/



// Vet inte riktigt längre vad jag initierar här och har inte tid att undersöka det. Var länge sedan jag byggde grunden til ldet här känner jag...
var ajaxInnehallsHojd=5;
var fart=1;
var avstand=0;
var animationKlar=true; 

var globalSidId="";

var globalTonaInte=false;

var init_animerarHojdAjax = 0;// Det här för att man ska kunna animera ut ajax hojd, på sidor där det inte används ska det här vara av

// EN IDE -> Här har jag en ide om att man ska kunna haza adressen så att besökaren inte kan se alla variabler utan bara får något i stil med "45DFG43G" som då översätts tillbaka till variablarna 
function encryptoDecrypto(inData, onOff)
{
	if(onOff==1)
	{
		
	}
	else
	{
		
	}
	return inData;
}
  
// History fix // Den är tänkt att fixa back knappen i webbläsaren
function CheckForHash()
{
	// Det här för att man ska kunna animera ut ajax hojd, på sidor där det inte används ska det här vara av
	if(init_animerarHojdAjax==0)
	{
		init_animerarHojdAjax=1;
		document.getElementById('animerarHojdAjax').style.height="0px";
	}
	
	if(document.location.hash)
	{
		var HashLocationName = document.location.hash;
		HashLocationName = HashLocationName.replace("#","");
		
		if(document.getElementById('sidIDAnkare').name!=HashLocationName)
		{
			//alert('byt sida av check for it --> ' +document.getElementById('sidIDAnkare').name +' != ' +HashLocationName);
			dopOmAnkare('sidIDAnkare', HashLocationName);
			
			//bytHelaInnehallaren(HashLocationName);
			// På on top of the worldsidan kör vi den här istället
			topOfWorld_BytSida(HashLocationName,"",1);
		}
	}
	else // Standardsida
	{	
		if(init_animerarHojdAjax==0)
		{
			init_animerarHojdAjax=1;
			document.getElementById('animerarHojdAjax').style.height="0px";
		}
	}
}

function dopOmAnkare(ankarId, ankarNamn)
{
	//ankarNamn = encrypto(ankarNamn, 0);
	document.getElementById(ankarId).name = ankarNamn;
}

// var HashCheckInterval = setInterval("CheckForHash()", 500);
// window.onload = CheckForHash;


// Byter ut vad man kan kalla är hela sidan. Dvs man byter hela innehållaren
function bytHelaInnehallaren(inSida)
{		
	http.open("GET" , inSida , true);
	
	dopOmAnkare('sidIDAnkare', inSida);
	
	document.location = "#"+inSida;
		
	http.onreadystatechange = function ()
	{
		if(http.readyState == 4)
		{
			if(http.status == 200) // Färdigladdad
			{
				document.getElementById('inneHallare').innerHTML = http.responseText;
			}
		}
	}
	http.send(null);
}

// Byter ut vissa delar av sidan.
function bytDelarAvSida(inSida,sidID,inAjaxDiv)
{
	globalSidId=sidID;
		
	var url = inSida;
		
	http.open("GET" , url , true);
		
	http.onreadystatechange = function ()
	{
		if(http.readyState == 4)
		{
			if(http.status == 200) // Färdigladdad
			{
				pipInladdad=true;
				
				// Hämtar in info om innehållet för att kunna trolla lite
				document.getElementById(inAjaxDiv).innerHTML = http.responseText;
				
				//document.getElementById('ajaxLaddar').style.display="none";
			}
			else
			{
				pipInladdad=false;
			}
		}
		//document.getElementById('ajaxLaddar').style.display="block";
	}
	http.send(null);
}

// Byter ut vissa delar av sidan samt kör en funktion då det är klart
function bytDelarAvSidaMedFunktion(inSida, inAjaxDiv, inFunktion)
{	
	http.open("GET" , inSida , true);
		
	http.onreadystatechange = function ()
	{
		if(http.readyState == 4)
		{
			if(http.status == 200) // Färdigladdad
			{
				document.getElementById(inAjaxDiv).innerHTML = http.responseText;
				
				if(inFunktion!="" && inFunktion!=null)
				{
					inFunktion();
				}
			}
			else
			{
				pipInladdad=false;
			}
		}
	}
	http.send(null);
}

// Startmenyns utbyte av vänsterspallten
function bytSpaltInnehall(inSida,inAjaxDiv)
{	
	var url = inSida;
		
	http.open("GET" , url , true);
		
	http.onreadystatechange = function ()
	{
		if(http.readyState == 4)
		{
			if(http.status == 200) 
			{
				pipInladdad=true;
							
				document.getElementById(inAjaxDiv).innerHTML = http.responseText;
				
				// document.getElementById('ajaxLaddar').style.display="none";
			}
			else
			{
				//alert('Sidan hittas inte!');
			}
		}
		// document.getElementById('ajaxLaddar').style.display="block";
	}
	http.send(null);
}

// Klistra in mer innehåll i vald div i slutet av denna
function fyllPaSpaltInnehall(inSida,inAjaxDiv)
{	
	var url = inSida;
		
	http.open("GET" , url , true);
	
	var dynPushaInnehall_Div = document.createElement('div');
	dynPushaInnehall_Div.id = 'dynPushaInnehall_Div'+Math.round(Math.random()*100);
		
	http.onreadystatechange = function ()
	{
		if(http.readyState == 4)
		{
			if(http.status == 200) 
			{
				pipInladdad=true;
				
				dynPushaInnehall = http.responseText;
				
				document.getElementById(inAjaxDiv).appendChild(dynPushaInnehall_Div);
				
				// För att animer i detta fallet tona in extra innehållet
				FonsterGenomskinl(dynPushaInnehall_Div.id,0) ;
				FonsterSnabbTonaFram(dynPushaInnehall_Div.id,30);
				//doljVisa_MedToning(inAjaxDiv);
				
				dynPushaInnehall_Div.innerHTML=dynPushaInnehall;
				
				// document.getElementById('ajaxLaddar').style.display="none";
			}
		}
		// document.getElementById('ajaxLaddar').style.display="block";
	}
	http.send(null);
}
