You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

67 lines
2.0 KiB

var base = '://cmtd.linuxdv.org';
$(document).ready(function(){
$('<link/>')
.attr({'href': base +'/css/main.css', 'rel': 'stylesheet'})
.appendTo('head');
$('#comments').load(base + '/comments/list', function() {
$('#cmtd_main a.c_add').on('click', function (e) {
e.preventDefault();
$('#cmtd_main #no_comments_notice').remove();
$('#cmtd_main #comment_add').remove();
load_comment_form(e.target);
});
});
});
function load_comment_form(elem) {
$.get(base + '/comments/add', function(content) {
$('#cmtd_main').append(content);
if (reply = $(elem).data('cid')) {
$('#cmtd_main form input[name=reply]').attr({'value': reply});
}
$('#cmtd_main form').attr({'action': base + '/comments/add'});
$('#cmtd_main form').on('submit', function(e) {
e.preventDefault();
if ($('#cmtd_captcha img').length == 0) {
update_captcha();
return;
}
var data = $(this).serialize();
$.ajax(base + '/comments/add', {
'success': function() { location.reload() },
'error': function(resp) {
update_captcha();
$('span#resp').text(resp.responseText);
},
'type': 'POST',
'data': data,
}); // post
}); // on submit
});
}
function update_captcha() {
$('#cmtd_captcha').hide().empty();
$.getJSON(base + '/captcha', function(data) {
if (!data['cid'])
return;
var img = $('<img>')
.attr({'src': data['data']})
.appendTo('#cmtd_captcha');
$(img).load(function(){
var w = $(img).prop('width');
var h = $(img).prop('height');
$('<input>')
.attr({'name': 'cid', 'type': 'hidden', 'value': data['cid']})
.appendTo('#cmtd_captcha');
$('<input>')
.attr({'name': 'code', 'type': 'text'})
.attr({'placeholder': '<< enter this code'})
.css({'width': w, 'height': h, 'margin-left': '5px'})
.appendTo('#cmtd_captcha');
$('#cmtd_captcha').show();
}); // load()
}); // get captcha
}