	
	var timeout         = 500;
	var closetimer		= 0;
	var ddmenuitem      = 0;
	var rollovercounter = 0;
	var interval1		= 0;
	var manurocounter	= 0;
	
	//var interval0 = setInterval("doAsync(null);",1000);
	//var httpObject = getHTTPObject();
	
	function toggleLayer( whichLayer ) {  
		var elem, vis;  
		if( document.getElementById ) // this is the way the standards work    
			elem = document.getElementById( whichLayer );  
		else if( document.all ) // this is the way old msie versions work      
			elem = document.all[whichLayer];  
		else if( document.layers ) // this is the way nn4 works    
			elem = document.layers[whichLayer];  
		
		vis = elem.style;  // if the style.display value is blank we try to figure it out here  
		
		if(vis.display==''&&elem.offsetWidth!=undefined&&elem.offsetHeight!=undefined)    
			vis.display = (elem.offsetWidth!=0&&elem.offsetHeight!=0)?'block':'none';  
		
		vis.display = (vis.display==''||vis.display=='block')?'none':'block';
	
	}
	
	function ReadCookie( check_name ) {
		// first we'll split this cookie up into name/value pairs
		// note: document.cookie only returns name=value, not the other components
		var a_all_cookies = document.cookie.split( ';' );
		var a_temp_cookie = '';
		var cookie_name = '';
		var cookie_value = '';
		var b_cookie_found = false; // set boolean t/f default f
	
		for ( i = 0; i < a_all_cookies.length; i++ )
		{
			// now we'll split apart each name=value pair
			a_temp_cookie = a_all_cookies[i].split( '=' );
	
	
			// and trim left/right whitespace while we're at it
			cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');
	
			// if the extracted name matches passed check_name
			if ( cookie_name == check_name )
			{
				b_cookie_found = true;
				// we need to handle case where cookie has no value but exists (no = sign, that is):
				if ( a_temp_cookie.length > 1 )
				{
					cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
				}
				// note that in cases where cookie is initialized but no value, null is returned
				return cookie_value;
				break;
			}
			a_temp_cookie = null;
			cookie_name = '';
		}
		if ( !b_cookie_found )
		{
			return null;
		}
	}
	
	function getHTTPObject(){
		if (window.ActiveXObject)
			return new ActiveXObject("Microsoft.XMLHTTP");
		if (window.XMLHttpRequest)
			return new XMLHttpRequest();
		else {
			alert("Your browser does not support AJAX.");
			return null;
		}
	}
	
	function doAsync(sendmessage) {
	    if (httpObject != null) {
	    	if(sendmessage!=null){
	    		httpObject.open("GET", "async.php?message=" + sendmessage +"&id="+ReadCookie("id") +"&sessionid="+ReadCookie("sessionid"), true);
	    	} else {
	    		httpObject.open("GET", "async.php?id="+ReadCookie("id") +"&sessionid="+ReadCookie("sessionid"), true);
	    	}
	    	httpObject.onreadystatechange = setOutput;
	    	httpObject.send(null);
	    }
	}
	
	function setOutput(){
		var resp;
		if(httpObject.readyState == 4){
			//resp=httpObject.responseText;
			//alert(resp.substring(resp.length-4,4));
			//if(resp.substring(resp.length-4,4))=="&&&&"){
				document.all.chattext.innerHTML = httpObject.responseText;
			//}
		}
	}

	// open hidden layer
	function mopen(id)
	{
		// cancel close timer
		mcancelclosetime();
	
		// close old layer
		if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
	
		// get new layer and show it
		ddmenuitem = document.getElementById(id);
		ddmenuitem.style.visibility = 'visible';
	
	}
	// close showed layer
	function mclose()
	{
		if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
	}
	
	// go close timer
	function mclosetime()
	{
	    if(interval1=="0") interval1 = setInterval("blendimage(1000);",2000);
		closetimer = window.setTimeout(mclose, timeout);
	}
	
	// cancel close timer
	function mcancelclosetime()
	{
	    clearInterval(interval1);
	    interval1="0";
		if(closetimer)
		{
			window.clearTimeout(closetimer);
			closetimer = null;
		}
	}
	
	function changeImage( path ) {
	    //alert(path);
	    document.getElementById('im').src=path;
	}
	
	function opacity(id, opacStart, opacEnd, millisec) {
	    //speed for each frame
	    var speed = Math.round(millisec / 100);
	    var timer = 0;
	
	    //determine the direction for the blending, if start and end are the same nothing happens
	    if(opacStart > opacEnd) {
	        for(i = opacStart; i >= opacEnd; i--) {
	            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
	            timer++;
	        }
	    } else if(opacStart < opacEnd) {
	        for(i = opacStart; i <= opacEnd; i++)
	            {
	            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
	            timer++;
	        }
	    }
	}
	
	//change the opacity for different browsers
	function changeOpac(opacity) {
	    if(typeof(rolloverarray)!='undefined'){
	    var object = document.getElementById('blendimage').style;
	    object.opacity = (opacity / 100);
	    object.MozOpacity = (opacity / 100);
	    object.KhtmlOpacity = (opacity / 100);
	    object.filter = "alpha(opacity=" + opacity + ")";
	    }
	    var object = document.getElementById('manuimage').style;
	    object.opacity = (opacity / 100);
	    object.MozOpacity = (opacity / 100);
	    object.KhtmlOpacity = (opacity / 100);
	    object.filter = "alpha(opacity=" + opacity + ")";
	}
	
	function blendimage(millisec) {
	    var speed = Math.round(millisec / 100);
	    var timer = 0;
	
	    if(typeof(rolloverarray)!='undefined'){
	    document.getElementById('blenddiv').style.backgroundImage = "url(" + document.getElementById('blendimage').src + ")";
	    changeOpac(0, 'blendimage');
	    document.getElementById('blendimage').src = rolloverarray[rollovercounter];
	    rollovercounter++;
	    if ( rollovercounter >= rolloverarray.length ) {rollovercounter = 0;}
	    }
	
	    //document.getElementById('manudiv').style.backgroundImage = "url(" + document.getElementById('manuimage').src + ")";
	    changeOpac(0, 'manuimage');
	    document.getElementById('manuimage').src = manuroarray[manurocounter];
	    manurocounter++;
	    if ( manurocounter >= manuroarray.length ) {manurocounter = 0;}
	
	    //fade in image
	    for(i = 0; i <= 100; i++) {
	        setTimeout("changeOpac("+i+")",(timer * speed));
	        timer++;
	    }
	
	}
	interval1 = setInterval("blendimage(1000);",2000);
	// close layer when click-out
	document.onclick = mclose;
