jQuery(document).ready(function()
{
  jQuery('a.edit-emoticon').click(function(event)
  {
    event.preventDefault();

    var input = jQuery('#' + jQuery(event.target).attr('input_target'));
    var range = input.caret();
    var text = null;
    var begin;
    if (typeof(range.start) == 'undefined')
      begin = 0;
    else
      begin = range.start;

    // Get selected text
    text = input.val().substr(range.start, range.end - 1);

    // Insert text at caret then restore caret
    var value = input.val();
    text = ' ' + jQuery(event.target).attr('value') + ' ' ;
    input.val(value.substr(0, begin) + text + value.substr(range.end));
    if (begin == 0)
      input.caret(text.length);
    else
      input.caret(range.start + text.length);
  });
});

