function bbcode(open_tag, close_tag, id) {
   var obj = document.getElementById(id);
   var spacer;
   if(obj.value.length > 0) {
      spacer = " ";
   } else {
      spacer = "";
   }
   var begining_text = obj.value.substr(0, obj.selectionStart);
   var selected_text = obj.value.substr(obj.selectionStart, obj.selectionEnd);
   var end_text = obj.value.substr(obj.selectionEnd, obj.value.length);

   var caret_position = obj.selectionStart;
   var text_to_caret = obj.value.substr(0, caret_position);
   var text_after_caret = obj.value.substr(caret_position, obj.value.length);

   // If there is a selection
   if(obj.selectionStart != obj.selectionEnd) {
      obj.value = begining_text + open_tag + selected_text + close_tag + end_text
   } else {
   // If there is not a selection
      obj.value = text_to_caret + open_tag + close_tag + text_after_caret
   }
   //obj.value = obj.value + spacer + text;

} 
