function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

/* 
Funktion zum Einfügen von Elementen in Textfelder:
aTag = Präfix 
eTag = Suffix
form = das Formular, in das eingefügt werdn soll
area = Das Feld im Formular, in das eingefügt werdne soll
*/

function insert(aTag, eTag, form, area) {
  var input = document.forms[form].elements[area];
  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);
  }
}

/*
automatische Größenanpassung eines Textfeldes:

Bsp:
<textarea name="text" cols="45" rows="2" id="text"  onkeyup="CheckTextAreaHeight(this,2);" onkeypress="CheckTextAreaHeight(this,2);"></textarea>
*/

function CheckTextAreaHeight(tarea, def, cols) {
	var nCounter = 2;		// Anzahl Zeilen
	var sNeedle = "\n";		// Suchstring
	var j = 1;				// Länge der Zeile (nach Anzahl cols Zeichen kommt eine neue Zeile)

	for (var i=0;i< tarea.value.length;i++) {
		if (sNeedle == tarea.value.substr(i,sNeedle.length) || (i-j) > cols) {       
			nCounter++;
			j += cols;			// Zeilenbeginn zurücksetzen
		}
	}
	if(nCounter < def){
		tarea.rows = def;
	}else {
		tarea.rows=nCounter;
	}
}

