
function sleep(ms){
	var zeit=(new Date()).getTime();
	var stoppZeit=zeit+ms;
	while((new Date()).getTime()<stoppZeit){};
}


function loadLoader() {
    loadDiv=document.getElementById('loader');
  	loadDiv.style.display = 'block';
}

function unloadLoader() {
  loadDiv=document.getElementById('loader');
	loadDiv.style.display = 'none';
}

function loadLoaderInfo(info) {
    loadDiv=document.getElementById('loaderInfo');
  	loadDiv.style.display = 'block';
  	document.getElementById('infoText').innerHTML=info;
  	document.getElementById('infoText').style.display = 'block';
}

function unloadLoaderInfo() {
	loadDiv=document.getElementById('loaderInfo');
	loadDiv.style.display = 'none';
	document.getElementById('infoText').innerHTML='';
  	document.getElementById('infoText').style.display = 'none';
}
/**
*
*  URL encode / decode
*  http://www.webtoolkit.info/
*
**/
 
var Url = {
 
	// public method for url encoding
	encode : function (string) {
		return escape(this._utf8_encode(string));
	},
 
	// public method for url decoding
	decode : function (string) {
		return this._utf8_decode(unescape(string));
	},
 
	// private method for UTF-8 encoding
	_utf8_encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
 
		for (var n = 0; n < string.length; n++) {
 
			var c = string.charCodeAt(n);
 
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 
		}
 
		return utftext;
	},
 
	// private method for UTF-8 decoding
	_utf8_decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;
 
		while ( i < utftext.length ) {
 
			c = utftext.charCodeAt(i);
 
			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}
 
		}
 
		return string;
	}
 
}

var element_id = '';
var http_request = false;

function makeRequest(url, parameters) {
      http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) {
         	// set type accordingly to anticipated content type
            //http_request.overrideMimeType('text/xml');
            http_request.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }


	  http_request.onreadystatechange = alertContents;
      http_request.open('POST', url, true);
	  http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      http_request.setRequestHeader("Content-length", parameters.length);
      http_request.setRequestHeader("Connection", "close");
	  http_request.send(parameters);



   }

   function alertContents() {
   	
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            result = http_request.responseText;
            unloadLoader();
            document.getElementById(element_id).innerHTML = result;
            return true;
            } else {
            	unloadLoader();
            alert('ERROR: AJAX request status = ' + http_request.status);
		}
      }
   }


function  login_sent(form) {
	loadLoader();
	element_id = 'left';
	var getstr = "nickname=";
	getstr += form.nickname.value+"&password="+form.passwort.value;
	makeRequest('inc/ajax/check_login.php', getstr);
}

function logout()
{
	loadLoader();
	element_id = 'left';
	var getstr = "";
	makeRequest('inc/ajax/logout.php', getstr);
}

function reloadLeftContainer()
{
	loadLoader();
	element_id = 'left';
	var getstr = "";
	makeRequest('con_left.inc.php', getstr);
}
function reloadRightContainer()
{
	loadLoader();
	element_id = 'right';
	var getstr = "";
	makeRequest('con_right.inc.php', getstr);
}



function Side_hidden()
{
    loadContent=document.getElementById('content');
	loadContent.style.visibility = 'hidden';
	
}

function Side_display()
{
    loadContent=document.getElementById('content');
	loadContent.style.visibility = 'visible';
}

