
<!--

var ajaxObjects = new Array();
var treeObj;

function sendErrormsg(val,rel)
{
	var ajaxIndex = ajaxObjects.length;
	ajaxObjects[ajaxIndex] = new sack();
	var url = 'index.php?action=showerror&ajax=true&val='+val;
	ajaxObjects[ajaxIndex].requestFile = url;	// Specifying which file to get
	ajaxObjects[ajaxIndex].runAJAX();		// Execute AJAX function
	ajaxObjects[ajaxIndex].onCompletion = function(){errcomplete(rel);};
	
	return true;
}

function errcomplete(rel)
{
	if(rel)
		window.myframe.location.reload();
	return true;
}

function addslashes(str)
{
	str=str.replace(/\'/g,'\\\'');
	str=str.replace(/\"/g,'\\"');
	str=str.replace(/\\/g,'\\\\');
	str=str.replace(/\0/g,'\\0');
	return str;
}
function stripslashes(str)
{
	str=str.replace(/\\'/g,'\'');
	str=str.replace(/\\"/g,'"');
	str=str.replace(/\\\\/g,'\\');
	str=str.replace(/\\0/g,'\0');
	return str;
}

function toggleloader(on,str)
{
	if(navigator.userAgent.indexOf("Opera") != -1 || navigator.appVersion.indexOf("Safari") != -1)
		return;
	if(on) {
		//parent.document.getElementById('divLoader').style.display='block';
		document.getElementById('divLoaderFrame').style.visibility='visible';
		if(str)
			parent.document.getElementById('spnLoader').innerHTML=str;
		if (document.documentElement && document.documentElement.scrollTop){
			var wintop = document.documentElement.scrollTop;
			var middle = document.documentElement.clientHeight/3;
		}
		else if (document.body){
			var wintop = document.body.scrollTop;
			var middle = document.body.clientHeight/3;
		}
		else if (window.innerHeight){
			var wintop = window.pageYOffset;
			var middle = window.innerHeight/3;
		}
		//return alignLayer('divLoaderFrame','',wintop+middle);
	}
	else {
		//parent.document.getElementById('divLoader').style.display='none';
		document.getElementById('divLoaderFrame').style.visibility='hidden';
	}
}
	
function ajax_action(str,completion,form,element,callstr,ischild,nomsg)
{
	var ajaxqs = "";
	if(!nomsg)
		toggleloader(1);
	var ajaxIndex = ajaxObjects.length;	
	ajaxObjects[ajaxIndex] = new sack();
	if(ischild)
		ajaxObjects[ajaxIndex].child = ischild;
	else
		var ajaxqs = "&ajax=true";
		
	if(element)
		ajaxObjects[ajaxIndex].element = element;
	
	//if(element)ajaxObjects[ajaxIndex].element = element;
	if(completion == 'actionshowmsg')
	ajaxObjects[ajaxIndex].onCompletion = function() { window.iframe_actionmsg.location.replace('showactionmsg.php');if(element == "callback")if(document.getElementById(element).innerHTML == "true")window.location.replace(callstr); } ;	// Specify function that will be executed after file has been found
	if(completion == 'showmsg')
	ajaxObjects[ajaxIndex].onCompletion = function() { window.myframe.location.replace('showmsg.php');if(element == "callback")if(document.getElementById(element).innerHTML == "true")window.location.replace(callstr); };// Specify function 
	if(completion == 'refresh')
	ajaxObjects[ajaxIndex].onCompletion = function() {parent.window.location.reload();};
	if(form)
	{
		var elem = document.forms[form].elements;
		for(var i = 0; i < elem.length; i++)
			ajaxObjects[ajaxIndex].setVar(elem[i].name, elem[i].value);
	}
	ajaxObjects[ajaxIndex].requestFile = str + ajaxqs;	// Specifying which file to get
//alert(ajaxObjects[ajaxIndex].requestFile);
	ajaxObjects[ajaxIndex].runAJAX(); // Execute AJAX function
	ajaxObjects[ajaxIndex].onLoaded = function() {if(!nomsg)toggleloader(0);}
}

function ajax_response(src,obj,nomsg)
{
	var ajaxIndex = ajaxObjects.length;		
	ajaxObjects[ajaxIndex] = new sack();
	
	if(obj)
	{
		if(obj.type == 'textarea' && !nomsg)
			toggleloader(1,'Sparar...');
		else if(!nomsg)
			toggleloader(1);
//		if(obj.value!='')
		ajaxObjects[ajaxIndex].requestFile = src + '&ajax=true&field=' + obj.name + "&values=" + obj.value.replace(/\n/g, '<br>');	// Specifying which file to get
	//	else
		//	ajaxObjects[ajaxIndex].requestFile = src + '&ajax=true&field=' + obj.name;	// Specifying which file to get		
//alert(ajaxObjects[ajaxIndex].requestFile);
	}
	else
	{
		if(!nomsg)
			toggleloader(1);
		ajaxObjects[ajaxIndex].requestFile = src + '&ajax=true';	// Specifying which file to get
	}
	ajaxObjects[ajaxIndex].runAJAX(); // Execute AJAX function
	ajaxObjects[ajaxIndex].onCompletion = function () {/*alert(ajaxObjects[ajaxIndex].response);*/if(ajaxObjects[ajaxIndex].response=='securityerror')window.myframe.location.replace('showmsg.php'); else eval(ajaxObjects[ajaxIndex].response);};
	ajaxObjects[ajaxIndex].onLoaded = function() {if(!nomsg)toggleloader(0);}
}



function ajax_status(src)
{
	var ajaxIndex = ajaxObjects.length;		
	ajaxObjects[ajaxIndex] = new sack();
	
	ajaxObjects[ajaxIndex].requestFile = src + '&ajax=true';	// Specifying which file to get
	
	ajaxObjects[ajaxIndex].runAJAX(); // Execute AJAX function
	ajaxObjects[ajaxIndex].onCompletion = function () {eval(ajaxObjects[ajaxIndex].response);}
}

function MM_findObj2(n, d) { //v3.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i < d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i< d.layers.length;i++) x=MM_findObj2(n,d.layers[i].document); return x;
}

function alignLayer(oDiv, oParent, dTop)
{
	//dbg(document.body.clientWidth);
	dTop = (!dTop)?0:dTop;
	var divtyp = (document.getElementById) ? "document.getElementById" : "MM_findObj2";
	var divobj = (document.getElementById) ? document.getElementById(oDiv) : MM_findObj2(oDiv);
	var parobj = (document.getElementById) ? document.getElementById(oParent) : MM_findObj2(oParent);
	if(divobj) {
		if((oParent) && (parobj))
		{
			var dw = parobj.offsetWidth;
			var dh = parobj.offsetHeight;
			var dl = parobj.offsetLeft;
			var dt = parobj.offsetTop;
		}
		else
		{
			if(document.documentElement && document.documentElement.clientWidth) {
				var dw = document.documentElement.clientWidth;
				var dh = document.documentElement.clientHeight;
			}
			else if (document.body) {
				var dw = document.body.clientWidth;
				var dh = document.body.clientHeight;
			}
			else {
				var dw = window.innerWidth;
				var dh = window.innerHeight;
			}
			var dl = 0;
			var dt = 0;
		}
		
		//var lw = divobj.style.width.replace("px","");
		//var lh = divobj.style.height.replace("px","");
		var lw = divobj.offsetWidth;
		var lh = divobj.offsetHeight;
		
		var x = (document.layers) ? ".left" : ".style.left";
		var y = (document.layers) ? ".top" : ".style.top";
		
		cpie = (navigator.appName.indexOf("Microsoft")!=-1)?4:0;
		if (document.body.scrollHeight > document.body.offsetHeight)
			pageHeight = document.body.scrollHeight;
		else
			pageHeight = document.body.offsetHeight-cpie;
		pageWidth = document.body.scrollWidth;
		var leftpos = Math.round((dw/2)-(lw/2))+'px';
		
//		var pageHeight = document.body.offsetHeight ? parent.document.body.offsetHeight : parent.window.innerHeight;
//		var pageWidth = document.body.offsetWidth ? parent.document.body.offsetWidth : parent.window.innerWidth;

		//var objHeight = divobj.offsetHeight;
		//var objWidth = divobj.offsetWidth;
		//var leftpos = ((pageWidth - parent.document.getElementById(oDiv).offsetWidth) /2)+'px';
		//var leftpos = Math.round((pageWidth/2)-(lw/2))+'px';
		
		//dbg(document.getElementById('iframe_actionmsg').offsetWidth);
		var toppos = Math.round(dTop + 100)+'px';

		//alert(lh+' '+pageHeight+' '+lw+' '+pageWidth);
		if(oDiv == "iframe_actionmsg")
			var movediv = "div_actionmsg";
		else if(oDiv == "myframe")
			var movediv = "Layer1";
		else
			var movediv = oDiv;
		if((lh <= pageHeight) && (lw <= pageWidth))
		{			
		//	eval(divtyp+"('"+movediv+"')"+x+"='"+leftpos+"'");
			eval(divtyp+"('"+movediv+"')"+y+"='"+toppos+"'");
		}
		/*if(movediv == 'Layer1') {
			// have to resize loaderbg to fill screen if document is scrolled..
			
			document.getElementById('divLoader').style.height = pageHeight+'px';
			document.getElementById('iframe_Loader').style.height = pageHeight+'px';
			document.getElementById('divLoader').style.width = pageWidth+'px';
			document.getElementById('iframe_Loader').style.width = pageWidth+'px';
		}*/
	//	alert(dw);
		if(movediv == 'Layer1') {
			// have to resize loaderbg to fill screen if document is scrolled..
			
			document.getElementById('divLoader').style.height = pageHeight+'px';
			document.getElementById('iframe_Loader').style.height = pageHeight+'px';
			document.getElementById('divLoader').style.width = pageWidth+'px';
			document.getElementById('iframe_Loader').style.width = pageWidth+'px';
		}
		return true;
	}
}

function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}

function hideSelects(action) // action can be 'hidden' or 'visible'
{
	if (action != 'visible')
		action='hidden';
	if (navigator.appName.indexOf("MSIE")) {
		for (var S = 0; S < parent.document.forms.length; S++) {
			for (var R = 0; R < parent.document.forms[S].length; R++) {
				if (parent.document.forms[S].elements[R].options) {
					parent.document.forms[S].elements[R].style.visibility = action;
				}
			}
		} 
	}
}

function visibilityToggle(id,action)
{
	var testvis;
    if(document.layers)	   //NN4+
    {
	
		var el = document.layers[id];

		if(action == 'visible')
			el.visibility = "show";		
		else
			el.visibility = "hide";
			
		testvis = (document.layers[id].visibility == "show") ? true : false;
    }
    else if(document.getElementById)	  //gecko(NN6) + IE 5+
    {
        var obj = document.getElementById(id);
			if(action == 'visible')				
			obj.style.visibility = "visible";			
			else
				obj.style.visibility = "hidden";
				
		testvis = (document.getElementById(id).style.visibility == "visible") ? true : false;
    }
    else if(document.all)	// IE 4
    {
		var el = document.all[id].style;
		
		if(action == 'visible')
			el.visibility = "visible";		
		else 
			el.visibility = "hidden";
	
		testvis = (document.all[id].style.visibility == "visible") ? true : false;
    }
	if(action == 'visible') {
		//if(id == 'Layer1')
		//	document.getElementById('divLoader').style.display='block';
		document.onmousewheel=function(){return false;};
		window.onresize=checkScrolltop;
	}
	else {
		//if(id == 'Layer1')
		//	document.getElementById('divLoader').style.display='none';
		document.onmousewheel=function(){return true;};
		window.onresize=function(){return true;};
	}
	/*if(!testvis)
		setTimeout("hideSelects('visible');",100);
	else
		hideSelects('hidden');*/
	if(action == 'visible') {
		if(id == 'Layer1')
		{
			document.getElementById('divLoader').style.display='block';
			document.getElementById('Layer1').style.display='block';
		}
		document.onmousewheel=function(){return false;};
		window.onresize=checkScrolltop;
	}
	else {
		if(id == 'Layer1')
		{
			document.getElementById('divLoader').style.display='none';
			document.getElementById('Layer1').style.display='none';
		}
		document.onmousewheel=function(){return true;};
		
		window.onresize=function(){return true;};
	}

	return true;
}

function checkVisibility(id)
{
	var testvis;
    if(document.layers)	   //NN4+
    {
	
		var el = document.layers[id];
		return	el.visibility			
    }
    else if(document.getElementById)	  //gecko(NN6) + IE 5+
    {
        var obj = document.getElementById(id);
		return obj.style.visibility;
				
    }
    else if(document.all)	// IE 4
    {
		var el = document.all[id].style;				
		return el.visibility;	
    }
}

function checkmove()
{
return;
	document.getElementById("Layer1").style.top = document.getElementById("Layer1_Mover").style.top;
	document.getElementById("Layer1").style.left = document.getElementById("Layer1_Mover").style.left;
	return false;
}

function resetMover()
{
return;
	document.getElementById("Layer1_Mover").style.top = document.getElementById("Layer1").style.top;
	document.getElementById("Layer1_Mover").style.left = document.getElementById("Layer1").style.left;
}

function changeLayer(innehall)
{
document.getElementById("test2").innerHTML = innehall;
}

function formfocus()
{
	if(document.forms[0])
		document.forms[0].elements[0].focus();
}

function forcePopup(url)
{
	//var oWin = window.open(url,"newwin");
	var oWin = window.open("","newWin","");
	oWin.location.replace(url);
	oWin.focus();
	if (oWin == null || typeof(oWin) == "undefined")
	{
		setTimeout('forcePopup('+url+');', 100);
		return false;
	}
	else
		return true;
}

/*
To create a dragable layer put:

	<script type="text/javascript" language="javascript1.2"><!--
		createDragableLayer(
			'This layer is dragable', //contents of dragable layer (can contain HTML etc.)
			10,                       //left coordinate of dragable layer
			100,                      //top coordinate of dragable layer
			150,                      //width of dragable layer
			30,                       //optional: height of dragable layer (use null for default)
			'#ff0000'                 //optional: background colour of dragable layer (use null for default)
		);
	//--></script>
___________________________________________________________________________________________*/

function createDragableLayer(layerId, layerContent,leftPos,topPos,layerWidth,layerHeight,layerBG) {
	if( document.layers ) {
		document.write( '<layer left="'+leftPos+'" top="'+topPos+'" width="'+layerWidth+'" '+(layerHeight?('height="'+layerHeight+'" '):'')+(layerBG?('bgcolor="'+layerBG+'" '):'')+'onmouseover="this.captureEvents(Event.MOUSEDOWN);this.onmousedown=dragIsDown;">'+layerContent+'</layer>' );
	} else {
		document.write( '<div id="'+layerId+'" style="position:absolute;visibility:hidden;z-index:99;left:'+leftPos+'px;top:'+topPos+'px;width:'+layerWidth+'px;'+(layerHeight?('height:'+layerHeight+'px;'):'')+(layerBG?('background-color:'+layerBG+';'):'')+'" onmouseover="this.onmousedown=dragIsDown;" ondragstart="return false;" onselectstart="return false;">'+layerContent+'</div>' );
	}
}

function dragMousePos(e) {
	//get the position of the mouse
	if( !e ) { e = window.event; } if( !e || ( typeof( e.pageX ) != 'number' && typeof( e.clientX ) != 'number' ) ) { return [0,0]; }
	if( typeof( e.pageX ) == 'number' ) { var xcoord = e.pageX; var ycoord = e.pageY; } else {
		var xcoord = e.clientX; var ycoord = e.clientY;
		if( !( ( window.navigator.userAgent.indexOf( 'Opera' ) + 1 ) || ( window.ScriptEngine && ScriptEngine().indexOf( 'InScript' ) + 1 ) || window.navigator.vendor == 'KDE' ) ) {
			if( document.documentElement && ( document.documentElement.scrollTop || document.documentElement.scrollLeft ) ) {
				xcoord += document.documentElement.scrollLeft; ycoord += document.documentElement.scrollTop;
			} else if( document.body && ( document.body.scrollTop || document.body.scrollLeft ) ) {
				xcoord += document.body.scrollLeft; ycoord += document.body.scrollTop; } } }
	return [xcoord,ycoord];
}

function dragIsDown(e) {
	//make note of starting positions and detect mouse movements
	if( ( e && ( e.which > 1 || e.button > 1 ) ) || ( window.event && ( window.event.which > 1 || window.event.button > 1 ) ) ) { return false; }
	if( document.onmouseup == dragIsMove ) { document.onmousemove = storeMOUSEMOVE; document.onmouseup = window.storeMOUSEUP; } //mouseup was over chrome
	window.msStartCoord = dragMousePos(e); window.lyStartCoord = this.style?[parseInt(this.style.left),parseInt(this.style.top)]:[parseInt(this.left),parseInt(this.top)];
	if( document.captureEvents && Event.MOUSEMOVE ) { document.captureEvents(Event.MOUSEMOVE); document.captureEvents(Event.MOUSEUP); }
	window.storeMOUSEMOVE = document.onmousemove; window.storeMOUSEUP = document.onmouseup; window.storeLayer = this;
	document.onmousemove = dragIsMove; document.onmouseup = dragIsMove; return false;
}

function dragIsMove(e) {
	//move the layer to its newest position
	var msMvCo = dragMousePos(e); if( !e ) { e = window.event ? window.event : ( new Object() ); }
	var newX = window.lyStartCoord[0] + ( msMvCo[0] - window.msStartCoord[0] );
	var newY = window.lyStartCoord[1] + ( msMvCo[1] - window.msStartCoord[1] );
	//reset the mouse monitoring as before - delay needed by Gecko to stop jerky response (hence two functions instead of one)
	//as long as the Gecko user does not release one layer then click on another within 1ms (!) this will cause no problems
	if( e.type && e.type.toLowerCase() == 'mouseup' ) { document.onmousemove = storeMOUSEMOVE; document.onmouseup = window.storeMOUSEUP; }
	if( navigator.product == 'Gecko' ) { window.setTimeout('dragIsMove2('+newX+','+newY+');',1); } else { dragIsMove2(newX,newY); }
}

function dragIsMove2(x,y) { var oPix = ( document.childNodes ? 'px' : 0 ), theLayer = ( window.storeLayer.style ? window.storeLayer.style : window.storeLayer ); theLayer.left = x + oPix; theLayer.top = y + oPix; }

/*var url = String(window.location);
var idx = url.indexOf("?");
if(idx != -1)
{
	var data = url.substr(idx+1);
	var vars = data.split("=");
	option = vars[0];
	action = vars[1];
	action = action.split("&");
	action = action[0];
	if(option == "eventonline" && action == "login")
		forcePopup("http://www.eventonline.se/login.php");
}*/

function checkScrolltop() {
	if (document.documentElement && document.documentElement.scrollTop)
		var wintop = document.documentElement.scrollTop;
	else if (document.body)
		var wintop = document.body.scrollTop;
	else if (window.innerHeight)
		var wintop = window.pageYOffset;

	var objA = document.getElementById('Layer1');
	var objB = document.getElementById('div_actionmsg');
	var visA = (objA && objA.style.visibility == 'visible') ? true : false;
	var visB = (objB && objB.style.visibility == 'visible') ? true : false;
	if(document.forms['login'])
		var tbl = 'tblLogin';
	else
		var tbl = 'tblMain';
	if(visA)
		alignLayer('myframe',tbl,wintop);
	if(visB)
		alignLayer('iframe_actionmsg',tbl,wintop);
}

function leadingZero(nr)
{
	if (nr < 10) nr = "0" + nr;
	return nr;
}

// -->