var xmlHttp;
var margin = -5;
var width = 1;
var loopspeed = 0;
var bannerNr;
var bannerMax;
var int = new Array();
var state = new Array("banner","banner2");
var fUp = 0; var fDown = 1;
var add;
var currentX = 0;
var currentY =0;
var action;

/*document.onsubmit = formSubmit;*/
function formSubmit()
{

	x=0;
	form = document.forms[0];
	
	if(form.className!="noLook")
	{

		for(i=0; i<form.length; i++)
		{
			ele = form.elements[i];
			
			if(ele.value=="" && ele.className!="fri") { ele.style.background="red"; ele.style.color="white"; x++; }
			else { ele.style.background="white"; ele.style.color="black"; }
			
		}
		
		if(x!=0) { alert("Hoppsan! Det finns " + x + " oifyllda rutor!"); return false; }
	
	}

}

document.onmousemove=MoveIt;
function MoveIt(e)
{
	if (!e) e = window.event;
	currentX=e.clientX-2;
	currentY=e.clientY-2;
	var ele = document.getElementById("info");
	ele.style.left=currentX+20+"px";
	ele.style.top=currentY+20+f_scrollTop()+"px";
}


function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}

function f_scrollTop() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}



function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
	if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function GetXmlHttpObject()
{
	var xmlHttp=null;
	try
	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
		
	catch (e)
	{
		// Internet Explorer
		try
		{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
	
		catch (e)
		{
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
		
	return xmlHttp;
}

function openWindow(url,width,height) {

	egenskaper="toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width="+width+",height="+height+"";
	
	unik=new Date();
	unik=unik.getSeconds()+"_"+unik.getMinutes()+"_"+unik.getHours();
	window.open(url,unik,egenskaper);
}

function changeColour(field,text,colour)
{
	el = document.getElementById(field);
	
	if(el.value==text)
	{
		el.value="";
		el.style.color=colour;
	}
}

function shoutCount()
{

	field = document.getElementById("shout_text");
	len = field.value.length;
	
	if(len>100)
	{
		field.value = field.value.substring(0,100)
		len = 100;
	}
	
	document.getElementById("shout_count").innerHTML="(" +len+ "/100)";

}

function Map(add)
{
	url= add + "gfx/hittahit_karta.jpg";
	egenskaper="toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=680,height=510";
	
	unik=new Date();
	unik=unik.getSeconds()+"_"+unik.getMinutes()+"_"+unik.getHours();
	window.open(url,unik,egenskaper);
}

function searchParticipants()
{

	var str = document.getElementById("searchfield").value;
	var sortBy_field = document.getElementById("sort");
	var sortBy = sortBy_field.options[sortBy_field.selectedIndex].value;
	var dir_field = document.getElementById("inDir");
	var dir = dir_field.options[dir_field.selectedIndex].value;

	document.getElementById("funster").innerHTML="<p align=\"center\"><img src=\"../../gfx/loading.gif\" style=\"margin: 0; border: 0\"> Laddar lista</p>";
	
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null) { alert ("Din webbläsare stödjer inte AJAX\nDags att uppdatera kanske?!");return; }	
	var url="/phppages/biljetter-personlista.php?sort=" + sortBy + "&dir=" + dir + "&search=" + str + "&include=true";
		
	xmlHttp.onreadystatechange=updateList;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null)
}

function updateList() 
{ 
	if (xmlHttp.readyState==4)	
	document.getElementById("funster").innerHTML=xmlHttp.responseText;
}

var element;
function GetXmlHttpObject()
{
	var xmlHttp=null;
	try
	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	
	catch (e)
	{
		// Internet Explorer
		try
		{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}

		catch (e)
		{
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	
	return xmlHttp;
}

function visitPage(url)
{
				
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null) { alert ("Your browser does not support AJAX!");	return; }	
	
	var url=url
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null)	
}

function getPage(url,ele)
{
	element=ele;
				
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null) { alert ("Your browser does not support AJAX!");	return; }	

	xmlHttp.onreadystatechange=presentPage;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null)	
}

function presentPage() 
{
	if (xmlHttp.readyState==4)		
		document.getElementById(element).innerHTML=xmlHttp.responseText;
			
}

