<script type="text/javascript"> /** * adds a tag in at the beginning and at the end of a selected text in the specific text area * @param string elementID * @param string openTag * @param string closeTag */ function MCI_Footnotes_wrapText(elementID, openTag, closeTag) { var textArea = jQuery('#' + elementID); var len = textArea.val().length; var start = textArea[0].selectionStart; var end = textArea[0].selectionEnd; var selectedText = textArea.val().substring(start, end); var replacement = openTag + selectedText + closeTag; textArea.val(textArea.val().substring(0, start) + replacement + textArea.val().substring(end, len)); } /** * adds a new button to the plain text editor */ QTags.addButton( 'MCI_Footnotes_QuickTag_button', 'footnotes', MCI_Footnotes_text_editor_callback ); /** * callback function when the button is clicked * executes a ajax call to get the start and end tag for the footnotes and * adds them in before and after the selected text */ function MCI_Footnotes_text_editor_callback() { jQuery.ajax({ type: 'POST', url: '/wp-admin/admin-ajax.php', data: { action: 'footnotes_getTags' }, success: function(data, textStatus, XMLHttpRequest){ var l_arr_Tags = JSON.parse(data); MCI_Footnotes_wrapText("content", l_arr_Tags['start'], l_arr_Tags['end']); }, error: function(MLHttpRequest, textStatus, errorThrown){ } }); } </script>