blob: e49b2dd066465205afd1371497513c8d141eba28 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
// Static comments
// from: https://github.com/eduardoboucas/popcorn/blob/gh-pages/js/main.js
$(document).ready(function() {
var $comments = $('.js-comments');
$('.js-form').submit(function () {
var form = this;
$(form).addClass('disabled');
$.ajax({
type: $(this).attr('method'),
url: $(this).attr('action'),
data: $(this).serialize(),
contentType: 'application/x-www-form-urlencoded',
success: function (data) {
$('input[type="submit"]').addClass('hidden');
$('input[type="submit"]:disabled').removeClass('hidden');
showAlert('success');
clearForm();
$(form).removeClass('disabled');
},
error: function (err) {
$('input[type="submit"]').removeClass('hidden');
$('input[type="submit"]:disabled').addClass('hidden');
console.log(err);
showAlert('failed');
$(form).removeClass('disabled');
}
});
return false;
});
function showAlert(msg) {
if (msg == 'success') {
$('.js-form .submit-success').removeClass('hidden');
$('.js-form .submit-failed').addClass('hidden');
} else {
$('.js-form .submit-success').addClass('hidden');
$('.js-form .submit-failed').removeClass('hidden');
}
}
function clearForm() {
$('input[name="fields[replyThread]"]').val('');
$('input[name="fields[replyID]"]').val('');
$('input[name="fields[replyName]"]').val('');
$('.reply-notice-text').text('');
$('.reply-notice').addClass('hidden');
$('.js-form .submit-success').addClass('hidden');
$('.js-form .submit-failed').addClass('hidden');
$('input[type="submit"]').removeClass('hidden');
$('input[type="submit"]:disabled').addClass('hidden');
}
// record reply target when "reply to this comment" is pressed
$('article.static-comment').on('click', 'a.reply-btn', function (evt){
var cmt = $(evt.delegateTarget);
$('input[name="fields[replyThread]"]').val(this.title);
$('input[name="fields[replyID]"]').val(cmt.attr("id"));
authorTag = cmt.find('.comment-author');
replyName = authorTag.text();
$('input[name="fields[replyName]"]').val(replyName);
$('.reply-notice').removeClass('hidden');
$('.reply-notice-text').text('↷\xa0' + replyName);
});
// clear form when reset button is clicked
$('.js-form input[type="reset"]').click(function (){
clearForm();
});
});
|