function getValue(url,func)
{
	action=func;
				
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null) { alert ("Your browser does not support AJAX!");	return; }	

	xmlHttp.onreadystatechange=presentValue;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null)	
}

function presentValue() 
{

	if (xmlHttp.readyState==4)
	{
		var test = xmlHttp.responseText;
		test = test.replace(/"/g,"\\\"");
		test = test.replace(/'/g,"\\\'");
		test = test.replace(/\r/g,"");
		test = test.replace(/\n/g,"");
		test = test.replace(/\t/g,"");
		setTimeout(action+"('"+test+"')",1);
	}
			
}

/*-------------------------------------*/

function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}



function f_scrollTop() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}

function documentHeight(returnAll)
{
	height = 0;
	if( typeof( window.innerWidth ) == 'number' ) {
		//Non-IE
		height = window.innerHeight;
	} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
		//IE 6+ in 'standards compliant mode'
		height = document.documentElement.clientHeight;
	} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
		//IE 4 compatible
		height = document.body.clientHeight;
	}
	
	if(returnAll) return height+f_scrollTop();
	return height;
}

function documentWidth() 
{
	var width = 0;
	if( typeof( window.innerWidth ) == 'number' ) {
		//Non-IE
		width = window.innerWidth;
	} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
		//IE 6+ in 'standards compliant mode'
		width = document.documentElement.clientWidth;
	} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
		//IE 4 compatible
		width = document.body.clientWidth;
	}
	
	return width;
}

function box(page,size)
{

	if(!page)
	{
		close_Box();
		return;
	}

	fixedSize = 0;
	if(size) fixedSize = size;

	var cover = "cover";
	var popup = "popup";
	
	//Skapar det övertäckande lagret
	var newdiv = document.createElement("div");
	newdiv.setAttribute("id",cover);
	newdiv.setAttribute("onclick","close_Box()");
	document.body.appendChild(newdiv);
	
	//Skapar popup-boxen
	var newdiv = document.createElement("div");
	newdiv.setAttribute("id",popup);
	document.body.appendChild(newdiv);
	
	
	var popupBox = document.getElementById(popup);
	
	document.getElementById(cover).style.height= ( document.getElementById("madeBy").offsetTop + 30) + "px";
	document.getElementById(popup).innerHTML="<div id=\"closeBox\" onclick=\"close_Box()\"></div>";
	
//	if(page.indexOf("?")==-1) var after = "?="+add;
//	else var after = "&="+add;
	getValue(page,"got_Box");
	
}


function got_Box(value)
{

	var popup = document.getElementById("popup");
	popup.innerHTML += value;
	
	var width = popup.clientWidth-20;
	var maxWidth = documentWidth()*0.7;
	if(width>maxWidth)
	{
		width = maxWidth;
		popup.style.width=width+"px";
	}
	
	if(fixedSize) { width = fixedSize; popup.style.width=fixedSize+"px"; }
	
	var height = popup.clientHeight-20; 
	var maxHeight = documentHeight()-60;
	if(height>maxHeight)
	{
		height = maxHeight;
		popup.style.height=height+"px";
	}
		
	
	popup.style.top = documentHeight()/2 + f_scrollTop() - height/2 - 10 +"px";
	popup.style.left = documentWidth()/2 - width/2 - 10 + "px";
	popup.style.visibility="visible";
	
}


function close_Box()
{
	
	document.body.removeChild(document.getElementById("cover"));
	document.body.removeChild(document.getElementById("popup"));

}

function delay_close_Box()
{
	setTimeout("close_Box()",2000);
}


/*-------------------------------------*/



function restoreSendbutt()
{
	document.getElementById("namn").disabled=false;
	document.getElementById("asikt").disabled=false;
	document.getElementById("sendButt").disabled=false;
	document.getElementById("sendButt").value="Vädra din åsikt"; 
}

function sendComment(id,namn,asikt)
{

	if(confirm("Härmed intygar jag att mitt inlägg strider inte mot\nLAN-Konvents regler eller svensk lag. Jag accepterar\nockså att mitt IP-nummer och tidpunkt för inlägget loggas!"))
	{
		document.getElementById("namn").disabled=true;
		document.getElementById("asikt").disabled=true;
		document.getElementById("sendButt").disabled=true;
		document.getElementById("sendButt").value="Vänta...";
		document.getElementById("loadbar").style.visibility="visible";
		getPage("page.php?id="+id+"&namn="+namn+"&asikt="+asikt,"commentsdiv");
	}

}

