function insert_smiley(text) {
	var txtarea = document.post.posttext;
	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();
	}
}

function insert_tag(tag_open, tag_close, tag_newlines) {
	var txtarea = document.post.posttext;

	var selection = getrange();

	if (!selection)
  {
    if(tag_newlines == 1)
  		txtarea.value += tag_open + "\n" + tag_close + "\n";
    else
  		txtarea.value += tag_open + tag_close;
	}
  else
  {
    if(tag_newlines == 1)
    	setrange(tag_open + "\n" + selection + "\n" + tag_close + "\n");
    else
    	setrange(tag_open + selection + tag_close);
  }
  txtarea.focus();
}

function storeCaret(element) {
	if (element.createTextRange && element.caretPos)
  {
    element.caretPos = getrange();
  }
}

function getrange() {
   if (window.getSelection)
     return window.getSelection();
   else if (document.getSelection)
     return document.getSelection();
   else if (document.selection)
     return document.selection.createRange().text;
   return "";
}

function setrange(text) {
   if (window.getSelection)
     window.getSelection = text;
   else if (document.getSelection)
     document.getSelection = text;
   else if (document.selection)
     document.selection.createRange().text = text;
}
