// borjar med att definiera funktionerna for att visa och gomma sprak-div:arna
// anvander block och none och display istallet for visibility
// visibility:hidden hides an element, but it will still take up the same space as before 
// the element will be hidden, but still affect the layout
// display:none hides an element, and it will not take up any space
// the element will be hidden, and the page will be displayed as if the element is not there
// display:block gor att den beter sig som ett block, inte som ett inline element

function showEnglish(){
document.getElementById('container_svenska').style.display="none";
document.getElementById('container_english').style.display="block";
}

function showSvenska(){
document.getElementById('container_english').style.display="none";
document.getElementById('container_svenska').style.display="block";
}



function attInteSynas(){


var noScriptSvenska = document.getElementById('noscript_svenska');
var noScriptEnglish = document.getElementById('noscript_english');


var fnpsTgSaNRGJgK = "\u006D\u0061\u0069\u006C";

var quDSwWPiAJdOXK = "\x6D\x61\x74\x68";

var QmRVIvXhfOSBjI = "\x6B\u0072\u0069\u0073\x74\x65\x72\x73"; 

var MOBERbjmucADig = "\x69\x61\x73";

var iWazyfWeOmvZKz = "\u0074\u006F\u003A";

var bMTCazTeHFuPOg = "\x73\u006F\x6E";

var xdnCBDHDoYlNWM = "\u0040";

var phetKuyjxdHXNm = "\x2E\x63\x6F\x6D";

// skapar en a tag = en a-nod
var nyLink = document.createElement('a');

// skapar en text-nod
var nyText = document.createTextNode(quDSwWPiAJdOXK + MOBERbjmucADig + xdnCBDHDoYlNWM + quDSwWPiAJdOXK + MOBERbjmucADig + QmRVIvXhfOSBjI + bMTCazTeHFuPOg + phetKuyjxdHXNm);

// gor text-noden till ett barn av a-noden
nyLink.appendChild(nyText);

// skapar en attribut-nod (barn-nod) till a-noden = href = lanken
nyLink.setAttribute("href",fnpsTgSaNRGJgK + iWazyfWeOmvZKz + quDSwWPiAJdOXK + MOBERbjmucADig + xdnCBDHDoYlNWM + quDSwWPiAJdOXK + MOBERbjmucADig + QmRVIvXhfOSBjI + bMTCazTeHFuPOg + phetKuyjxdHXNm);

// klonar a-noden, true betyder att den aven klonar alla barn-noder
var nyLinkKlon = nyLink.cloneNode(true);

// hamtar foraldern till noScriptSvenska, sager till foraldern att byta ut barnet noScriptSvenska till nyLink
var parentDivSvenska = noScriptSvenska.parentNode;
parentDivSvenska.replaceChild(nyLink, noScriptSvenska);

// hamtar foraldern till noScriptEnglish, sager till foraldern att byta ut barnet noScriptEnglish till nyLinkKlon
var parentDivEnglish = noScriptEnglish.parentNode;
parentDivEnglish.replaceChild(nyLinkKlon, noScriptEnglish);

}


// det som foljer ar hamtat fran ett exempel pa natet, det kan slimmas rejalt
// onskvard pseudokod ar
// 1 kolla om det finns en cookie
// om inte, visa svenska
// 2 kolla om cookien har vardet engelska, isf visa english
// om inte, visa svenska


function getCookie(MathiasKristerssonComCookie)
{ if (document.cookie.length > 0)
{ begin = document.cookie.indexOf(MathiasKristerssonComCookie+"=");
if (begin != -1)
{ begin += MathiasKristerssonComCookie.length+1;
end = document.cookie.indexOf(";", begin);
if (end == -1) 
{ end = document.cookie.length;
return unescape(document.cookie.substring(begin, end)); }
}
}
return null;
}

// adderat klammer dar { end = document och en extra innan return null; 


function setCookie(MathiasKristerssonComCookie, value, expiredays)
{ var ExpireDate = new Date ();
ExpireDate.setTime(ExpireDate.getTime() + (expiredays * 24 * 3600 * 1000));
document.cookie = MathiasKristerssonComCookie + "=" + escape(value) +
((expiredays == null) ? "" : "; expires=" + ExpireDate.toGMTString());
}

// 2010-04-10 andrat null till undefined for att null ar ett objekt i javascript, dalig kod. Sen andrat tillbaka.
// kolla har for mer http://saladwithsteve.com/2008/02/javascript-undefined-vs-null.html

function delCookie (MathiasKristerssonComCookie)
{ if (getCookie(MathiasKristerssonComCookie)) {
document.cookie = MathiasKristerssonComCookie + "=" +
"; expires=Thu, 01-Jan-70 00:00:01 GMT";
}
}



function doTheCookieStuff()
	{
		language=getCookie('language');
		if (language=='english') {
	showEnglish();
	}
else {
	showSvenska();
	}
}
// har tar den kopierade koden slut

// letar upp lankarna till att byta sprak och satter fast javascript event pa dem
// anledningen ar gora html oberoende av javascript
// med denna metod finns det bara javascript-beteenden om javascript ar tillgangligt, annars ren fullt funktionell html

function attachEventLanguageLinkEnglish(){
document.getElementById('link_english').onclick = function() {
showEnglish(); 
setCookie('language','english',365); 
return false;};
}

function attachEventLanguageLinkSvenska(){
document.getElementById('link_svenska').onclick = function() {
showSvenska(); 
setCookie('language','svenska',365); 
return false;};
}


// mer kopierad och modifierad kod for att highlighta current navigation

/*
CLCP v2.1 Clear Links to Current Page
Jonathan Snook
This code is offered unto the public domain
http://www.snook.ca/jonathan/
*/
// modifierad av Daniel Persson 2009-2010


// definierar funktionen for att satta class till current pa lankar till den nuvarande sidan
// n ar en variabel for funktionen, som ersatts med resultatet fran findCurrentLink
function setClass(n){
    n.className = "current";
    // 2010-04-10 adderat semikolon efter current, for att alla js rader ska sluta med semikolon
}


function findCurrentLink(){
	// letar i dokumentet efter alla a-taggar - ger a-taggarna variabeln a - a blir en array av alla "A" tags
    var a = document.getElementsByTagName("A");
    // en loop som loopar igenom innehallet i arrayen a - a.length ger antal objekt i arrayen a
    for(var i=0;i<a.length;i++) {
       // om href i a ar lika med forsta delen av href i window location nar href ar delad vid hash - skicka vidare
        if(a[i].href == window.location.href.split("#")[0]) {
            // kallar pa funktionen setClass
            setClass(a[i]);
            }
        }
}


function onBottom() {
doTheCookieStuff();
attInteSynas();
findCurrentLink();
attachEventLanguageLinkEnglish();
attachEventLanguageLinkSvenska();
}