function initBoxes(nr)
{

	switch(nr)
	{
		case 1: var tal = new Array(1,2,3,4,5); var url = "gfx/box_"; break;
		case 2: var tal = new Array(1,2,3,4); var url = ""; break;
		case 3: var tal = new Array(1,2,3,4); var url = ""; break;
	}
	
	var newBox = new Array(tal.length);
	var slump;
	
	for(i=0; i<tal.length; i++)
	{	
		slump = Math.floor(Math.random()*tal.length);
		
		while(!newBox[slump]=="")
			slump = Math.floor(Math.random()*tal.length);
			
		newBox[slump] = tal[i];	
	}

	showBox("box1",2,newBox[0],url);
	setTimeout("showBox('box2',3,"+newBox[1]+",'"+url+"')",200);
	setTimeout("showBox('box3',4,"+newBox[2]+",'"+url+"')",400);
	setTimeout("showBox('box4',5,"+newBox[3]+",'"+url+"','initHideBoxes("+nr+")','4000')",600);	

}
function showBox(id,nr,slump,url,endFunc,timeTo) 
{
	document.getElementById(id).style.backgroundImage="url("+url+slump+".jpg)";
	int[nr] = setInterval("fadeUp('"+id+"','"+nr+"','"+endFunc+"','"+timeTo+"')",50); 
}

function initHideBoxes(nr)
{

	setTimeout("hideBox('box1',6,'initBoxes("+nr+")','0')",0);
	setTimeout("hideBox('box2',7)",200);
	setTimeout("hideBox('box3',8)",400);
	setTimeout("hideBox('box4',9)",600);

}
function hideBox(id,nr,endFunc,timeTo) { int[nr] = setInterval("fadeDown('"+id+"','"+nr+"','"+endFunc+"','"+timeTo+"')",50); }
	
function initBanner(addr)
{
	add = addr;
	bannerMax = 7;
	bannerNr = Math.floor(Math.random()*bannerMax);;
	changeBanner();
}




function changeBanner()
{

	bannerNr++;		
	var temp = fUp;
	fUp = fDown;
	fDown = temp;

	if(bannerNr>bannerMax) bannerNr=1;
	document.getElementById(state[fUp]).style.backgroundImage="url("+add+"gfx/banner/"+bannerNr+".jpg)";		
	
	int[0] = setInterval("fadeDown('"+state[fDown]+"',0)",50);
	int[1]= setInterval("fadeUp('"+state[fUp]+"',1,'changeBanner()','5000')",50);
	
	
}
var x=0;
function fadeDown(id,nr,endFunc,timeTo)
{
	x++; 

	var opacitet;
	var ele = document.getElementById(id);
	
	if (ele.style.MozOpacity)
	{
		opacitet=(ele.style.MozOpacity*100)*0.9;
		if(opacitet<5) opacitet = 0;
		ele.style.MozOpacity=(opacitet/100);
	}
	else if (ele.filters)
	{
		opacitet=ele.filters.alpha.opacity*0.9;
		if(opacitet<5) opacitet = 0;
		ele.filters.alpha.opacity=opacitet;	
	}
	
	
	if(opacitet==0)
	{
		clearInterval(int[nr]);
		if(endFunc) setTimeout(endFunc,timeTo);
	}
			

}


function fadeUp(id,nr,endFunc,timeTo)
{
	var opacitet;
	var ele = document.getElementById(id);

	if (ele.style.MozOpacity)
	{
		opacitet=(ele.style.MozOpacity*100)*1.1;
		if(opacitet<1) opacitet=1;
		if(opacitet>100) opacitet=100;
		ele.style.MozOpacity=(opacitet/100);
	}
	else if (ele.filters)
	{
		opacitet=ele.filters.alpha.opacity*1.1;
		if(opacitet<1) opacitet=5;
		if(opacitet>100) opacitet = 100;

		ele.filters.alpha.opacity=opacitet;
	}
	

	if(opacitet==100)
	{
		clearInterval(int[nr]);
		if(endFunc) setTimeout(endFunc,timeTo);
	}

}

