1 contributor
function insertAtCaret(target, str) {
var obj = $(target);
obj.focus();
if(navigator.userAgent.match(/MSIE/)) {
var r = document.selection.createRange();
r.text = str;
r.select();
} else {
var s = obj.val();
var p = obj.get(0).selectionStart;
var np = p + str.length;
obj.val(s.substr(0, p) + str + s.substr(p));
obj.get(0).setSelectionRange(np, np);
}
}
// Click write tab
$('#write-tab').on('click', function () {
$('#write-tab').find('a').attr('class', '');
$('#preview-tab').find('a').attr('class', 'disable');
$('#write-area').css('display', 'block');
$('#preview-area').css('display', 'none');
});
// Click preview tab
$('#preview-tab').on('click', function () {
$('#write-tab').find('a').attr('class', 'disable');
$('#preview-tab').find('a').attr('class', '');
$('#write-area').css('display', 'none');
$('#preview-area').css('display', 'block');
var text = $('[name=message]').val();
$.post('/api/markdown', {text : text}, function (result) {
var markdown = result.markdown;
$('#preview-area').html(markdown);
});
});
// Click delete button
$('.issue-message-delete-btn').on('click', function () {
if (window.confirm('Are you sure you want to delete this?')) {
var issue_message_row_id_div = $(this).closest('.issue-message-row-id');
var issue_message_row_id_str = issue_message_row_id_div.attr('id');
var issue_message_row_id = (issue_message_row_id_str.match(/row-(.+)/))[1];
$.post('<%= url_for %>', {op : 'api-delete-issue-message', issue_message_row_id : issue_message_row_id}, function (result) {
if (result.success) {
$('#row-' + issue_message_row_id).fadeOut();
}
});
}
});
$('.issue-message-edit-btn').on('click', function () {
var issue_message_row_id_div = $(this).closest('.issue-message-row-id');
var issue_message_row_id_str = issue_message_row_id_div.attr('id');
var issue_message_row_id = (issue_message_row_id_str.match(/row-(.+)/))[1];
$('#row-' + issue_message_row_id).find('.issue-message').css('display', 'none');
$('#row-' + issue_message_row_id).find('.issue-message-update').css('display', 'block');
});
$('.issue-message-update-cancel').on('click', function () {
var issue_message_row_id_div = $(this).closest('.issue-message-row-id');
var issue_message_row_id_str = issue_message_row_id_div.attr('id');
var issue_message_row_id = (issue_message_row_id_str.match(/row-(.+)/))[1];
$('#row-' + issue_message_row_id).find('.issue-message').css('display', 'block');
$('#row-' + issue_message_row_id).find('.issue-message-update').css('display', 'none');
return false;
});
// Comment icon
$('.issue-icon-add-header-text').on('click', function () {
var textarea = $(this).closest('form').find('textarea');
insertAtCaret(textarea, "# ");
});
$('.issue-icon-add-bold-text').on('click', function () {
var textarea = $(this).closest('form').find('textarea');
insertAtCaret(textarea, "****");
});
$('.issue-icon-add-italic-text').on('click', function () {
var textarea = $(this).closest('form').find('textarea');
insertAtCaret(textarea, "__");
});
$('.issue-icon-insert-quote').on('click', function () {
var textarea = $(this).closest('form').find('textarea');
insertAtCaret(textarea, "> ");
});
$('.issue-icon-insert-code').on('click', function () {
var textarea = $(this).closest('form').find('textarea');
insertAtCaret(textarea, "``");
});
$('.issue-icon-add-link').on('click', function () {
var textarea = $(this).closest('form').find('textarea');
insertAtCaret(textarea, "[](url)");
});
$('.issue-icon-add-bulleted-list').on('click', function () {
var textarea = $(this).closest('form').find('textarea');
insertAtCaret(textarea, "- ");
});
$('.issue-icon-add-numbered-list').on('click', function () {
var textarea = $(this).closest('form').find('textarea');
insertAtCaret(textarea, "1. ");
});
$('.issue-icon-mension-user').on('click', function () {
var textarea = $(this).closest('form').find('textarea');
insertAtCaret(textarea, "@");
});