function SHA1 (msg) {
 
	function rotate_left(n,s) {
		var t4 = ( n<<s ) | (n>>>(32-s));
		return t4;
	};
 
	function lsb_hex(val) {
		var str="";
		var i;
		var vh;
		var vl;
 
		for( i=0; i<=6; i+=2 ) {
			vh = (val>>>(i*4+4))&0x0f;
			vl = (val>>>(i*4))&0x0f;
			str += vh.toString(16) + vl.toString(16);
		}
		return str;
	};
 
	function cvt_hex(val) {
		var str="";
		var i;
		var v;
 
		for( i=7; i>=0; i-- ) {
			v = (val>>>(i*4))&0x0f;
			str += v.toString(16);
		}
		return str;
	};
 
 
	function Utf8Encode(string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
 
		for (var n = 0; n < string.length; n++) {
 
			var c = string.charCodeAt(n);
 
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 
		}
 
		return utftext;
	};
 
	var blockstart;
	var i, j;
	var W = new Array(80);
	var H0 = 0x67452301;
	var H1 = 0xEFCDAB89;
	var H2 = 0x98BADCFE;
	var H3 = 0x10325476;
	var H4 = 0xC3D2E1F0;
	var A, B, C, D, E;
	var temp;
 
	msg = Utf8Encode(msg);
 
	var msg_len = msg.length;
 
	var word_array = new Array();
	for( i=0; i<msg_len-3; i+=4 ) {
		j = msg.charCodeAt(i)<<24 | msg.charCodeAt(i+1)<<16 |
		msg.charCodeAt(i+2)<<8 | msg.charCodeAt(i+3);
		word_array.push( j );
	}
 
	switch( msg_len % 4 ) {
		case 0:
			i = 0x080000000;
		break;
		case 1:
			i = msg.charCodeAt(msg_len-1)<<24 | 0x0800000;
		break;
 
		case 2:
			i = msg.charCodeAt(msg_len-2)<<24 | msg.charCodeAt(msg_len-1)<<16 | 0x08000;
		break;
 
		case 3:
			i = msg.charCodeAt(msg_len-3)<<24 | msg.charCodeAt(msg_len-2)<<16 | msg.charCodeAt(msg_len-1)<<8	| 0x80;
		break;
	}
 
	word_array.push( i );
 
	while( (word_array.length % 16) != 14 ) word_array.push( 0 );
 
	word_array.push( msg_len>>>29 );
	word_array.push( (msg_len<<3)&0x0ffffffff );
 
 
	for ( blockstart=0; blockstart<word_array.length; blockstart+=16 ) {
 
		for( i=0; i<16; i++ ) W[i] = word_array[blockstart+i];
		for( i=16; i<=79; i++ ) W[i] = rotate_left(W[i-3] ^ W[i-8] ^ W[i-14] ^ W[i-16], 1);
 
		A = H0;
		B = H1;
		C = H2;
		D = H3;
		E = H4;
 
		for( i= 0; i<=19; i++ ) {
			temp = (rotate_left(A,5) + ((B&C) | (~B&D)) + E + W[i] + 0x5A827999) & 0x0ffffffff;
			E = D;
			D = C;
			C = rotate_left(B,30);
			B = A;
			A = temp;
		}
 
		for( i=20; i<=39; i++ ) {
			temp = (rotate_left(A,5) + (B ^ C ^ D) + E + W[i] + 0x6ED9EBA1) & 0x0ffffffff;
			E = D;
			D = C;
			C = rotate_left(B,30);
			B = A;
			A = temp;
		}
 
		for( i=40; i<=59; i++ ) {
			temp = (rotate_left(A,5) + ((B&C) | (B&D) | (C&D)) + E + W[i] + 0x8F1BBCDC) & 0x0ffffffff;
			E = D;
			D = C;
			C = rotate_left(B,30);
			B = A;
			A = temp;
		}
 
		for( i=60; i<=79; i++ ) {
			temp = (rotate_left(A,5) + (B ^ C ^ D) + E + W[i] + 0xCA62C1D6) & 0x0ffffffff;
			E = D;
			D = C;
			C = rotate_left(B,30);
			B = A;
			A = temp;
		}
 
		H0 = (H0 + A) & 0x0ffffffff;
		H1 = (H1 + B) & 0x0ffffffff;
		H2 = (H2 + C) & 0x0ffffffff;
		H3 = (H3 + D) & 0x0ffffffff;
		H4 = (H4 + E) & 0x0ffffffff;
 
	}
 
	var temp = cvt_hex(H0) + cvt_hex(H1) + cvt_hex(H2) + cvt_hex(H3) + cvt_hex(H4);
 
	return temp.toLowerCase();
 
}