function menu(ele,over)
{
	var info = document.getElementById("info");
	if(over)
	{
		info.innerHTML=ele.id;
		info.style.display="inline";
		ele.style.cursor="pointer";
		ele.style.backgroundColor="#ff0000";
	}
	else
	{
		info.innerHTML="";
		info.style.display="none";
		ele.style.cursor="default";
		if(ele.className=="mBox")
			ele.style.backgroundColor="#252f3c";
		else
			ele.style.backgroundColor="#6e6c6b";
	}

}

var patterns = new Array();
					
patterns["fornamn"] = /^([A-ZÅÄÖ]{1})([A-ZÅÄÖa-zåäö -]+)$/;
patterns["efternamn"] = /^([A-ZÅÄÖ]{1})([A-ZÅÄÖa-zåäö -]+)$/;
patterns["personnummer"] = /^(\d{8})$/;
patterns["gata"] = /^([A-ZÅÄÖ]{1})([A-ZÅÄÖa-zåäö0-9 .]+)$/;
patterns["postnummer"] = /^\d{5}$/;
patterns["stad"] = /^([A-ZÅÄÖ]{1})([a-zåäö]+)$/;
patterns["telefonnummer"] = /^(\d{1,4})\-(\d{4,8})$/;
patterns["epostadress"] = /^(\w.+)\@(\w.+)\.(\w{2,4})$/;
patterns["nick"] = /^[A-ZÅÄÖa-zåäö0-9_^ ]{1,10}$/;
patterns["losenord"] = /^(?=.*\d)(?=.*[a-zA-Z])(?!.*\s).*$/;
patterns["clan"] = /^.{0,20}$/;
patterns["ticketNbr"] = /^(.{10}|.{0})$/;

function showInfo(text)
{

	var info = document.getElementById("info");
	if(text)
	{
		info.innerHTML=text;
		info.style.display="inline";
	}
	else
	{
		info.innerHTML="";
		info.style.display="none";
	}

}					

function check(ele,nr)
{


	var fault = document.getElementById("f_"+ele.name);
	
	if(ele.value.search(patterns[ele.name])!=-1)
		fault.innerHTML="<img src=\"../../gfx/valid.png\">";
	else
		fault.innerHTML="<img src=\"../../gfx/invalid.png\">";
	
	

}

function validateForm()
{

	var fault = 0;
	var ele,f;

	for(i=1; i<13; i++)
	{
		ele = document.forms[0].elements[i];
		if(ele.name!=undefined)
		{
			f = document.getElementById("f_"+ele.name);
		
			if(ele.value.search(patterns[ele.name])!=-1)
			{
				f.innerHTML="<img src=\"../../gfx/valid.png\">";
			}
			else
			{
				f.innerHTML="<img src=\"../../gfx/invalid.png\">";
				fault++;
			}
		}
	}
	
	
	if(fault>0)
		alert("Formuläret innehåller " + fault + " st. fel");
	else
	{
		var ticketNbr = document.forms[0].ticketNbr.value;
		if(ticketNbr) getValue("/incs/checkTicket.php?ticketNbr="+ticketNbr,"returnFromTicketCheck");
		else box('/phppages/tickets-skickabokning.php',400);
	}
		
	return false;
}

function returnFromTicketCheck(value)
{

	if(value)
	{
		var result = "";
		while(result.search(/^.{10}$/) == -1)
		{
			if(result) value = result;
			result = prompt("Biljettnumret stämde inte med vår databas.\nKontrollera numret igen!",value);
			
			if(result == null) return;
			if(result.search(/^.{10}$/) == -1) alert("Felaktigt format på biljettnumret!");
			
		}
		
		document.forms[0].ticketNbr.value = result;
		getValue("/incs/checkTicket.php?ticketNbr="+result,"returnFromTicketCheck");

	}
	else box('/phppages/tickets-skickabokning.php',400);

}

