var rangeIE = null;


// IE/Gecko-Weiche zum Einfügen von Text ins Textfeld
function insertText(vor, nach, idTextfeld)
{
   var textfeld = document.getElementById(idTextfeld);
   textfeld.focus();                                         // falls Cursor außerhalb war

   if(typeof document.selection != 'undefined')              // für IE, auch Opera
   {
     insertIE(textfeld, vor, nach, idTextfeld);
   }
   else if (typeof textfeld.selectionStart != 'undefined')   // Geckos (FF)
   {
     insertGecko(textfeld, vor, nach);
   }
}

// Im "textfeld" Portionen "vor" und "nach" einfügen (IE)
function insertIE(textfeld, vor, nach, idTextfeld)
{
   if(!rangeIE) rangeIE = document.selection.createRange();

   // nichts weiter tun, falls wir nicht im Textfeld sind
   if(rangeIE.parentElement().id != idTextfeld) { rangeIE = null; return; }

   var alterText = rangeIE.text;

   // Auswahl um BBC ergänzen
   rangeIE.text = vor + alterText + nach;

   // Cursor neu setzen (wie SelfHTML)
   if (alterText.length == 0)
     rangeIE.move('character', -nach.length);
   else
     rangeIE.moveStart('character', rangeIE.text.length);
    
     rangeIE.select();
     rangeIE = null;
}

// Im "textfeld" Portionen "vor" und "nach" einfügen (Geckos)
function insertGecko(textfeld, vor, nach)
{
   von = textfeld.selectionStart;
   bis = textfeld.selectionEnd;

   // Text zerlegen
   anfang = textfeld.value.slice(0,   von);
   mitte  = textfeld.value.slice(von, bis);
   ende   = textfeld.value.slice(bis);        // der Rest des Strings

   // BBC einfügen und ins Textfeld schreiben
   textfeld.value = anfang + vor + mitte + nach + ende;

   // Cursor neu setzen
   if(bis - von == 0)
   {
     textfeld.selectionStart = von + vor.length;
     textfeld.selectionEnd   = textfeld.selectionStart;
   }
   else
   {
     textfeld.selectionEnd   = bis + vor.length + nach.length;
     textfeld.selectionStart = textfeld.selectionEnd;
   }
}

function set_url(idTextfeld) {
	var url = prompt('Bitte geben Sie eine URL ein!', 'http://');
	var desc = prompt('Bitte geben Sie Beschreibung der URL ein!', '');
	var text = prompt('Bitte geben Sie den URL - Text ein!', '');
	if (!url || !text) {alert('Sie müssen eine URL und einen Text angeben!');}
	else {insertText('[url='+url+' desc='+desc+']'+text, '[/url]',idTextfeld);}
}

function set_img(idTextfeld) {
	var img = prompt('Bitte geben Sie URL des Bildes ein!', 'http://');
	var pos = prompt('Bitte geben Sie Position des Bildes ein (right/left/center)!', '');
	if(pos != "right" && pos != "left" && pos != "center"){pos = "left"}
	if (!img) {alert('Sie müssen eine URL angeben!');}
	else {insertText('[img='+pos+']'+img, '[/img]',idTextfeld);}
}

var i = 0;
var click = 0;
function gb_eintragen(){
	interval = (click%2==0)?window.setInterval("resize_up()", 1):window.setInterval("resize_down()", 1);
	click++;
}
function resize_up(){
	document.getElementById('gb_eintragen').style.height=i+'px';
	document.getElementById('gb_eintragen').style.display='block';
	i+=10;	
	if(i>=380){
		window.clearInterval(interval);
		document.getElementById('gb_eintragen').style.visibility='visible';
		document.getElementById("neuer_eintrag").value = "Doch Nicht";
	}
}
function resize_down(){
	document.getElementById('gb_eintragen').style.visibility='hidden';
	document.getElementById('gb_eintragen').style.height=i+'px';
	i-=10;
	if(i<=0){
		window.clearInterval(interval);
		document.getElementById('gb_eintragen').style.display='none';
		document.getElementById("neuer_eintrag").value = "Neuer Eintrag";
	}
}
function check_eintrag(){

	var name_form = document.getElementById('name');
	var message_form = document.getElementById('message');
	var scode_form = document.getElementById('scode');
	
	var name_form_check = 0;
	var message_form_check = 0;
	var scode_form_check = 0;
	
	if(name_form.value.length==0){
		name_form_check = 0;
		name_form.style.backgroundColor='#A60000';
		name_form.style.color='#FFFFFF';
	}
	else{
		name_form_check = 1;
		name_form.style.backgroundColor='#FFFFFF';
		name_form.style.color='#000000';
	}

	if(message_form.value.length == 0){
		message_form_check = 0;
		message_form.style.backgroundColor='#A60000';
		message_form.style.color='#FFFFFF';
	}
	else{
		message_form_check = 1;
		message_form.style.backgroundColor='#FFFFFF';
		message_form.style.color='#000000';
	}

	if(scode_form.value != scode_system){
		scode_form_check = 0;
		scode_form.style.backgroundColor='#A60000';
		scode_form.style.color='#FFFFFF';
	}
	else{
		scode_form_check = 1;
		scode_form.style.backgroundColor='#FFFFFF';
		scode_form.style.color='#000000';
	}

	if((name_form_check+message_form_check+scode_form_check)==3){
		document.gb_eintrag_form.submit();
	}
}
function gb_message_smily(smily){
	document.getElementById('message').value += smily;
}
function count_main_text(){
	var inhalt = document.getElementById('main_text');
	var counter = document.getElementById('counter');
	
	if(inhalt.value.length >= 400){
		inhalt.value = inhalt.value.substring(0,400);
		counter.style.color = "red"; 
	}
	else{
		counter.style.color = "black";	
	}
	
	counter.innerHTML = inhalt.value.length+" (400)";
}
  

