function tableCallback(col, reverse) {
	initMouseovers();
}

function initMouseovers() {
	var trs = document.getElementsByTagName('TR');
	var trslength = trs.length;
	for (var m = 0; m < trslength; m++){
		if (trs[m].parentNode.nodeName == 'TBODY' && trs[m].parentNode.parentNode.className == 'sorteringsbar_tabell') {
			trs[m].onmouseout = mouseGoesOut;
			trs[m].onmouseover = mouseGoesOver;
			if(trs[m].getElementsByTagName('A').length == 1){
				trs[m].onclick = mouseLinked;
				trs[m].title = trs[m].getElementsByTagName('A')[0].title;
				trs[m].style.cursor = 'pointer';
			}else{
				trs[m].style.cursor = 'default';
			}
		}
	}
}

function aktivera_sidan(){
	var arr = document.getElementsByTagName('div');
	var arrlength = arr.length;
	for (var o = 0; o < arrlength; o++){
		if(arr[o].className == 'dold_utan_javascript')
			arr[o].className = '';
	}
	
	var flytande_div, flytande_tabell_rubrik, tabellid, sortid, arrblength, arrclength, i, j, m;
	var arrb, arrc, tabellstrukt = new Array();
	var arra = document.getElementsByTagName('table');
	window.sorteringsbara_tabeller = new Array();
	var k = 0;
	var arralength = arra.length;
	for (i = 0; i < arralength; i++){
		if(arra[i].className == 'sorteringsbar_tabell'){
			
			flytande_div = document.createElement('div');
			flytande_tabell_rubrik = document.createElement('table');
			var huvud = arra[i].tHead.cloneNode(true);
			flytande_tabell_rubrik.appendChild(huvud);
			flytande_div.appendChild(flytande_tabell_rubrik);
			flytande_div.id = 'flytande_tabell_'+k;
			flytande_tabell_rubrik.className='flytande_tabell';
			flytande_div.className='flytande_div';
			flytande_tabell_rubrik.cellPadding='0';
			flytande_tabell_rubrik.cellSpacing='0';
			flytande_div.style.visibility='hidden';
			arra[i].parentNode.appendChild(flytande_div);
			
			tabellid = 'tabell_'+k;
			arra[i].id = tabellid;
			
			sortid = 'sort_'+k;
			
			arra[i].getElementsByTagName('thead')[0].className = 'sorteringsbart_huvud';
			
			arrc = arra[i].getElementsByTagName('tbody');
			arrclength = arrc.length;
			for (m = 0; m < arrclength; m++){
				if(arrc[m].className == 'sorteringsbara_rader'){
					arrc[m].id = sortid;
					break;
				}
			}
			arrb = arra[i].getElementsByTagName('th');
			tabellstrukt[0] = [0];
			arrblength = arrb.length;
			for (j = 0; j < arrblength; j++){
				if(!arrb[j].textContent) arrb[j].textContent = arrb[j].innerText;
				arrb[j].title = arrb[j].textContent + ' - klicka om du vill sortera!';
				arrb[j].id = j;
				arrb[j].style.cursor = 'pointer';
				arrb[j].onclick = mouseClicked;
				if(arrb[j].className.indexOf('relativ_')>0){
					tabellstrukt[j] = [[j, 'n'],0];
				}else{
					tabellstrukt[j] = [[j, 'x'],0];
				}
			}
			window.sorteringsbara_tabeller[sortid] = new TableSorter(sortid, tabellstrukt, tableCallback);
			
			k++;
		}
	}
}

function mouseClicked(e){
	window.document.body.style.cursor = 'wait';
	
	var arrc = this.parentNode.parentNode.parentNode.getElementsByTagName('tbody');
	var arrclength = arrc.length;
	var found = false;
	for (var m = 0; m < arrclength; m++){
		if(arrc[m].className == 'sorteringsbara_rader'){
			found = arrc[m].id;
			break;
		}
	}
	if(found){
		window.sorteringsbara_tabeller[found].sortTable(this.id,false);
		window.document.body.style.cursor = 'default';
		return true;
	}else{
		window.document.body.style.cursor = 'default';
		return false;	
	}
}

function mouseLinked(e){
	var destination = this.getElementsByTagName('A')[0].href;
	window.document.location.href = destination;
}

function mouseGoesOver(e){
	if(this.parentNode.parentNode.offsetHeight > document.documentElement.clientHeight){
		if(window.pageYOffset - this.parentNode.parentNode.offsetTop > 70 || document.documentElement.scrollTop - this.parentNode.parentNode.offsetTop > 70){
			document.getElementById('flytande_'+this.parentNode.parentNode.id).style.visibility='visible';
		}
	}
}

function mouseGoesOut(e){
	document.getElementById('flytande_'+this.parentNode.parentNode.id).style.visibility='hidden';
}