function popItUp(state,width,height,url)
{
	var cover = document.getElementById("cover");
	var popup = document.getElementById("popup");
	var height,width;

	if(state)
	{
		popup.innerHTML="<p align=\"center\" style=\"margin-top: "+(height/2)+"\"><img src=\"/gfx/loading.gif\"></p>";
		if(url) getPage(url,"popup");
		
		var cont	= document.getElementById("container");
		var fromTop = (document.body.clientHeight/2) + f_scrollTop() - (height/2);
		
		cover.style.height=cont.offsetHeight+20;
		
		popup.style.height=height;	popup.style.marginTop = fromTop;
		popup.style.width=width;	popup.style.marginLeft="-"+(width/2);
		
		cover.style.display	= "block";
		popup.style.display="block";
	}
	else
	{
		cover.style.display	= "none";
		popup.style.display ="none";
	}	

}

function acceptUser(id)
{
	visitPage("process.php?do=accept&id="+id);
	hideBox("box_"+id,1,"deleteBox("+id+")","0");
}

function deleteBox(id)
{
	document.getElementById("box_"+id).style.display="none";
}

function deleteUser(ele,id)
{
	ele.disabled=true;
	setTimeout("processDelete("+id+")",1000);
}

function processDelete(id)
{
	visitPage("process.php?do=delete&id="+id+"&reason="+document.getElementById("reason").value);
	document.getElementById("box_"+id).style.display="none";
	popItUp(false);
}

function clearPayment(id)
{

	var check = document.getElementById("check").checked;
	
	if(check==false)
	{
		alert("Du måste kryssa i kontrollboxen!");
		return false;
	}
	
	if(confirm("Detta rensar betalningen, fortsätta?"))
	{
		document.getElementById("submit").disabled=true;
		document.getElementById("submit").value="Vänta...";
		getValue("process.php?do=payment&id="+id+"&check="+check,"getPage('action.php?do=payment&id="+id+"','popup')");
	}
	
}

function regPayment(id)
{

	var summa = document.getElementById("summa").value;
	var namn = document.getElementById("namn").value;
	
	
	if(summa.search(/^\d+$/)==-1)
	{
		alert("Fyll i en giltig summa!");
		return false;
	}
	
	if(!namn)
	{
		alert("Fyll i vår referens!");
		return false;
	}
	
	document.getElementById("submit").disabled=true;
	document.getElementById("submit").value="Vänta...";
	getValue("process.php?do=payment&id="+id+"&summa="+summa+"&namn="+namn,"getPage('action.php?do=payment&id="+id+"','popup')");
	
}

function sb_hoverTable(ele,over)
{
	
	var tableName = ele.id;
	var nameBox = document.getElementById("name_"+tableName);

	if(over)
	{
		ele.style.backgroundColor="#D9E5ED";
		nameBox.style.visibility="visible";
	}
	else
	{
		ele.style.backgroundColor="white";
		nameBox.style.visibility="hidden";
	}
	

}

function sb_getLastSeat(row)
{
	var seat=0;
	while(document.getElementById(row+(seat+1)))
		seat++;
	
	return seat;

}

var valid;
var noClan;

