// JavaScript Document

function EditButton(FormularName, InputName, F) {

	switch (F) {
		case "bold":
			InsertText(FormularName, InputName, "++fett|", "--", "fetter Text");
			break;
		case "italic":
			InsertText(FormularName, InputName, "++kursiv|", "--", "kursiver Text");
			break;
		case "U1":
			InsertText(FormularName, InputName, "++U1|", "--", "Überschrift 1");
			break;
		case "U2":
			InsertText(FormularName, InputName, "++U2|", "--", "Überschrift 2");
			break;
		case "BildL":
			InsertText(FormularName, InputName, "++BildL|", "--", "www.domain.de/Ordner/Bild");
			break;
		case "BildR":
			InsertText(FormularName, InputName, "++BildR|", "--", "www.domain.de/Ordner/Bild");
			break;
	}
}

function InsertText(FormularName, InputName, aTag, eTag, Bsp) {
	var input = document.forms[FormularName].elements[InputName];
	input.focus();
	/* für Internet Explorer */
	if(typeof document.selection != 'undefined') {
		/* Einfügen des Formatierungscodes */
		var range = document.selection.createRange();
		var insText = range.text;
		if (insText == "") {
			insText=Bsp;
		}
		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);
	}
}