Mercurial > public > sg101
diff gpp/comments/static/js/comments.js @ 312:88b2b9cb8c1f
Fixing #142; cut over to the django.contrib.staticfiles app.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Thu, 27 Jan 2011 02:56:10 +0000 |
parents | |
children | f785a646a5fc |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gpp/comments/static/js/comments.js Thu Jan 27 02:56:10 2011 +0000 @@ -0,0 +1,66 @@ +$(document).ready(function() { + var postText = $('#id_comment'); + var postButton = $('#comment-form-post'); + postButton.click(function () { + var text = $.trim(postText.val()); + if (text.length == 0) { + alert('Please enter some text.'); + return false; + } + postButton.attr('disabled', 'disabled').val('Posting Comment...'); + $.ajax({ + url: '/comments/post/', + type: 'POST', + data: { + comment : text, + content_type : $('#id_content_type').val(), + object_pk : $('#id_object_pk').val() + }, + dataType: 'html', + success: function (data, textStatus) { + postText.val(''); + $('#comment-container').append(data); + var newDiv = $('#comment-container > div:last'); + newDiv.hide(); + var num = $('.comment-list', newDiv); + num.html($('#comment-container > div').size() + "."); + newDiv.fadeIn(3000); + postButton.removeAttr('disabled').val('Post Comment'); + var count = $('#comment-count'); + if (count.length) { + count.html(parseInt(count.html()) + 1); + } + }, + error: function (xhr, textStatus, ex) { + alert('Oops, an error occurred. ' + xhr.statusText + ' - ' + + xhr.responseText); + postButton.removeAttr('disabled').val('Post Comment'); + } + }); + return false; + }); + $('a.comment-flag').click(function () { + var id = this.id; + if (id.match(/fc-(\d+)/)) { + id = RegExp.$1; + if (confirm('Only flag a comment if you feel it is spam, abuse, violates site rules, ' + + 'or is not appropriate. ' + + 'A moderator will be notified and will review the comment. ' + + 'Are you sure you want to flag this comment?')) { + $.ajax({ + url: '/comments/flag/', + type: 'POST', + data: {id: id}, + dataType: 'text', + success: function (response, textStatus) { + alert(response); + }, + error: function (xhr, textStatus, ex) { + alert('Oops, an error occurred: ' + xhr.statusText + ' - ' + xhr.responseText); + } + }); + } + } + return false; + }); +});