function sb_hoverSeat(ele,add,admin)
{

	//Definiera variabler
	var info = document.getElementById("info");
	var currentSeat = ele.id.split(":");
	var currentSeatNr = parseInt(currentSeat[2]);
	var currentRow = currentSeat[0]+":"+currentSeat[1]+":";
	var maxSeats = sb_getLastSeat(currentRow);
	var color = "black";
	var fault="";
	noClan = true;
	valid = true;
	
	if(admin)
	{
		var totalSeats = 1;
		var id=0;
		var clanSelect = document.getElementById("clan");
		var currentClan = clanSelect.options[clanSelect.selectedIndex].text;
		var currentClan_id = parseInt(clanSelect.options[clanSelect.selectedIndex].value);
	}
	else
	{
		var seatSelect = document.getElementById("nrSeats");
		var totalSeats = parseInt(seatSelect.options[seatSelect.selectedIndex].value);
		var id = parseInt(document.getElementById("id").value);
	}

	if(add)
	{
	
		if(totalSeats==0)
		{
			totalSeats=1;
			valid=false;
			fault = "Inga stolar</strong></p><hr>"+
					"<p>Du måste välja ett stolantal större än 0 i listan.</p>";
		}
			
		//Kontrollerar om någon av stolarna tillhör clanen
		for(i=0;i<totalSeats;i++)
		{
			if(seat = document.getElementById(currentRow+(currentSeatNr+i)))
			{
				if(parseInt(seat.className)==id)
					noClan = false;
			}
		}
		
		if(noClan)
		{
		
			//Finns alla stolar med?
			if((currentSeatNr+totalSeats-1)>maxSeats)
			{
				valid = false;
				fault = "Felaktig markering</strong></p><hr>"+
					"<p>En eller flera stolar i markeringen finns utanför platskartan. Flytta markeringen till vänster!</p>";
			}
			
			if(valid)
			{
		
				//Loopar genom alla efterföljande säten för att kontrollera status
				for(i=0;i<totalSeats;i++)
				{
					if(document.getElementById(currentRow+(currentSeatNr+i)).className)
						valid = false;
						
				}
				
				if(valid && !admin)
				{
				
					//Kontrollerar glipa innan begärd bokning
					if(seat = document.getElementById(currentRow+(currentSeatNr-2)))
					{
						seat2 = document.getElementById(currentRow+(currentSeatNr-1));
						if(seat.className && !seat2.className) valid = false;
					}
					
					//Kontrollerar glipa efter begärd bokning
					if(seat = document.getElementById(currentRow+(currentSeatNr+totalSeats+1)))
					{
						seat2 = document.getElementById(currentRow+(currentSeatNr+totalSeats));
						if(seat.className && !seat2.className) valid = false;
					}
					
					//Kontrollerar glipa på första stolen
					if(seat = document.getElementById(currentRow+(currentSeatNr-1)))
					{
						if(seat.id==currentRow+1 && !seat.className) valid = false;
					}
					
					//Kontrollerar glipa på sista stolen
					if(seat = document.getElementById(currentRow+(currentSeatNr+totalSeats)))
					{
						if(seat.id==currentRow+maxSeats && !seat.className) valid = false;
					}
					
					if(!valid) fault = "Ledig stol emellan</strong></p><hr>"+
										"<p>Mellanrum med endast en stol är otillåtet!</p>";	
					
				}
				else
				{
					if(totalSeats==1) txt = "Stolen är bokad";
					else  txt = "Minst en stol är bokad";
					
					if(admin) fault = txt + "</strong></p><hr><p id=\"info_"+ele.id+"\">Hämtar info <img src=\"/gfx/loading.gif\"></p>"+
											"<hr><p>Klicka för att avboka!</p>";
					else fault = txt + "</strong></p><hr><p id=\"info_"+ele.id+"\">Hämtar info <img src=\"/gfx/loading.gif\"></p>";
					
					getPage("/incs/getSeatInfo.php?hall="+currentSeat[0]+"&row="+currentSeat[1]+"&seat="+currentSeat[2]+"&","info_"+ele.id);
				}
		
			}
		
			
			if(valid)
			{
				color="yellow";
				if(totalSeats==1) txt = "Stolen är ledig";
				else txt = "Stolarna är lediga";		
				html = "<p><img src=\"/gfx/valid.png\" align=\"left\"> <strong>" + txt + "</strong></p><hr>"
				
				if(admin) html += "Klicka för att placera <strong>"+currentClan+"</strong> här";
				else html +="<p><strong>Klicka</strong> för att boka!</p>";
				ele.style.cursor="pointer";
			}
			else
			{
				color="red";
				html = "<p><img src=\"/gfx/invalid.png\" align=\"left\"> <strong>"+fault;
				ele.style.cursor="auto";
			}
		}
		else
		{
			valid=true;
	
			//Om någon av sätena tillhör clanen markeras dessa säten
			for(i=1;i<=maxSeats;i++)
			{
				seat = document.getElementById(currentRow+i);
				if(parseInt(seat.className)==id)
					seat.style.border="1px solid red";
				else
					seat.style.border="1px solid black";
			}

			html = "<p><img src=\"/gfx/valid.png\" align=\"left\"> <strong>Dessa tillhör dig</strong></p><hr>"+
					"<p><strong>Klicka</strong> för att avboka samtliga markerade platser på raden!</p>";
					
			ele.style.cursor="pointer";
			
		}


		info.innerHTML="<div style=\"width: 150px\">"+html+"</div>";
		info.style.display="inline";
	}
	else
	{
		info.innerHTML="";
		info.style.display="none";
	}
	

	
	//Markerar de valda sätena med rätt färg (beroende på status)
	if(noClan)
	{
		for(i=1;i<=maxSeats;i++)
		{
			seat = document.getElementById(currentRow+i)
			if(i>=currentSeatNr && i<=(currentSeatNr+totalSeats-1))
				seat.style.border="1px solid "+color;
			else
				seat.style.border="1px solid black";
		}
	}

}

