]> git.openstreetmap.org Git - osqa.git/blobdiff - forum/skins/default/media/js/osqa.main.js
OSQA-720, changing the WMD markdown editor, applying patches that resolve issues...
[osqa.git] / forum / skins / default / media / js / osqa.main.js
index 0c532e37adbfc7da84bd61d7c26c9066311e55ad..8f785e30a294593747f900bbf79de0c3c5736413 100644 (file)
@@ -19,16 +19,14 @@ $('html').ajaxSend(function(event, xhr, settings) {
         }\r
         return cookieValue;\r
     }\r
-    if (!(/^http:.*/.test(settings.url) || /^https:.*/.test(settings.url))) {\r
-        // Only send the token to relative URLs i.e. locally.\r
-        xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken'));\r
-    }\r
+    try {\r
+        if (!(/^http:.*/.test(settings.url) || /^https:.*/.test(settings.url))) {\r
+            // Only send the token to relative URLs i.e. locally.\r
+            xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken'));\r
+        }\r
+    } catch (e) {}\r
 });\r
 \r
-function canned_comment(post_id, comment) {\r
-    $('#comment-' + post_id + '-form textarea').val(comment);\r
-}\r
-\r
 var response_commands = {\r
     refresh_page: function() {\r
         window.location.reload(true)\r
@@ -369,7 +367,28 @@ function end_command(success) {
     }\r
 }\r
 \r
+var comment_box_cursor_position = 0;\r
+function canned_comment(post_id, comment) {\r
+    textarea = $('#comment-' + post_id + '-form textarea')\r
+\r
+    // Get the text from the beginning to the caret\r
+    textarea_start = textarea.val().substr(0, comment_box_cursor_position)\r
+\r
+    // Get the text from the caret to the end\r
+    textarea_end = textarea.val().substr(comment_box_cursor_position, textarea.val().length)\r
+\r
+    textarea.val(textarea_start + comment + textarea_end);\r
+}\r
+\r
 $(function() {\r
+    $('textarea.commentBox').bind('keydown keyup mousedown mouseup mousemove', function(evt) {\r
+        comment_box_cursor_position = $(this).caret().start;\r
+    });\r
+\r
+    $('textarea.commentBox').blur(function() {\r
+        //alert(comment_box_cursor_position);\r
+    });\r
+\r
     $('a.ajax-command').live('click', function(evt) {\r
         if (running) return false;\r
 \r
@@ -577,7 +596,7 @@ $(function() {
                 }\r
 \r
                 start_command();\r
-                $.post($form.attr('action'), $form.serialize(), function(data) {\r
+                $.post($form.attr('action'), post_data, function(data) {\r
                     process_ajax_response(data, evt, function(error) {\r
                         if (!error) {\r
                             cleanup_form();\r