function insert(aTag, eTag) {
  var input = document.forms['post'].elements['message'];
  input.focus();
  /* für Internet Explorer */
  if(typeof document.selection != 'undefined') {
    /* Einfügen des Formatierungscodes */
    var range = document.selection.createRange();
    var insText = range.text;
    range.text = aTag + insText + eTag;
    /* Anpassen der Cursorposition */
    range = document.selection.createRange();
    if (insText.length == 0) {
      range.move('character', -eTag.length);
    } else {
      range.moveStart('character', aTag.length + insText.length + eTag.length);      
    }
    range.select();
  }
  /* für neuere auf Gecko basierende Browser */
  else if(typeof input.selectionStart != 'undefined')
  {
    /* Einfügen des Formatierungscodes */
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
    input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end);
    /* Anpassen der Cursorposition */
    var pos;
    if (insText.length == 0) {
      pos = start + aTag.length;
    } else {
      pos = start + aTag.length + insText.length + eTag.length;
    }
    input.selectionStart = pos;
    input.selectionEnd = pos;
  }
  /* für die übrigen Browser */
  else
  {
    /* Abfrage der Einfügeposition */
    var pos;
    var re = new RegExp('^[0-9]{0,3}$');
    while(!re.test(pos)) {
      pos = prompt("Einfügen an Position (0.." + input.value.length + "):", "0");
    }
    if(pos > input.value.length) {
      pos = input.value.length;
    }
    /* Einfügen des Formatierungscodes */
    var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
    input.value = input.value.substr(0, pos) + aTag + insText + eTag + input.value.substr(pos);
  }
}


function insertIMG(aTag, eTag) {
  inserttext = prompt("Geben Sie die Adresse zum Bild ein:" + "\n[IMG]xxx[/IMG]", "http://");
  var input = document.forms['post'].elements['message'];
  input.focus();
  /* für Internet Explorer */
  if(typeof document.selection != 'undefined') {
    /* Einfügen des Formatierungscodes */
    var range = document.selection.createRange();
    var insText = range.text;
    range.text = aTag + insText + inserttext + eTag;
    /* Anpassen der Cursorposition */
    range = document.selection.createRange();
    if (insText.length == 0) {
      range.move('character', -eTag.length);
    } else {
      range.moveStart('character', aTag.length + insText.length + inserttext.length + eTag.length);      
    }
    range.select();
  }
  /* für neuere auf Gecko basierende Browser */
  else if(typeof input.selectionStart != 'undefined')
  {
    /* Einfügen des Formatierungscodes */
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
    input.value = input.value.substr(0, start) + aTag + insText + inserttext + eTag + input.value.substr(end);
    /* Anpassen der Cursorposition */
    var pos;
    if (insText.length == 0) {
      pos = start + aTag.length;
    } else {
      pos = start + aTag.length + insText.length + inserttext.length + eTag.length;
    }
    input.selectionStart = pos;
    input.selectionEnd = pos;
  }
  /* für die übrigen Browser */
  else
  {
    /* Abfrage der Einfügeposition */
    var pos;
    var re = new RegExp('^[0-9]{0,3}$');
    while(!re.test(pos)) {
      pos = prompt("Einfügen an Position (0.." + input.value.length + "):", "0");
    }
    if(pos > input.value.length) {
      pos = input.value.length;
    }
    /* Einfügen des Formatierungscodes */
    var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
    input.value = input.value.substr(0, pos) + aTag + insText + inserttext + eTag + input.value.substr(pos);
  }
}



function insertEMail(aTag, bTag, eTag) {
  inserttxt_1 = prompt("Geben Sie hier einen Link Namen ein:" + "\n(Optional)");
  inserttext = prompt("Geben Sie hier die E-Mail adresse ein:");
  if(inserttxt_1 <= "0") {
	inserttxt_1 = inserttext;
	}
  var input = document.forms['post'].elements['message'];
  input.focus();
  /* für Internet Explorer */
  if(typeof document.selection != 'undefined') {
    /* Einfügen des Formatierungscodes */
    var range = document.selection.createRange();
    var insText = range.text;
    range.text = aTag + inserttxt_1 + insText + bTag + inserttext + eTag;
    /* Anpassen der Cursorposition */
    range = document.selection.createRange();
    if (insText.length == 0) {
      range.move('character', -eTag.length);
    } else {
      range.moveStart('character', aTag.length + inserttxt_1.length + insText.length + bTag.length + inserttext.length + eTag.length);      
    }
    range.select();
  }
  /* für neuere auf Gecko basierende Browser */
  else if(typeof input.selectionStart != 'undefined')
  {
    /* Einfügen des Formatierungscodes */
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
    input.value = input.value.substr(0, start) + aTag + inserttxt_1 + insText + bTag + inserttext + eTag + input.value.substr(end);
    /* Anpassen der Cursorposition */
    var pos;
    if (insText.length == 0) {
      pos = start + aTag.length;
    } else {
      pos = start + aTag.length + inserttxt_1.length + insText.length + bTag.length + inserttext.length + eTag.length;
    }
    input.selectionStart = pos;
    input.selectionEnd = pos;
  }
  /* für die übrigen Browser */
  else
  {
    /* Abfrage der Einfügeposition */
    var pos;
    var re = new RegExp('^[0-9]{0,3}$');
    while(!re.test(pos)) {
      pos = prompt("Einfügen an Position (0.." + input.value.length + "):", "0");
    }
    if(pos > input.value.length) {
      pos = input.value.length;
    }
    /* Einfügen des Formatierungscodes */
    var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
    input.value = input.value.substr(0, pos) + aTag + inserttxt_1 + insText + bTag + inserttext + eTag + input.value.substr(pos);
  }
}