function ts3viewer()
{
	new Ajax.Request('inc/container/ts3_Viewer.ajax.php',
	{
		method:'get',
        onSuccess: function(transport){
       		var mitte = $('ts3viewer');
			var response = transport.responseText || "no response text";
			mitte.update(response);
	    },
		onFailure: function(){ alert('Fehler bei Ajax Request') }
      });
	
}

function adsHit(id)
{
    new Ajax.Request('inc/admin/super_ads_hit.ajax.php',
	{
		method:'post',
        parameters: {id: id},
        onSuccess: function(transport){
       		var response = transport.responseText || "no response text";
		},
		onFailure: function(){ alert('Fehler bei Ajax Request') }
      });
}

function myProfil(uid,sid)
{
	loadLoader();
	element_id = 'mitte';
	var getstr = "&uid=";
	getstr += uid+"&sid="+sid;
	makeRequest('inc/ajax/myProfil.ajax.php', getstr);
}

function reloadZufallsscreenshot()
{
	new Ajax.Request('inc/container/zufallsscreenshot.ajax.php',
    {
		method:'get',
        onSuccess: function(transport){
        	var mitte = $('zufallsScreenshot');
		    var response = transport.responseText || "no response text";
		    mitte.update(response);
		    //info.update("").setStyle({color:'green'});
		},
        onFailure: function(){ alert('Fehler bei Ajax Request') }
     });
}

function newsComm(nid,sid)
{
	loadLoader();
	element_id = 'mitte';
	var getstr = "&nid=";
	getstr += nid+"&sid="+sid;
	makeRequest('inc/ajax/newsComm.ajax.php', getstr);
}

function newsCommAdd(nid,sid,form)
{
	loadLoader();
	element_id = 'mitte';
	var getstr = "&nid=";
	getstr += nid+"&sid="+sid+"&text="+form.commentText.value;
	makeRequest('inc/ajax/newsCommAdd.ajax.php', getstr);
}



function divOpenClose(myDivId)
{
    var a = new Date();
	a = new Date(a.getTime() +1000*60*60*24*365);
    if (document.getElementById(myDivId).style.display == 'none')
	{
	    Effect.BlindDown(myDivId, { duration: 1.0 });
        var meindiv2 = document.getElementById( "divChattext" );
		if (meindiv2)
        {
            meindiv2.scrollTop = meindiv2.scrollHeight;
        }
        document.cookie = myDivId+'=open; expires='+a.toGMTString()+';';
	}
	else
	{   
        Effect.BlindUp(myDivId, { duration: 1.0 });
        document.cookie = myDivId+'=close; expires='+a.toGMTString()+';';
    }
    
	 
}

function statisticReload()
{
	new Ajax.Request('inc/container/statistik.ajax.php',
    {
		method:'get',
        onSuccess: function(transport){
        	var mitte = $('statistik');
		    var response = transport.responseText || "no response text";
		    mitte.update(response);
		    
		},
        onFailure: function(){ alert('Fehler bei Ajax Request') }
     });
}

 function getCookie()
    {
    	var a = document.cookie;
        cookie_array = new Array();
        cookie_array = a.split(';');
        //alert(cookie_array);
        for (var x=0;x<cookie_array.length;x++)
        {
            c_array = new Array();
            c_array = cookie_array[x].split('=');
            
            if (c_array[1]=='close' || c_array[1]=='open')
            {
                if (c_array[1]!='open')
            	{
            	   var divId = c_array[0].trim();
                   //alert(document.getElementById(divId)+" : "+divId+" : "+divId.length);
                   if (document.getElementById(divId))
                   {
                        document.getElementById(divId).style.display="none";
                   }
            	   
            		
            	}
            }
        }
    
    }
    

