X-Git-Url: https://git.openstreetmap.org./osqa.git/blobdiff_plain/bb63044c86f47d0f98e60ad75e6d1230c6fc2bcf..9b8694523acd70fc901b4092c874548e5faf211f:/forum/skins/default/media/js/osqa.main.js diff --git a/forum/skins/default/media/js/osqa.main.js b/forum/skins/default/media/js/osqa.main.js index 7571a4b..ae03c67 100644 --- a/forum/skins/default/media/js/osqa.main.js +++ b/forum/skins/default/media/js/osqa.main.js @@ -71,7 +71,11 @@ var response_commands = { }); }, - insert_comment: function(post_id, comment_id, comment, username, profile_url, delete_url, edit_url, convert_url) { + award_points: function(id) { + alert('ok'); + }, + + insert_comment: function(post_id, comment_id, comment, username, profile_url, delete_url, edit_url, convert_url, can_convert) { var $container = $('#comments-container-' + post_id); var skeleton = $('#new-comment-skeleton-' + post_id).html().toString(); @@ -85,6 +89,11 @@ var response_commands = { $container.append(skeleton); + // Show the convert comment to answer tool only if the current comment can be converted + if (can_convert == true) { + $('#comment-' + comment_id + '-convert').show(); + } + $('#comment-' + comment_id).slideDown('slow'); }, @@ -96,12 +105,12 @@ var response_commands = { }, mark_deleted: function(post_type, post_id) { - if (post_type == 'answer') { - var $answer = $('#answer-container-' + post_id); - $answer.addClass('deleted'); - } else { + if (post_type == 'question') { var $container = $('#question-table'); $container.addClass('deleted'); + } else { + var $el = $('#' + post_type + '-container-' + post_id); + $el.addClass('deleted'); } }, @@ -121,6 +130,10 @@ var response_commands = { set_subscription_status: function(text) { $('.subscription-status').html(text); + }, + + copy_url: function(url) { + $.copy(url); } } @@ -185,10 +198,29 @@ function show_dialog (extern) { top: options.pos.y, left: options.pos.x }); - + + top_position_change = (options.dim.h / 2) + left_position_change = (options.dim.w / 2) + + new_top_position = options.pos.y - top_position_change + new_left_position = options.pos.x - left_position_change + + if (new_left_position < 0) { + left_position_change = 0 + } + if (($(window).scrollTop() - new_top_position) > 0) { + top_position_change = 0 + } + if ((options.event.pageY + options.dim.h) > ($(window).height() + $(window).scrollTop())) { + top_position_change = options.dim.h + } + if ((options.event.pageX + options.dim.w) > ($(window).width() + $(window).scrollLeft())) { + left_position_change = options.dim.w + } + $dialog.animate({ - top: "-=" + (options.dim.h / 2), - left: "-=" + (options.dim.w / 2), + top: "-=" + top_position_change, + left: "-=" + left_position_change, width: options.dim.w, height: options.dim.h }, 200, function() { @@ -301,19 +333,22 @@ $(function() { $('a.ajax-command').live('click', function(evt) { if (running) return false; - $('.context-menu-dropdown').slideUp('fast'); - var el = $(this); + var ajax_url = el.attr('href') + ajax_url = ajax_url + "?nocache=" + new Date().getTime() + + $('.context-menu-dropdown').slideUp('fast'); + if (el.is('.withprompt')) { - load_prompt(evt, el, el.attr('href')); + load_prompt(evt, el, ajax_url); } else if(el.is('.confirm')) { var doptions = { html: messages.confirm, extra_class: 'confirm', yes_callback: function() { start_command(); - $.getJSON(el.attr('href'), function(data) { + $.getJSON(ajax_url, function(data) { process_ajax_response(data, evt); $dialog.fadeOut('fast', function() { $dialog.remove(); @@ -331,7 +366,7 @@ $(function() { var $dialog = show_dialog(doptions); } else { start_command(); - $.getJSON(el.attr('href'), function(data) { + $.getJSON(ajax_url, function(data) { process_ajax_response(data, evt); }); } @@ -366,6 +401,7 @@ $(function() { if ($form.length) { var $textarea = $container.find('textarea'); var textarea = $textarea.get(0); + var $csrf = $container.find('[name="csrfmiddlewaretoken"]'); var $button = $container.find('.comment-submit'); var $cancel = $container.find('.comment-cancel'); var $chars_left_message = $container.find('.comments-chars-left-msg'); @@ -494,7 +530,8 @@ $(function() { if (running) return false; var post_data = { - comment: $textarea.val() + comment: $textarea.val(), + csrfmiddlewaretoken: $csrf.val() } if (comment_in_form) { @@ -540,8 +577,8 @@ $(function() { var $previewer = $('#previewer'); var $container = $('#editor-metrics'); - var initial_whitespace_rExp = /^[^A-Za-z0-9]+/gi; - var non_alphanumerics_rExp = rExp = /[^A-Za-z0-9]+/gi; + var initial_whitespace_rExp = /^[^A-Za-zА-Яа-я0-9]+/gi; + var non_alphanumerics_rExp = rExp = /[^A-Za-zА-Яа-я0-9]+/gi; var editor_interval = null; $editor.focus(function() { @@ -660,7 +697,7 @@ function pickedTags(){ tag_link.html(tagname); var del_link = $(''); del_link.addClass('delete-icon'); - del_link.attr('src', mediaUrl('/media/images/close-small-dark.png')); + del_link.attr('src', mediaUrl('media/images/close-small-dark.png')); setupTagDeleteEvents(del_link, to_target, tagname, reason, true);