//---------------------

// EasyHTML Javascript

//---------------------





// Browser checken



var imageTag = false;

var theSelection = false;



var clientPC = navigator.userAgent.toLowerCase();

var clientVer = parseInt(navigator.appVersion);



var is_ie = ((clientPC.indexOf("msie") != -1) && (clientPC.indexOf("opera") == -1));

var is_nav = ((clientPC.indexOf('mozilla')!=-1) && (clientPC.indexOf('spoofer')==-1)

                && (clientPC.indexOf('compatible') == -1) && (clientPC.indexOf('opera')==-1)

                && (clientPC.indexOf('webtv')==-1) && (clientPC.indexOf('hotjava')==-1));

var is_moz = 0;



var is_win = ((clientPC.indexOf("win")!=-1) || (clientPC.indexOf("16bit") != -1));

var is_mac = (clientPC.indexOf("mac")!=-1);







// Helpline Texte



help_0  = "Text in fett: [f]Text[/f]";

//help_0  = "Text in fett: [b]Text[/b]";

help_3  = "Text in kursiv: [k]Text[/k]";

//help_3  = "Text in kursiv: [i]Text[/i]";

help_6  = "Unterstrichener Text: [u]Text[/u]";

help_9  = "Schriftfarbe: [color=red]Text[/color] oder [color=#FF0000]Text[/color]";

help_12 = "Schriftgröße: [size=14]Text[/size]";

help_15 = "Zentrierter Text: [c]Text[/c]";

help_18 = "Rechtsbündiger Text: [r]Text[/r]";

help_21 = "Hyperlink einfügen: [url=http://adresse]Name des Links[/url], öffnet sich in einem neuen Fenster";

help_24 = "Internen Hyperlink einfügen: [url=?content=dateiname]Name des Links[/url], öffnet sich im selben Fenster";

help_27 = "Bild einfügen: [img]dateiname[/img] oder [img]http://adresse[/img]";

help_30 = "Linksbündiges Bild im Textfluss: [limg]dateiname[/limg] oder [limg]http://adresse[/limg]";

help_33 = "Rechtsbündiges Bild im Textfluss: [rimg]dateiname[/limg] oder [rimg]http://adresse[/rimg]";

help_36 = "Eingerückter Text: [>>]Text[/>>]";

help_39 = "Aufzählung: [*]Stichpunkt[/*]";

help_s  = "Smiley einfügen";

help_u  = "Bilder hochladen und in den Text einfügen";







// EasyHTML Tags



easyhtml_code = new Array();

easyhtml_tags = new Array(

	'[f]', '[/f]', 'FetterText',

//	'[b]', '[/b]', 'FetterText',

	'[k]', '[/k]', 'KursiverText',

//	'[i]', '[/i]', 'KursiverText',

	'[u]', '[/u]', 'UnterstrichenerText',

	'[color=red]', '[/color]', 'FarbigerText',

	'[size=14]', '[/size]', 'VeränderteSchriftgröße',

	'[c]', '[/c]', 'ZentrierterText',

	'[r]', '[/r]', 'RechtsbündigerText',

	'[url=http://AdresseDesLinks]', '[/url]', 'NameDesLinks',

	'[url=?content=InternerDateiname]', '[/url]', 'NameDesLinks',

	'[img]', '[/img]', 'DateinameDesBilds',

	'[rimg]', '[/rimg]', 'DateinameDesBilds',

	'[limg]', '[/limg]', 'DateinameDesBilds',

	'[>>]', '[/>>]', 'EingerückterText',

	'[*]', '[/*]', 'Stichpunkt'

);

imageTag = false;







// Beschreibung im Formelement "helpline" anzeigen



function show_help (help) {

	document.post.helpline.value = eval("help_" + help);

}







// Smiley einfügen



function insert_smiley(text)

{

	var txtarea = document.post.body;

	text = ' ' + text + ' ';

	if (txtarea.createTextRange && txtarea.caretPos) {

		var caretPos = txtarea.caretPos;

		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? caretPos.text + text + ' ' : caretPos.text + text;

		txtarea.focus();

	}

	else {

		txtarea.value  += text;

		txtarea.focus();

	}

}







// EasyHTML-Tag einfügen



function format_text(bbnumber) {

	var txtarea = document.post.body;



	txtarea.focus();

	donotinsert = false;

	theSelection = false;

	bblast = 0;



	// Tags vor und nach markierten Text setzen

	if ((clientVer >= 4) && is_ie && is_win)

	{

		theSelection = document.selection.createRange().text;

		if (theSelection) {

			document.selection.createRange().text = easyhtml_tags[bbnumber] + theSelection + easyhtml_tags[bbnumber+1];

			txtarea.focus();

			theSelection = '';

			return;

		}

	}

	else if (txtarea.selectionEnd && (txtarea.selectionEnd - txtarea.selectionStart > 0))

	{

		mozWrap(txtarea, easyhtml_tags[bbnumber], easyhtml_tags[bbnumber+1]);

		return;

	}



	// "offnendes Tag + Beschreibung + schließendes Tag" ans Textende setzen

	txtarea.value += easyhtml_tags[bbnumber] + easyhtml_tags[bbnumber+2] + easyhtml_tags[bbnumber+1];

	txtarea.focus();



	storeCaret(txtarea);

}



function mozWrap(txtarea, open, close)  // Quelle: http://www.massless.org/mozedit/

{

	var selLength = txtarea.textLength;

	var selStart = txtarea.selectionStart;

	var selEnd = txtarea.selectionEnd;

	if (selEnd == 1 || selEnd == 2)

		selEnd = selLength;



	var s1 = (txtarea.value).substring(0,selStart);

	var s2 = (txtarea.value).substring(selStart, selEnd)

	var s3 = (txtarea.value).substring(selEnd, selLength);

	txtarea.value = s1 + open + s2 + close + s3;

	return;

}



function storeCaret(textEl)  // Quelle: http://www.faqts.com/knowledge_base/view.phtml/aid/1052/fid/130

{

	if (textEl.createTextRange) textEl.caretPos = document.selection.createRange().duplicate();

}