function sb_bookSeat(ele)
{

	var info = document.getElementById("info");
	var currentSeat = ele.id.split(":");
	var currentSeatNr = parseInt(currentSeat[2]);
	var currentRow = currentSeat[0]+":"+currentSeat[1]+":";
	var seatSelect = document.getElementById("nrSeats");
	var totalSeats = parseInt(seatSelect.options[seatSelect.selectedIndex].value);
	var avSeats = parseInt(document.getElementById("avSeats").value);
	var id = document.getElementById("id").value;
	var selectedSeats="";

	if(valid)
	{
	
		if(noClan)
		{
		
			//Markerar de valda sätena med rätt färg (beroende på status)
			for(i=0;i<totalSeats;i++)
			{
				name = currentRow+(currentSeatNr+i);
				seat = document.getElementById(name);
				seat.style.backgroundColor="yellow";
				seat.className=id;
				seatSelect.remove(seatSelect.length - 1);
				selectedSeats+=name+"|";
			}
			
			getValue("/phppages/biljetter-loginhanterare.php?do=bookSeats&id="+id+"&seats="+selectedSeats,"bookResult");

			
		}
		else
		{
		
			//Nollställer platser
			for(i=1;i<=sb_getLastSeat(currentRow);i++)
			{
				seat = document.getElementById(currentRow+i);
				if(parseInt(seat.className)==id)
				{
					seat.style.backgroundColor="#1be324";
					seat.className="";
					if(seatSelect.length<=avSeats) sb_addToSelect();
				}
			}
			
			visitPage("/phppages/biljetter-loginhanterare.php?do=clearRow&id="+id+"&hall="+currentSeat[0]+"&row="+currentSeat[1]);
		
		}
		
		//Väljer max antal stolar i listan
		seatSelect.options[seatSelect.length-1].selected=true;
		
		//Anropar platsfunktionen
		sb_hoverSeat(ele,true);
		
	}

}

function bookResult(value)
{
	if(value=="false")
	{
		alert("Du har inte tillräckligt med platser\nför att boka de platser du begär.\nEtt fel har uppstått, sidan laddas om!");
		self.location.reload();
	}
}

function sb_adminBookSeat(ele)
{


	var info = document.getElementById("info");
	var currentSeat = ele.id;
	var clanSelect = document.getElementById("clan");
	var id = parseInt(clanSelect.options[clanSelect.selectedIndex].value);
	
	if(ele.className)
	{
		
		ele.style.backgroundColor="#1be324";
		ele.className="";
		visitPage("save.php?do=clearSeat&seat="+currentSeat);
		
	}
	else
	{
	
		ele.style.backgroundColor="#ff0000";
		ele.className=id;
		visitPage("save.php?do=bookSeat&id="+id+"&seat="+currentSeat);
		
	}

	
	//Anropar platsfunktionen
	sb_hoverSeat(ele,true,1);

}

function sb_addToSelect()
{

	var seatSelect = document.getElementById("nrSeats");
	var newOption = document.createElement("option");
	var lastNr = seatSelect.length;
	
	newOption.text = lastNr;
	newOption.value = lastNr;

	try
	{
		seatSelect.add(newOption,null); // standards compliant; doesn't work in IE
	}
	catch(ex)
	{
		seatSelect.add(newOption); // IE only
	}


}

function takeAway(id,name)
{

	var seatSelect = document.getElementById("nrSeats")
	
	if(seatSelect.length==1)
	{
	
		alert("Du har inga lediga platser!\nFör att ta bort en person måste du\nha minst en plats ledig!");
	
	}
	else
	{
	
		if(confirm("Vill du verkligen ta bort "+name+"?"))
			self.location="/phppages/biljetter-loginhanterare.php?do=takeAway&id="+id;
		
	}

}

