var xPos = 0;
var yPos = 0;
var http = new Array();
var cache = new Array();

// AJAX REQUEST
function requestAJAX( url,layer) {

	var http_index=0;

	while( http[http_index] ) http_index++;

     if (window.XMLHttpRequest) {
          http[ http_index ] = new XMLHttpRequest();
     } else if (window.ActiveXObject) {
          http[ http_index ] = new ActiveXObject("Microsoft.XMLHTTP");
     }

     if( http[ http_index ] ) {
          http[ http_index ].open("GET", url, true);
          http[ http_index ].onreadystatechange = function() {
          	if( http[ http_index ].readyState == 4 ) {
				if( document.getElementById( layer ) ) {
					document.getElementById( layer ).style.height = 'auto';
					document.getElementById( layer ).style.visibility = 'visible';
					document.getElementById( layer ).innerHTML = http[ http_index ].responseText;
				}
     		}
          }
          http[ http_index ].send(null);
     }
} 

// FUNCTIONS
function setTimer( func_name,seconds ) {
	window.setInterval( func_name, seconds*1000 );
}

function toggleLink( t_normal,t_activated,layer,showLayer ) {
	var id = document.getElementById( layer );
	if( id.innerHTML == t_normal ) {
		id.innerHTML = t_activated;
		cmdLayer(showLayer,'visible');
	}
	else if( id.innerHTML == t_activated ) {
		id.innerHTML = t_normal;
		cmdLayer(showLayer,'hidden');
	}
}

function loadCache( layer, id ) {
     document.getElementById( layer ).innerHTML = cache[ id ];
}

function saveCache( layer, id ) {
     cache[ id ]  = document.getElementById( layer ).innerHTML;
}

function showAddress(address) {
     new GClientGeocoder().getLatLng(address,function(point) {
          if(point) {
               var map = new GMap2(document.getElementById("map_canvas"));
               map.setCenter(point, 15);
               var marker = new GMarker(point);
               map.addOverlay(marker);
               document.getElementById("xtra_point").value=point.toString();
          } else {
               alert("Diese Adresse wurde nicht gefunden!");
          }
     });
}

function delLayer( layer ) {
     document.getElementById( layer ).style.textDecoration = 'line-through';
}

function closeLayer( layer ) {
     document.getElementById( layer ).innerHTML = '';
     document.getElementById( layer ).style.visibility = 'hidden';
}

function setBGColor( layer,color ) {
     var id = document.getElementById( layer );
     id.style.backgroundColor = color;
}

function emptyLayer( name ) {
	var id = document.getElementById( name );
	id.innerHTML = '';
}

function cmdLayer( name,cmd ) {
     var id = document.getElementById( name );
     if( cmd == 'visible' ) id.style.height = 'auto';
     else id.style.height = '0px';
     id.style.visibility = cmd;
}

function insert( what ) {
     var input = document.getElementById('content');
     input.focus();

     // INTERNET EXPLORER
     if(typeof document.selection != 'undefined') {
          var range = document.selection.createRange();
          var seltext = range.text;

          if( what == 'bold' ) { range.text = "<strong>"+seltext+"</strong>"; }
          if( what == 'italic' ) { range.text = "<em>"+seltext+"</em>"; }
          if( what == 'img' ) { var url = window.prompt("Bild-URL","http://"); range.text = seltext+'<img src="'+url+'" alt="" />'; }
          if( what == 'link' ) { var url = window.prompt("URL","http://"); range.text = '<a href="'+url+'" target="_blank">'+seltext+'</a>'; }
     }

     // GECKOO
     else if(typeof input.selectionStart != 'undefined') {

          var start = input.selectionStart;
          var end = input.selectionEnd;
          var seltext = input.value.substring(start,end);
          var before = input.value.substr(0,start);
          var after = input.value.substr(end);

          if( what == 'bold' ) { input.value = before+"<strong>"+seltext+"</strong>"+after; }
          if( what == 'italic' ) { input.value = before+"<em>"+seltext+"</em>"+after; }
          if( what == 'img' ) { input.value = before+seltext+'<img src="'+prompt("Bild-URL","http://")+'" alt="" />'+after; }
          if( what == 'link' ) { input.value = before+'<a href="'+prompt("URL","http://")+'" target="_blank">'+seltext+'</a>'+after; }
     }
}

function checkForm() {
     var errStr = '';
     var sel = document.getElementById('category').selectedIndex;
     var txt = document.getElementById('category').options[ sel ].text;
     if( txt == '' ) { errStr = '\t* Keine Kategorie ausgewählt!\r\n'; }
     if( document.getElementById('wertung').value == 'n/a' ) { errStr += '\t* Keine Bewertung abgegeben!\r\n'; }
     if( document.getElementById('titel').value == '' ) { errStr += '\t* Kein Titel eingegeben!\r\n'; }
     if( document.getElementById('content').value == '' ) { errStr += '\t* Kein Text eingegeben!\r\n'; }
     if( errStr != '' ) { 
          alert( 'Folgende Fehler sind beim Bearbeiten aufgetreten:\n\n'+errStr+'\n\nBitte überprüfe und korrigiere Deine Angaben! Vielen Dank!' ); 
          return false; alert('cfo');
     } else return true;
}


// --------------------------------------- TIMER FUNCTIONS -------------------------------------------------------

function checkAllAdminFunctions( time ) {
	requestAJAX('ajax/?cmd=shownewpostsonboard&time='+time,'new-item-counter');
	requestAJAX('ajax/?cmd=shownewmails','new-mails');
	requestAJAX('ajax/?cmd=showfriendsonline','online-buddies');
}

function checkNewCommentsByGuid( guid ) {
	requestAJAX('ajax/?cmd=shownewcommentsbyguid&guid='+guid,'comments');
}