function insertLink(aTag, bTag, eTag) {
  inserttxt_1 = prompt("Geben Sie hier einen Link Namen ein:" + "\n(Optional)");
  inserttext = prompt("Geben Sie hier die Homepage adresse ein:");
  if(inserttxt_1 <= "0") {
	inserttxt_1 = inserttext;
	}
  var input = document.forms['post'].elements['message'];
  input.focus();
  /* für Internet Explorer */
  if(typeof document.selection != 'undefined') {
    /* Einfügen des Formatierungscodes */
    var range = document.selection.createRange();
    var insText = range.text;
    range.text = aTag + inserttxt_1 + insText + bTag + inserttext + eTag;
    /* Anpassen der Cursorposition */
    range = document.selection.createRange();
    if (insText.length == 0) {
      range.move('character', -eTag.length);
    } else {
      range.moveStart('character', aTag.length + inserttxt_1.length + insText.length + bTag.length + inserttext.length + eTag.length);      
    }
    range.select();
  }
  /* für neuere auf Gecko basierende Browser */
  else if(typeof input.selectionStart != 'undefined')
  {
    /* Einfügen des Formatierungscodes */
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
    input.value = input.value.substr(0, start) + aTag + inserttxt_1 + insText + bTag + inserttext + eTag + input.value.substr(end);
    /* Anpassen der Cursorposition */
    var pos;
    if (insText.length == 0) {
      pos = start + aTag.length;
    } else {
      pos = start + aTag.length + inserttxt_1.length + insText.length + bTag.length + inserttext.length + eTag.length;
    }
    input.selectionStart = pos;
    input.selectionEnd = pos;
  }
  /* für die übrigen Browser */
  else
  {
    /* Abfrage der Einfügeposition */
    var pos;
    var re = new RegExp('^[0-9]{0,3}$');
    while(!re.test(pos)) {
      pos = prompt("Einfügen an Position (0.." + input.value.length + "):", "0");
    }
    if(pos > input.value.length) {
      pos = input.value.length;
    }
    /* Einfügen des Formatierungscodes */
    var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
    input.value = input.value.substr(0, pos) + aTag + inserttxt_1 + insText + bTag + inserttext + eTag + input.value.substr(pos);
  }
}


// speichert den text im message feld
function AddText(addtext) {
	var current = document.post.message.value;
	var newtext = current + addtext;
	document.post.message.value = newtext;
	document.post.message.focus();
}

// fügt den [IMG] tag hinzu
function AddImg() {
	inserttext = prompt("Enter the URL to the Image:" + "\n[IMG]xxx[/IMG]", "http://");
	if ((inserttext != "http://") && (inserttext != "") && (inserttext != null)) addtext = " [IMG]" + inserttext + "[/IMG] ";
	else addtext="";
	
	AddText(addtext);
}

// fügt [URL] oder [EMAIL] ein
function AddLink(thetype) {
	linktext = prompt("Enter a Linkname (optional)", "");
	var prompttext;
	if (thetype == "URL") linkurl = prompt("Enter the URL", "http://");
	else linkurl = prompt("Enter the E-Mail Address", "");
	
	if ((linkurl != "http://") && (linkurl != "") && (linkurl != null)) {
		if ((linktext != null) && (linktext != "")) {
			addtext = " [" + thetype + "=" + linkurl + "]" + linktext + "[/" + thetype + "] ";
		}
		else {
			addtext = " [" + thetype + "]" + linkurl + "[/" + thetype + "] ";
		}
	}
	else addtext = "";
	
	AddText(addtext);
}

// fügt eine HTML-Liste ein
function AddList() {
	type = prompt("enter '1' for a numbered List, 'a' for an alphabetic List or '' for a pointed List", "");
	if ((type == "a") || (type == "1")) {
		list = " [LIST=" + type + "]\n";
		listend = "[/LIST=" + type + "] ";
	}
	else {
		list = " [LIST]\n";
		listend = "[/LIST] ";
	}
	entry = "start";
	while ((entry != "") && (entry != null)) {
		entry = prompt("Enter a List-Point. Enter nothing or click 'Cancel' to finish the list.", "");
		if ((entry != "") && (entry != null))
			list = list + "[*]" + entry + "[/*]\n";
	}
	addtext = list + listend;
	
	AddText(addtext);
}