function showSeat(hover,seat)
{

	//Definiera variabler
	var info = document.getElementById("info");
	var currentSeat = seat.id.split(":");

	if(hover)
	{
	
		seat.style.border="1px solid blue";
		getPage("getInfo.php?hall="+currentSeat[0]+"&row="+currentSeat[1]+"&seat="+currentSeat[2]+"&","info_"+seat.id);
	
		info.innerHTML="<div style=\"width: 150px\"><p id=\"info_"+seat.id+"\">Hämtar info <img src=\"loading.gif\"></p></div>";
		info.style.display="inline";		
					
		
	}
	else
	{
		seat.style.border="1px solid black";
		info.innerHTML="";
		info.style.display="none";
	}
}

function facebook(page)
{

	if(page)
	{
		u = page;
		t = "LAN-Konvent";
	}
	else
	{
		u=location.href;
		t = document.title;
	}
	
	window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u)+'&t='+encodeURIComponent(t),'sharer','toolbar=0,status=0,width=626,height=350'); 
	return false;

}

function likeNews(id)
{

	var ele = document.getElementById("likeCounter_"+id);
	var text = ele.innerHTML.split(" ");
	
	var nbr = parseInt(text[0]);
	nbr++;
	
	if(nbr==1) ele.innerHTML = nbr+" person";
	else ele.innerHTML = nbr+" personer";
	
	document.getElementById("likeToo_"+id).innerHTML=" - <strong>gilla</strong> du också!";
	
	visitPage("incs/newslike.php?id="+id);
	setTimeout("hideLikeText("+id+")",2000);

}

function hideLikeText(id)
{
	document.getElementById("likeToo_"+id).style.display="none";
}

var oldContent;

function searchForContent(element)
{

	if(element.value=="")
	{
	
		if(oldContent) document.getElementById("content").innerHTML=oldContent;
		oldContent = "";
		return;
	}
	
	document.getElementById("loadingBox").style.visibility="visible";

	if(!oldContent) oldContent = document.getElementById("content").innerHTML;
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null) { alert ("Din webbläsare stödjer inte AJAX\nDags att uppdatera kanske?!");return; }	
	var url="/incs/search.php?"+element.value;
		
	xmlHttp.onreadystatechange=searchResult;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null)
}

function searchResult() 
{ 
	if (xmlHttp.readyState==4)
	{	
	document.getElementById("content").innerHTML=xmlHttp.responseText;
	document.getElementById("loadingBox").style.visibility="hidden";
	}
}

function clearResult()
{
	document.getElementById("search").getElementsByTagName("input")[0].value="";
	if(oldContent) document.getElementById("content").innerHTML=oldContent;
	oldContent = "";
}

function testarDetta(url)
{
	xmlHttp=GetXmlHttpObject()
	if (xmlHttp==null) { alert ("Din webbläsare stödjer inte AJAX\nDags att uppdatera kanske?!");return; }
		
	xmlHttp.onreadystatechange=testarDetta2;
	xmlHttp.open("POST",url,true);
	http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

	xmlHttp.send(null);
}

function testarDetta2() 
{ 
	if (xmlHttp.readyState==4 && xmlHttp.status == 200)
	{	

		alert(xmlHttp.responseText);

	}
}

function comparePasswords()
{
	
	var pass1 = document.forms[0].elements[0].value;
	var pass2 = document.forms[0].elements[1].value;

	if(pass1.search(/^(?=.*\d)(?=.*[a-zA-Z])(?!.*\s).*$/)==-1)
	{
		alert("Använd starka lösenord!\nKombinera siffror, bokstäver och specialtecken!");
		return false;
	}
	else if(pass1.length<=4 || pass1.length>16)
	{
		alert("Lösenordet måste vara längre än 4 tecken\noch mindre än 16!");
		return false;
	}
	else if(pass1!=pass2)
	{
		alert("Lösenorden matchar inte");
		return false;
	}

}

function tourRules(tour)
{

	box("/incs/tour_rules/"+tour+".php",600);
	return false;

}

function commentBlog(id)
{

	getPage("/phppages/lk-live-kommentera.php?do=&id="+id+"&","commentBox_"+id);
	parent.myLightWindow.deactivate();


}