<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>