function Toggle (id) {
	if (document.all.item("ToggleRow_" + id).style.display == 'none') 
	{
		document.all.item("ToggleRow_" + id).style.display = "inline";
		document.all.item("ToggleImg_" + id).alt = "Inhalt";
	}
	else 
	{
		document.all["ToggleRow_" + id].style.display = "none";
		document.all["ToggleImg_" + id].alt = "Mehr";
	}
}



/*function AddToggle() {
	//inserttext = prompt("Enter toggle name:" + "\n[toggle=xxx][/toggle]");
	inserttext = "Mehr darüber lesen...";
		inserttext1 = prompt("Enter text:" + "\nxxxx");
	if ((inserttext != "") && (inserttext1 != "") && (inserttext != null) && (inserttext1 != null)) addtext = " [toggle="+inserttext+"]" + inserttext1 + "[/toggle] ";
	else addtext="";
	
	AddText(addtext);
}*/

// fügt code eines andern fensters ein
function AddCodeFromWindow(thecode) {
	opener.document.post.message.value += thecode + " ";
	opener.post.message.focus();
}

//no comment ;)

function AddCode(thecode) {
	AddText(thecode);
}


// function addRow() ** this adds a new row to the table, containing mapname, mapresult_home, mapresult_opponent
function addRow(action)
{
	var theAction = action;
  var table = document.getElementById('maplist');
  var theRows = table.rows.length;
  var inkrement = theRows;
  var row = table.insertRow(theRows);
	
	// gibt nen text wie "map #1" aus
	var cell0 = row.insertCell(0);
	var textNode = document.createTextNode('map #' + inkrement);
	if(theAction=='edit') {
		var ele0 = document.createElement('input');
			ele0.setAttribute('type', 'hidden');
			ele0.setAttribute('name', 'map_id[]');
			ele0.setAttribute('value', inkrement);
		cell0.appendChild(ele0);
	}
	cell0.appendChild(textNode);
	// mapname
  var cell1 = row.insertCell(1);
  var ele1 = document.createElement('input');
		ele1.setAttribute('type', 'text');
		ele1.setAttribute('name', 'map_name[]');
		ele1.setAttribute('id', 'map_name_' + inkrement);
		ele1.setAttribute('size', '35');
		ele1.className='form_off';
  cell1.appendChild(ele1);
	// results: home
  var cell2 = row.insertCell(2);
  var ele2 = document.createElement('input');
		ele2.setAttribute('type', 'text');
		ele2.setAttribute('name', 'map_result_home[]');
		ele2.setAttribute('id', 'map_result_home_' + inkrement);
		ele2.setAttribute('size', '3');
		ele2.className='form_off';
	cell2.appendChild(ele2);
	// results: opponent
	var cell3 = row.insertCell(3);
	var ele3 = document.createElement('input');
		ele3.setAttribute('type', 'text');
		ele3.setAttribute('name', 'map_result_opp[]');
		ele3.setAttribute('id', 'map_result_opp_' + inkrement);
		ele3.setAttribute('size', '3');
		ele3.className='form_off';
	cell3.appendChild(ele3);
	// create delete-selection for edit-function
	if(theAction=='edit') {
		var cell4 = row.insertCell(4);
		var ele4 = document.createElement('input');
			ele4.setAttribute('type', 'checkbox');
			ele4.setAttribute('name', 'delete[]');
			ele4.setAttribute('value', inkrement);
			ele4.className='form_off';
		cell4.appendChild(ele4);
	} else {
		var cell4 = row.insertCell(4);
	}
}

// function removeRow() ** removes the last row of a table
function removeRow()
{
  var table = document.getElementById('maplist');
  var theRows = table.rows.length;
  if (theRows != 1) table.deleteRow(theRows - 1);
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function MM_findObj(n, d) { //v4.01
  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_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_jumpMenuGo(selName,targ,restore){ //v3.0
  var selObj = MM_findObj(selName); if (selObj) MM_jumpMenu(targ,selObj,restore);
}

function MM_confirm(msg, url) { //v1.0
  if(confirm(msg)) location.replace(url);
}

function MM_openBrWindow(theURL,winName,features) { 
  window.open(theURL,winName,features);
}

function MM_goToURL() { //v3.0
  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}

function SelectAll() {
	for(var x=0;x<document.form.elements.length;x++) {
		var y=document.form.elements[x];
		if(y.name!='ALL') y.checked=document.form.ALL.checked;
	}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  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_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function messageconfirm(messages) {
        if(confirm("You have "+messages+" new message(s). Do you want to read them now?"))
          document.location.href="index.php?site=messenger";
}