/* based on LGPL code from Alex King
 * http://alexking.org/blog/2004/06/03/js-quicktags-under-lgpl/
 * (C) Cestovatel
 */
function addToArea(field, value) {
    addToAreaTag(field, value, '', '');
}
function addToAreaTag(field, startStr, endStr, fillStr) {
	var theField = field;
         if (typeof(field) == "string") {
	 	theField = document.getElementById(field);
	 }
	//IE support
	if (document.selection) {
		theField.focus();
	        sel = document.selection.createRange();
		if (sel.text.length > 0) {
			sel.text = startStr + sel.text + endStr;
		} else {
			sel.text = startStr + fillStr + endStr;
		}
		theField.focus();
	}
	//MOZILLA/NETSCAPE support
	else if (theField.selectionStart || theField.selectionStart == '0') {
		var startPos = theField.selectionStart;
		var endPos = theField.selectionEnd;
		var cursorPos = endPos;
		var scrollTop = theField.scrollTop;
		if (startPos != endPos) {
			theField.value = theField.value.substring(0, startPos)
			              + startStr
			              + theField.value.substring(startPos, endPos) 
			              + endStr
			              + theField.value.substring(endPos, theField.value.length);
			cursorPos += startStr.length + endStr.length;
		} else {
			theField.value = theField.value.substring(0, startPos) 
				      + startStr + fillStr + endStr
				      + theField.value.substring(endPos, theField.value.length);
			cursorPos = startPos + startStr.length + fillStr.length + endStr.length;
		} 
		theField.focus();
		theField.selectionStart = cursorPos;
		theField.selectionEnd = cursorPos;
		theField.scrollTop = scrollTop;
	} else {  // OTHER BROWSERS
		theField.value += startStr + fillStr + endStr;
		theField.focus();
	}
}

