--- a/includes/clientside/static/comments.js Sun Mar 28 21:49:26 2010 -0400
+++ b/includes/clientside/static/comments.js Sun Mar 28 23:10:46 2010 -0400
@@ -5,687 +5,687 @@
window.ajaxComments = function(parms)
{
- load_component(['l10n', 'paginate', 'template-compiler', 'toolbar', 'flyin', 'jquery', 'jquery-ui']);
- setAjaxLoading();
- var pid = strToPageID(title);
- if(!parms)
- {
- var parms = {
- mode: 'fetch',
- pagenum: 0
- };
- }
- parms.page_id = pid[0];
- parms.namespace = pid[1];
- if(comment_template)
- parms.have_template = true;
- parms = ajaxEscape(toJSONString(parms));
- ajaxPost(stdAjaxPrefix+'&_mode=comments', 'data=' + parms, function(ajax) {
- if ( ajax.readyState == 4 && ajax.status == 200 ) {
- unsetAjaxLoading();
- selectButtonMajor('discussion');
- unselectAllButtonsMinor();
- // IE compatibility - doing ajax.responseText.substr() doesn't work
- var rsptxt = ajax.responseText + '';
- if ( rsptxt.substr(0, 1) != '{' )
- {
- document.getElementById('ajaxEditContainer').innerHTML = '<p>Comment system Javascript runtime: invalid JSON response from server, response text:</p><pre>' + ajax.responseText + '</pre>';
- return false;
- }
- var response = parseJSON(ajax.responseText);
- switch(response.mode)
- {
- case 'fetch':
- if(response.template)
- comment_template = response.template;
- setAjaxLoading();
- renderComments(response);
- unsetAjaxLoading();
- break;
- case 'refetch':
- var html = '';
- for ( var i = 0; i < response.comments.length; i++ )
- {
- html += window._render_comment(response.comments[i], response);
- }
- $('#' + response.passback.paginator_id + '_0')
- .css('height', 'auto')
- .css('background-color', 'transparent')
- .css('background-image', 'none')
- .fadeTo('fast', 100)
- .html(html);
- break;
- case 'redraw':
- redrawComment(response);
- break;
- case 'annihilate':
- annihiliateComment(response.id);
- break;
- case 'materialize':
- alert($lang.get('comment_msg_comment_posted'));
- hideCommentForm();
- materializeComment(response);
- break;
- case 'error':
- load_component(['messagebox', 'fadefilter', 'flyin']);
- new MessageBox(MB_OK|MB_ICONSTOP, ( response.title ? response.title : $lang.get('comment_ajax_err_generic_title') ), response.error);
- break;
- default:
- alert(ajax.responseText);
- break;
- }
- }
- });
+ load_component(['l10n', 'paginate', 'template-compiler', 'toolbar', 'flyin', 'jquery', 'jquery-ui']);
+ setAjaxLoading();
+ var pid = strToPageID(title);
+ if(!parms)
+ {
+ var parms = {
+ mode: 'fetch',
+ pagenum: 0
+ };
+ }
+ parms.page_id = pid[0];
+ parms.namespace = pid[1];
+ if(comment_template)
+ parms.have_template = true;
+ parms = ajaxEscape(toJSONString(parms));
+ ajaxPost(stdAjaxPrefix+'&_mode=comments', 'data=' + parms, function(ajax) {
+ if ( ajax.readyState == 4 && ajax.status == 200 ) {
+ unsetAjaxLoading();
+ selectButtonMajor('discussion');
+ unselectAllButtonsMinor();
+ // IE compatibility - doing ajax.responseText.substr() doesn't work
+ var rsptxt = ajax.responseText + '';
+ if ( rsptxt.substr(0, 1) != '{' )
+ {
+ document.getElementById('ajaxEditContainer').innerHTML = '<p>Comment system Javascript runtime: invalid JSON response from server, response text:</p><pre>' + ajax.responseText + '</pre>';
+ return false;
+ }
+ var response = parseJSON(ajax.responseText);
+ switch(response.mode)
+ {
+ case 'fetch':
+ if(response.template)
+ comment_template = response.template;
+ setAjaxLoading();
+ renderComments(response);
+ unsetAjaxLoading();
+ break;
+ case 'refetch':
+ var html = '';
+ for ( var i = 0; i < response.comments.length; i++ )
+ {
+ html += window._render_comment(response.comments[i], response);
+ }
+ $('#' + response.passback.paginator_id + '_0')
+ .css('height', 'auto')
+ .css('background-color', 'transparent')
+ .css('background-image', 'none')
+ .fadeTo('fast', 100)
+ .html(html);
+ break;
+ case 'redraw':
+ redrawComment(response);
+ break;
+ case 'annihilate':
+ annihiliateComment(response.id);
+ break;
+ case 'materialize':
+ alert($lang.get('comment_msg_comment_posted'));
+ hideCommentForm();
+ materializeComment(response);
+ break;
+ case 'error':
+ load_component(['messagebox', 'fadefilter', 'flyin']);
+ new MessageBox(MB_OK|MB_ICONSTOP, ( response.title ? response.title : $lang.get('comment_ajax_err_generic_title') ), response.error);
+ break;
+ default:
+ alert(ajax.responseText);
+ break;
+ }
+ }
+ });
}
window.renderComments = function(data)
{
-
- var html = '';
-
- // Header
-
- html += '<h3>' + $lang.get('comment_heading') + '</h3>';
-
- var ns = ENANO_PAGE_TYPE;
-
- // Counters
- if ( data.auth_mod_comments )
- {
- var cnt = ( data.auth_mod_comments ) ? data.count_total : data.count_appr;
-
- var subst = {
- num_comments: cnt,
- page_type: ns
- }
- var count_msg = ( cnt == 0 ) ? $lang.get('comment_msg_count_zero', subst) : ( ( cnt == 1 ) ? $lang.get('comment_msg_count_one', subst) : $lang.get('comment_msg_count_plural', subst) );
-
- html += "<p id=\"comment_status\"><span>" + count_msg + '</span>';
- if ( data.count_unappr > 0 )
- {
- html += ' <span style="color: #D84308" id="comment_status_unapp">' + $lang.get('comment_msg_count_unapp_mod', { num_unapp: data.count_unappr }) + '</span>';
- }
- html += '</p>';
- }
- else
- {
- var cnt = data.count_appr;
-
- var subst = {
- num_comments: cnt,
- page_type: ns
- }
- var count_msg = ( cnt == 0 ) ? $lang.get('comment_msg_count_zero', subst) : ( ( cnt == 1 ) ? $lang.get('comment_msg_count_one', subst) : $lang.get('comment_msg_count_plural', subst) );
-
- html += "<p id=\"comment_status\">" + count_msg;
- if ( data.count_unappr > 0 )
- {
- var unappr_msg = ( data.count_unappr == 1 ) ? $lang.get('comment_msg_count_unapp_one') : $lang.get('comment_msg_count_unapp_plural', { num_unapp: data.count_unappr });
- html += ' ' + unappr_msg;
- }
- html += '</p>';
- }
-
- // Comment display
-
- if ( data.count_total > 0 )
- {
- comment_render_track = 0;
- var commentpages = new paginator(data.comments, _render_comment, 0, data.per_page, data, Math.ceil(data.count_total / data.per_page), window._comment_page_flip);
- html += commentpages.html;
- }
-
- if ( data.auth_post_comments )
- {
- // Posting form
-
- html += '<h3>' + $lang.get('comment_postform_title') + '</h3>';
- html += '<p>' + $lang.get('comment_postform_blurb');
- if ( data.approval_needed )
- html+=' ' + $lang.get('comment_postform_blurb_unapp');
- html += ' <a id="leave_comment_button" href="#" onclick="displayCommentForm(); return false;">' + $lang.get('comment_postform_blurb_link') + '</a></p>';
- html += '<div id="comment_form" style="display: none;">';
- html += ' <table border="0" style="width: 100%;">';
- html += ' <tr><td>' + $lang.get('comment_postform_field_name') + '</td><td>';
- if ( data.user_id > 1 ) html += data.username + '<input id="commentform_name" type="hidden" value="'+data.username+'" size="40" />';
- else html += '<input id="commentform_name" type="text" size="40" style="width: 100%;" />';
- html += ' </td></tr>';
- html += ' <tr><td>' + $lang.get('comment_postform_field_subject') + '</td><td><input id="commentform_subject" type="text" size="40" style="width: 100%;" /></td></tr>';
- html += ' <tr><td>' + $lang.get('comment_postform_field_comment') + '</td><td><textarea id="commentform_message" rows="15" cols="50" style="width: 100%;"></textarea></td></tr>';
- if ( !data.logged_in && data.guest_posting == '1' )
- {
- html += ' <tr><td>' + $lang.get('comment_postform_field_captcha_title') + '<br /><small>' + $lang.get('comment_postform_field_captcha_blurb') + '</small></td><td>';
- html += ' <img alt="CAPTCHA image" src="'+makeUrlNS('Special', 'Captcha/' + data.captcha)+'" onclick="this.src=\''+makeUrlNS('Special', 'Captcha/' + data.captcha)+'/\'+Math.floor(Math.random()*10000000);" style="cursor: pointer;" /><br />';
- html += ' ' + $lang.get('comment_postform_field_captcha_label') + ' <input type="text" size="8" id="commentform_captcha" />';
- html += ' <!-- This input is used to track the ID of the CAPTCHA image --> <input type="hidden" id="commentform_captcha_id" value="'+data.captcha+'" />';
- html += ' </td></tr>';
- }
- html += ' <tr><td colspan="2" style="text-align: center;"><input type="button" onclick="submitComment();" value="' + $lang.get('comment_postform_btn_submit') + '" /></td></tr>';
- html += ' </table>';
- html += '</div>';
- }
-
- document.getElementById('ajaxEditContainer').innerHTML = html;
- if ( document.getElementById('commentform_message') )
- {
- document.getElementById('commentform_message').allow_wysiwyg = data.auth_edit_wysiwyg
- }
-
- for ( i = 0; i < data.comments.length; i++ )
- {
- document.getElementById('comment_source_'+i).value = data.comments[i].comment_source;
- }
-
+
+ var html = '';
+
+ // Header
+
+ html += '<h3>' + $lang.get('comment_heading') + '</h3>';
+
+ var ns = ENANO_PAGE_TYPE;
+
+ // Counters
+ if ( data.auth_mod_comments )
+ {
+ var cnt = ( data.auth_mod_comments ) ? data.count_total : data.count_appr;
+
+ var subst = {
+ num_comments: cnt,
+ page_type: ns
+ }
+ var count_msg = ( cnt == 0 ) ? $lang.get('comment_msg_count_zero', subst) : ( ( cnt == 1 ) ? $lang.get('comment_msg_count_one', subst) : $lang.get('comment_msg_count_plural', subst) );
+
+ html += "<p id=\"comment_status\"><span>" + count_msg + '</span>';
+ if ( data.count_unappr > 0 )
+ {
+ html += ' <span style="color: #D84308" id="comment_status_unapp">' + $lang.get('comment_msg_count_unapp_mod', { num_unapp: data.count_unappr }) + '</span>';
+ }
+ html += '</p>';
+ }
+ else
+ {
+ var cnt = data.count_appr;
+
+ var subst = {
+ num_comments: cnt,
+ page_type: ns
+ }
+ var count_msg = ( cnt == 0 ) ? $lang.get('comment_msg_count_zero', subst) : ( ( cnt == 1 ) ? $lang.get('comment_msg_count_one', subst) : $lang.get('comment_msg_count_plural', subst) );
+
+ html += "<p id=\"comment_status\">" + count_msg;
+ if ( data.count_unappr > 0 )
+ {
+ var unappr_msg = ( data.count_unappr == 1 ) ? $lang.get('comment_msg_count_unapp_one') : $lang.get('comment_msg_count_unapp_plural', { num_unapp: data.count_unappr });
+ html += ' ' + unappr_msg;
+ }
+ html += '</p>';
+ }
+
+ // Comment display
+
+ if ( data.count_total > 0 )
+ {
+ comment_render_track = 0;
+ var commentpages = new paginator(data.comments, _render_comment, 0, data.per_page, data, Math.ceil(data.count_total / data.per_page), window._comment_page_flip);
+ html += commentpages.html;
+ }
+
+ if ( data.auth_post_comments )
+ {
+ // Posting form
+
+ html += '<h3>' + $lang.get('comment_postform_title') + '</h3>';
+ html += '<p>' + $lang.get('comment_postform_blurb');
+ if ( data.approval_needed )
+ html+=' ' + $lang.get('comment_postform_blurb_unapp');
+ html += ' <a id="leave_comment_button" href="#" onclick="displayCommentForm(); return false;">' + $lang.get('comment_postform_blurb_link') + '</a></p>';
+ html += '<div id="comment_form" style="display: none;">';
+ html += ' <table border="0" style="width: 100%;">';
+ html += ' <tr><td>' + $lang.get('comment_postform_field_name') + '</td><td>';
+ if ( data.user_id > 1 ) html += data.username + '<input id="commentform_name" type="hidden" value="'+data.username+'" size="40" />';
+ else html += '<input id="commentform_name" type="text" size="40" style="width: 100%;" />';
+ html += ' </td></tr>';
+ html += ' <tr><td>' + $lang.get('comment_postform_field_subject') + '</td><td><input id="commentform_subject" type="text" size="40" style="width: 100%;" /></td></tr>';
+ html += ' <tr><td>' + $lang.get('comment_postform_field_comment') + '</td><td><textarea id="commentform_message" rows="15" cols="50" style="width: 100%;"></textarea></td></tr>';
+ if ( !data.logged_in && data.guest_posting == '1' )
+ {
+ html += ' <tr><td>' + $lang.get('comment_postform_field_captcha_title') + '<br /><small>' + $lang.get('comment_postform_field_captcha_blurb') + '</small></td><td>';
+ html += ' <img alt="CAPTCHA image" src="'+makeUrlNS('Special', 'Captcha/' + data.captcha)+'" onclick="this.src=\''+makeUrlNS('Special', 'Captcha/' + data.captcha)+'/\'+Math.floor(Math.random()*10000000);" style="cursor: pointer;" /><br />';
+ html += ' ' + $lang.get('comment_postform_field_captcha_label') + ' <input type="text" size="8" id="commentform_captcha" />';
+ html += ' <!-- This input is used to track the ID of the CAPTCHA image --> <input type="hidden" id="commentform_captcha_id" value="'+data.captcha+'" />';
+ html += ' </td></tr>';
+ }
+ html += ' <tr><td colspan="2" style="text-align: center;"><input type="button" onclick="submitComment();" value="' + $lang.get('comment_postform_btn_submit') + '" /></td></tr>';
+ html += ' </table>';
+ html += '</div>';
+ }
+
+ document.getElementById('ajaxEditContainer').innerHTML = html;
+ if ( document.getElementById('commentform_message') )
+ {
+ document.getElementById('commentform_message').allow_wysiwyg = data.auth_edit_wysiwyg
+ }
+
+ for ( i = 0; i < data.comments.length; i++ )
+ {
+ document.getElementById('comment_source_'+i).value = data.comments[i].comment_source;
+ }
+
}
var _render_comment = function(this_comment, data)
{
- var i = comment_render_track;
- comment_render_track++;
- var parser = new templateParser(comment_template);
- var tplvars = new Object();
-
- if ( this_comment.approved != '1' && !data.auth_mod_comments )
- return '';
-
- tplvars.ID = i;
- tplvars.DATETIME = this_comment.time;
- tplvars.SUBJECT = this_comment.subject;
- tplvars.DATA = this_comment.comment_data;
- tplvars.SIGNATURE = this_comment.signature;
-
- if ( this_comment.approved == '0' )
- tplvars.SUBJECT += ' <span style="color: #D84308">' + $lang.get('comment_msg_note_unapp') + '</span>';
- else if ( this_comment.approved == '2' )
- tplvars.SUBJECT += ' <span style="color: #D84308">' + $lang.get('comment_msg_note_spam') + '</span>';
-
- // Name
- tplvars.NAME = this_comment.name;
- if ( this_comment.user_id > 1 )
- tplvars.NAME = '<a href="' + makeUrlNS('User', this_comment.name) + '" style="' + this_comment.rank_style + '">' + this_comment.name + '</a>';
-
- // Avatar
- if ( this_comment.user_has_avatar == '1' )
- {
- tplvars.AVATAR_URL = this_comment.avatar_path;
- tplvars.USERPAGE_LINK = makeUrlNS('User', this_comment.name);
- tplvars.AVATAR_ALT = $lang.get('usercp_avatar_image_alt', { username: this_comment.name });
- }
-
- // User level
- tplvars.USER_LEVEL = '';
- if ( this_comment.user_title )
- tplvars.USER_LEVEL += this_comment.user_title;
- if ( this_comment.rank_title && this_comment.user_title )
- tplvars.USER_LEVEL += '<br />';
- if ( this_comment.rank_title )
- tplvars.USER_LEVEL += $lang.get(this_comment.rank_title);
-
- // Send PM link
- tplvars.SEND_PM_LINK=(this_comment.user_id>1)?'<a class="abutton icon abutton_blue" style="background-image: url(' + cdnPath + '/images/icons/send_pm.png);" onclick="window.open(this.href); return false;" href="'+ makeUrlNS('Special', 'PrivateMessages/Compose/To/' + ( this_comment.name.replace(/ /g, '_') )) +'">' + $lang.get('comment_btn_send_privmsg') + '</a><br /><br />':'';
-
- // Add buddy link
- tplvars.ADD_BUDDY_LINK=(this_comment.user_id>1)?'<a class="abutton icon abutton_green" style="background-image: url(' + cdnPath + '/images/icons/add_buddy.png);" onclick="window.open(this.href); return false;" href="'+ makeUrlNS('Special', 'PrivateMessages/FriendList/Add/' + ( this_comment.name.replace(/ /g, '_') )) +'">' + $lang.get('comment_btn_add_buddy') + '</a><br />':'';
-
- // Edit link
- tplvars.EDIT_LINK='<a href="#edit_'+i+'" onclick="editComment(\''+i+'\', this); return false;" id="cmteditlink_'+i+'">' + $lang.get('comment_btn_edit') + '</a>';
-
- // Delete link
- tplvars.DELETE_LINK='<a href="#delete_'+i+'" onclick="deleteComment(\''+i+'\'); return false;">' + $lang.get('comment_btn_delete') + '</a>';
-
- // Moderation: (Un)approve link
- var appr = ( this_comment.approved == 1 ) ? $lang.get('comment_btn_mod_unapprove') : $lang.get('comment_btn_mod_approve');
- tplvars.MOD_APPROVE_LINK='<a href="#approve_'+i+'" id="comment_approve_'+i+'" onclick="approveComment(\''+i+'\'); return false;">'+appr+'</a>';
-
- // Moderation: Delete post link
- tplvars.MOD_DELETE_LINK='<a href="#mod_del_'+i+'" onclick="deleteComment(\''+i+'\'); return false;">' + $lang.get('comment_btn_mod_delete') + '</a>';
-
- // Moderation: IP address link
- if ( this_comment.have_ip )
- {
- tplvars.MOD_IP_LINK = '<span id="comment_ip_' + i + '"><a href="#mod_ip_' + i + '" onclick="viewCommentIP(' + this_comment.comment_id + ', ' + i + '); return false;">' + $lang.get('comment_btn_mod_ip_logged') + '</a></span>';
- }
- else
- {
- tplvars.MOD_IP_LINK = $lang.get('comment_btn_mod_ip_missing');
- }
-
- var tplbool = new Object();
-
- tplbool.signature = ( this_comment.signature == '' ) ? false : true;
- tplbool.can_edit = ( data.auth_edit_comments && ( ( this_comment.user_id == data.user_id && data.logged_in ) || data.auth_mod_comments ) );
- tplbool.auth_mod = data.auth_mod_comments;
- tplbool.is_friend = ( this_comment.is_buddy == 1 && this_comment.is_friend == 1 );
- tplbool.is_foe = ( this_comment.is_buddy == 1 && this_comment.is_friend == 0 );
- tplbool.user_has_avatar = ( this_comment.user_has_avatar == '1' );
-
- if ( tplbool.is_friend )
- tplvars.USER_LEVEL += '<br /><b>' + $lang.get('comment_on_friend_list') + '</b>';
- else if ( tplbool.is_foe )
- tplvars.USER_LEVEL += '<br /><b>' + $lang.get('comment_on_foe_list') + '</b>';
-
- parser.assign_vars(tplvars);
- parser.assign_bool(tplbool);
-
- var ret = '<div id="comment_holder_' + i + '">';
- ret += '<input type="hidden" value="'+this_comment.comment_id+'" />';
- ret += '<input type="hidden" id="comment_source_'+i+'" />';
- ret += parser.run();
- ret += '</div>';
- return ret;
+ var i = comment_render_track;
+ comment_render_track++;
+ var parser = new templateParser(comment_template);
+ var tplvars = new Object();
+
+ if ( this_comment.approved != '1' && !data.auth_mod_comments )
+ return '';
+
+ tplvars.ID = i;
+ tplvars.DATETIME = this_comment.time;
+ tplvars.SUBJECT = this_comment.subject;
+ tplvars.DATA = this_comment.comment_data;
+ tplvars.SIGNATURE = this_comment.signature;
+
+ if ( this_comment.approved == '0' )
+ tplvars.SUBJECT += ' <span style="color: #D84308">' + $lang.get('comment_msg_note_unapp') + '</span>';
+ else if ( this_comment.approved == '2' )
+ tplvars.SUBJECT += ' <span style="color: #D84308">' + $lang.get('comment_msg_note_spam') + '</span>';
+
+ // Name
+ tplvars.NAME = this_comment.name;
+ if ( this_comment.user_id > 1 )
+ tplvars.NAME = '<a href="' + makeUrlNS('User', this_comment.name) + '" style="' + this_comment.rank_style + '">' + this_comment.name + '</a>';
+
+ // Avatar
+ if ( this_comment.user_has_avatar == '1' )
+ {
+ tplvars.AVATAR_URL = this_comment.avatar_path;
+ tplvars.USERPAGE_LINK = makeUrlNS('User', this_comment.name);
+ tplvars.AVATAR_ALT = $lang.get('usercp_avatar_image_alt', { username: this_comment.name });
+ }
+
+ // User level
+ tplvars.USER_LEVEL = '';
+ if ( this_comment.user_title )
+ tplvars.USER_LEVEL += this_comment.user_title;
+ if ( this_comment.rank_title && this_comment.user_title )
+ tplvars.USER_LEVEL += '<br />';
+ if ( this_comment.rank_title )
+ tplvars.USER_LEVEL += $lang.get(this_comment.rank_title);
+
+ // Send PM link
+ tplvars.SEND_PM_LINK=(this_comment.user_id>1)?'<a class="abutton icon abutton_blue" style="background-image: url(' + cdnPath + '/images/icons/send_pm.png);" onclick="window.open(this.href); return false;" href="'+ makeUrlNS('Special', 'PrivateMessages/Compose/To/' + ( this_comment.name.replace(/ /g, '_') )) +'">' + $lang.get('comment_btn_send_privmsg') + '</a><br /><br />':'';
+
+ // Add buddy link
+ tplvars.ADD_BUDDY_LINK=(this_comment.user_id>1)?'<a class="abutton icon abutton_green" style="background-image: url(' + cdnPath + '/images/icons/add_buddy.png);" onclick="window.open(this.href); return false;" href="'+ makeUrlNS('Special', 'PrivateMessages/FriendList/Add/' + ( this_comment.name.replace(/ /g, '_') )) +'">' + $lang.get('comment_btn_add_buddy') + '</a><br />':'';
+
+ // Edit link
+ tplvars.EDIT_LINK='<a href="#edit_'+i+'" onclick="editComment(\''+i+'\', this); return false;" id="cmteditlink_'+i+'">' + $lang.get('comment_btn_edit') + '</a>';
+
+ // Delete link
+ tplvars.DELETE_LINK='<a href="#delete_'+i+'" onclick="deleteComment(\''+i+'\'); return false;">' + $lang.get('comment_btn_delete') + '</a>';
+
+ // Moderation: (Un)approve link
+ var appr = ( this_comment.approved == 1 ) ? $lang.get('comment_btn_mod_unapprove') : $lang.get('comment_btn_mod_approve');
+ tplvars.MOD_APPROVE_LINK='<a href="#approve_'+i+'" id="comment_approve_'+i+'" onclick="approveComment(\''+i+'\'); return false;">'+appr+'</a>';
+
+ // Moderation: Delete post link
+ tplvars.MOD_DELETE_LINK='<a href="#mod_del_'+i+'" onclick="deleteComment(\''+i+'\'); return false;">' + $lang.get('comment_btn_mod_delete') + '</a>';
+
+ // Moderation: IP address link
+ if ( this_comment.have_ip )
+ {
+ tplvars.MOD_IP_LINK = '<span id="comment_ip_' + i + '"><a href="#mod_ip_' + i + '" onclick="viewCommentIP(' + this_comment.comment_id + ', ' + i + '); return false;">' + $lang.get('comment_btn_mod_ip_logged') + '</a></span>';
+ }
+ else
+ {
+ tplvars.MOD_IP_LINK = $lang.get('comment_btn_mod_ip_missing');
+ }
+
+ var tplbool = new Object();
+
+ tplbool.signature = ( this_comment.signature == '' ) ? false : true;
+ tplbool.can_edit = ( data.auth_edit_comments && ( ( this_comment.user_id == data.user_id && data.logged_in ) || data.auth_mod_comments ) );
+ tplbool.auth_mod = data.auth_mod_comments;
+ tplbool.is_friend = ( this_comment.is_buddy == 1 && this_comment.is_friend == 1 );
+ tplbool.is_foe = ( this_comment.is_buddy == 1 && this_comment.is_friend == 0 );
+ tplbool.user_has_avatar = ( this_comment.user_has_avatar == '1' );
+
+ if ( tplbool.is_friend )
+ tplvars.USER_LEVEL += '<br /><b>' + $lang.get('comment_on_friend_list') + '</b>';
+ else if ( tplbool.is_foe )
+ tplvars.USER_LEVEL += '<br /><b>' + $lang.get('comment_on_foe_list') + '</b>';
+
+ parser.assign_vars(tplvars);
+ parser.assign_bool(tplbool);
+
+ var ret = '<div id="comment_holder_' + i + '">';
+ ret += '<input type="hidden" value="'+this_comment.comment_id+'" />';
+ ret += '<input type="hidden" id="comment_source_'+i+'" />';
+ ret += parser.run();
+ ret += '</div>';
+ return ret;
}
window.displayCommentForm = function()
{
- document.getElementById('leave_comment_button').style.display = 'none';
- document.getElementById('comment_form').style.display = 'block';
- if ( $dynano('commentform_message').object.allow_wysiwyg )
- $dynano('commentform_message').makeSwitchable();
+ document.getElementById('leave_comment_button').style.display = 'none';
+ document.getElementById('comment_form').style.display = 'block';
+ if ( $dynano('commentform_message').object.allow_wysiwyg )
+ $dynano('commentform_message').makeSwitchable();
}
window.hideCommentForm = function()
{
- document.getElementById('leave_comment_button').style.display = 'inline';
- document.getElementById('comment_form').style.display = 'none';
+ document.getElementById('leave_comment_button').style.display = 'inline';
+ document.getElementById('comment_form').style.display = 'none';
}
window.editComment = function(id, link)
{
- var ctr = document.getElementById('subject_'+id);
- var subj = ( ctr.firstChild ) ? trim(ctr.firstChild.nodeValue) : ''; // If there's a span in there that says 'unapproved', this eliminates it
- ctr.innerHTML = '';
- var ipt = document.createElement('input');
- ipt.id = 'subject_edit_'+id;
- ipt.value = subj;
- ctr.appendChild(ipt);
-
- var src = document.getElementById('comment_source_'+id).value;
- var cmt = document.getElementById('comment_'+id);
- cmt.innerHTML = '';
- var ta = document.createElement('textarea');
- ta.rows = '10';
- ta.cols = '40';
- ta.style.width = '98%';
- ta.value = src;
- ta.id = 'comment_edit_'+id;
- cmt.appendChild(ta);
- $dynano(ta).makeSwitchable();
-
- link.style.fontWeight = 'bold';
- link.innerHTML = $lang.get('comment_btn_save');
- link.onclick = function() { var id = this.id.substr(this.id.indexOf('_')+1); saveComment(id, this); return false; };
+ var ctr = document.getElementById('subject_'+id);
+ var subj = ( ctr.firstChild ) ? trim(ctr.firstChild.nodeValue) : ''; // If there's a span in there that says 'unapproved', this eliminates it
+ ctr.innerHTML = '';
+ var ipt = document.createElement('input');
+ ipt.id = 'subject_edit_'+id;
+ ipt.value = subj;
+ ctr.appendChild(ipt);
+
+ var src = document.getElementById('comment_source_'+id).value;
+ var cmt = document.getElementById('comment_'+id);
+ cmt.innerHTML = '';
+ var ta = document.createElement('textarea');
+ ta.rows = '10';
+ ta.cols = '40';
+ ta.style.width = '98%';
+ ta.value = src;
+ ta.id = 'comment_edit_'+id;
+ cmt.appendChild(ta);
+ $dynano(ta).makeSwitchable();
+
+ link.style.fontWeight = 'bold';
+ link.innerHTML = $lang.get('comment_btn_save');
+ link.onclick = function() { var id = this.id.substr(this.id.indexOf('_')+1); saveComment(id, this); return false; };
}
window.saveComment = function(id, link)
{
- var data = document.getElementById('comment_edit_'+id).value;
- var subj = document.getElementById('subject_edit_'+id).value;
- var div = document.getElementById('comment_holder_'+id);
- var real_id = div.getElementsByTagName('input')[0]['value'];
- var req = {
- 'mode' : 'edit',
- 'id' : real_id,
- 'local_id' : id,
- 'data' : data,
- 'subj' : subj
- };
- link.style.fontWeight = 'normal';
- link.innerHTML = $lang.get('comment_btn_edit');
- link.onclick = function() { var id = this.id.substr(this.id.indexOf('_')+1); editComment(id, this); return false; };
- ajaxComments(req);
+ var data = document.getElementById('comment_edit_'+id).value;
+ var subj = document.getElementById('subject_edit_'+id).value;
+ var div = document.getElementById('comment_holder_'+id);
+ var real_id = div.getElementsByTagName('input')[0]['value'];
+ var req = {
+ 'mode' : 'edit',
+ 'id' : real_id,
+ 'local_id' : id,
+ 'data' : data,
+ 'subj' : subj
+ };
+ link.style.fontWeight = 'normal';
+ link.innerHTML = $lang.get('comment_btn_edit');
+ link.onclick = function() { var id = this.id.substr(this.id.indexOf('_')+1); editComment(id, this); return false; };
+ ajaxComments(req);
}
window.deleteComment = function(id)
{
- if ( !shift )
- {
- var c = confirm($lang.get('comment_msg_delete_confirm'));
- if(!c)
- return false;
- }
- var div = document.getElementById('comment_holder_'+id);
- var real_id = div.getElementsByTagName('input')[0]['value'];
- var req = {
- 'mode' : 'delete',
- 'id' : real_id,
- 'local_id' : id
- };
- ajaxComments(req);
+ if ( !shift )
+ {
+ var c = confirm($lang.get('comment_msg_delete_confirm'));
+ if(!c)
+ return false;
+ }
+ var div = document.getElementById('comment_holder_'+id);
+ var real_id = div.getElementsByTagName('input')[0]['value'];
+ var req = {
+ 'mode' : 'delete',
+ 'id' : real_id,
+ 'local_id' : id
+ };
+ ajaxComments(req);
}
window.submitComment = function()
{
- var name = document.getElementById('commentform_name').value;
- var subj = document.getElementById('commentform_subject').value;
- var text = $dynano('commentform_message').getContent();
- if ( document.getElementById('commentform_captcha') )
- {
- var captcha_code = document.getElementById('commentform_captcha').value;
- var captcha_id = document.getElementById('commentform_captcha_id').value;
- }
- else
- {
- var captcha_code = '';
- var captcha_id = '';
- }
- if ( subj == '' )
- {
- load_component(['messagebox', 'fadefilter']);
- new MessageBox(MB_OK|MB_ICONSTOP, 'Input validation failed', 'Please enter a subject for your comment.');
- return false;
- }
- if ( text == '' )
- {
- load_component(['messagebox', 'fadefilter']);
- new MessageBox(MB_OK|MB_ICONSTOP, 'Input validation failed', 'Please enter some text for the body of your comment .');
- return false;
- }
- var req = {
- 'mode' : 'submit',
- 'name' : name,
- 'subj' : subj,
- 'text' : text,
- 'captcha_code' : captcha_code,
- 'captcha_id' : captcha_id
- };
- ajaxComments(req);
+ var name = document.getElementById('commentform_name').value;
+ var subj = document.getElementById('commentform_subject').value;
+ var text = $dynano('commentform_message').getContent();
+ if ( document.getElementById('commentform_captcha') )
+ {
+ var captcha_code = document.getElementById('commentform_captcha').value;
+ var captcha_id = document.getElementById('commentform_captcha_id').value;
+ }
+ else
+ {
+ var captcha_code = '';
+ var captcha_id = '';
+ }
+ if ( subj == '' )
+ {
+ load_component(['messagebox', 'fadefilter']);
+ new MessageBox(MB_OK|MB_ICONSTOP, 'Input validation failed', 'Please enter a subject for your comment.');
+ return false;
+ }
+ if ( text == '' )
+ {
+ load_component(['messagebox', 'fadefilter']);
+ new MessageBox(MB_OK|MB_ICONSTOP, 'Input validation failed', 'Please enter some text for the body of your comment .');
+ return false;
+ }
+ var req = {
+ 'mode' : 'submit',
+ 'name' : name,
+ 'subj' : subj,
+ 'text' : text,
+ 'captcha_code' : captcha_code,
+ 'captcha_id' : captcha_id
+ };
+ ajaxComments(req);
}
window.redrawComment = function(data)
{
- if ( data.subj )
- {
- document.getElementById('subject_' + data.id).innerHTML = data.subj;
- }
- if ( data.approved && data.approved != '1' )
- {
- document.getElementById('subject_' + data.id).innerHTML += ' <span style="color: #D84308">' + ( data.approved == '2' ? $lang.get('comment_msg_note_spam') : $lang.get('comment_msg_note_unapp') ) + '</span>';
- }
- if ( data.approved && ( typeof(data.approve_updated) == 'string' && data.approve_updated == 'yes' ) )
- {
- var appr = ( data.approved == '1' ) ? $lang.get('comment_btn_mod_unapprove') : $lang.get('comment_btn_mod_approve');
- document.getElementById('comment_approve_'+data.id).innerHTML = appr;
-
- if ( data.approved == '1' )
- comment_decrement_unapproval();
- else
- comment_increment_unapproval();
- }
- if ( data.text )
- {
- document.getElementById('comment_' + data.id).innerHTML = data.text;
- }
- if ( data.src )
- {
- document.getElementById('comment_source_' + data.id).value = data.src;
- }
- if ( data.ip_addr )
- {
- var span = $dynano('comment_ip_' + data.local_id).object;
- if ( !span )
- return false;
- span.innerHTML = $lang.get('comment_msg_ip_address') + ' <a href="#rdns" onclick="ajaxReverseDNS(this); return false;">' + data.ip_addr + '</a>';
- }
+ if ( data.subj )
+ {
+ document.getElementById('subject_' + data.id).innerHTML = data.subj;
+ }
+ if ( data.approved && data.approved != '1' )
+ {
+ document.getElementById('subject_' + data.id).innerHTML += ' <span style="color: #D84308">' + ( data.approved == '2' ? $lang.get('comment_msg_note_spam') : $lang.get('comment_msg_note_unapp') ) + '</span>';
+ }
+ if ( data.approved && ( typeof(data.approve_updated) == 'string' && data.approve_updated == 'yes' ) )
+ {
+ var appr = ( data.approved == '1' ) ? $lang.get('comment_btn_mod_unapprove') : $lang.get('comment_btn_mod_approve');
+ document.getElementById('comment_approve_'+data.id).innerHTML = appr;
+
+ if ( data.approved == '1' )
+ comment_decrement_unapproval();
+ else
+ comment_increment_unapproval();
+ }
+ if ( data.text )
+ {
+ document.getElementById('comment_' + data.id).innerHTML = data.text;
+ }
+ if ( data.src )
+ {
+ document.getElementById('comment_source_' + data.id).value = data.src;
+ }
+ if ( data.ip_addr )
+ {
+ var span = $dynano('comment_ip_' + data.local_id).object;
+ if ( !span )
+ return false;
+ span.innerHTML = $lang.get('comment_msg_ip_address') + ' <a href="#rdns" onclick="ajaxReverseDNS(this); return false;">' + data.ip_addr + '</a>';
+ }
}
window.approveComment = function(id)
{
- var div = document.getElementById('comment_holder_'+id);
- var real_id = div.getElementsByTagName('input')[0]['value'];
- var req = {
- 'mode' : 'approve',
- 'id' : real_id,
- 'local_id' : id
- };
- ajaxComments(req);
+ var div = document.getElementById('comment_holder_'+id);
+ var real_id = div.getElementsByTagName('input')[0]['value'];
+ var req = {
+ 'mode' : 'approve',
+ 'id' : real_id,
+ 'local_id' : id
+ };
+ ajaxComments(req);
}
// Does the actual DOM object removal
window.annihiliateComment = function(id) // Did I spell that right?
{
- var approved = true;
- if(document.getElementById('comment_approve_'+id))
- {
- var appr = document.getElementById('comment_approve_'+id).firstChild.nodeValue;
- if ( appr == $lang.get('comment_btn_mod_approve') )
- {
- approved = false;
- }
- }
-
- var div = document.getElementById('comment_holder_'+id);
- div.parentNode.removeChild(div);
-
- // update approval status
- if ( document.getElementById('comment_count_unapp_inner') && !approved )
- {
- comment_decrement_unapproval();
- }
+ var approved = true;
+ if(document.getElementById('comment_approve_'+id))
+ {
+ var appr = document.getElementById('comment_approve_'+id).firstChild.nodeValue;
+ if ( appr == $lang.get('comment_btn_mod_approve') )
+ {
+ approved = false;
+ }
+ }
+
+ var div = document.getElementById('comment_holder_'+id);
+ div.parentNode.removeChild(div);
+
+ // update approval status
+ if ( document.getElementById('comment_count_unapp_inner') && !approved )
+ {
+ comment_decrement_unapproval();
+ }
}
window.materializeComment = function(data)
{
- // Intelligently get an ID
+ // Intelligently get an ID
- var i = 0;
- var brother;
- while ( true )
- {
- var x = document.getElementById('comment_holder_'+i);
- if(!x)
- break;
- brother = x;
- i++;
- }
-
- var parser = new templateParser(comment_template);
- var tplvars = new Object();
-
- if ( data.approved != '1' && !data.auth_mod_comments )
- return false;
-
- tplvars.ID = i;
- tplvars.DATETIME = data.time;
- tplvars.SUBJECT = data.subject;
- tplvars.DATA = data.comment_data;
- tplvars.SIGNATURE = data.signature;
-
- tplvars.NAME = data.name;
- if ( data.user_id > 1 )
- tplvars.NAME = '<a href="' + makeUrlNS('User', data.name) + '">' + data.name + '</a>';
-
- if ( data.approved != '1' )
- tplvars.SUBJECT += ' <span style="color: #D84308">' + ( data.approved == '2' ? $lang.get('comment_msg_note_spam') : $lang.get('comment_msg_note_unapp') ) + '</span>';
-
- // Name
- tplvars.NAME = data.name;
- if ( data.user_id > 1 )
- tplvars.NAME = '<a href="' + makeUrlNS('User', data.name) + '" style="' + data.rank_data.rank_style + '">' + data.name + '</a>';
-
- // Avatar
- if ( data.user_has_avatar == '1' )
- {
- tplvars.AVATAR_URL = data.avatar_path;
- tplvars.USERPAGE_LINK = makeUrlNS('User', data.name);
- tplvars.AVATAR_ALT = $lang.get('usercp_avatar_image_alt', { username: data.name });
- }
-
- // User level
- tplvars.USER_LEVEL = '';
- if ( data.rank_data.user_title )
- tplvars.USER_LEVEL += data.rank_data.user_title;
- if ( data.rank_data.rank_title && data.rank_data.user_title )
- tplvars.USER_LEVEL += '<br />';
- if ( data.rank_data.rank_title )
- tplvars.USER_LEVEL += $lang.get(data.rank_data.rank_title);
-
- // Send PM link
- tplvars.SEND_PM_LINK=(data.user_id>1)?'<a class="abutton icon abutton_blue" style="background-image: url(' + cdnPath + '/images/icons/send_pm.png);" onclick="window.open(this.href); return false;" href="'+ makeUrlNS('Special', 'PrivateMessages/Compose/To/' + ( data.name.replace(/ /g, '_') )) +'">' + $lang.get('comment_btn_send_privmsg') + '</a><br /><br />':'';
-
- // Add buddy link
- tplvars.ADD_BUDDY_LINK=(data.user_id>1)?'<a class="abutton icon abutton_green" style="background-image: url(' + cdnPath + '/images/icons/add_buddy.png);" onclick="window.open(this.href); return false;" href="'+ makeUrlNS('Special', 'PrivateMessages/FriendList/Add/' + ( data.name.replace(/ /g, '_') )) +'">' + $lang.get('comment_btn_add_buddy') + '</a><br />':'';
-
- // Edit link
- tplvars.EDIT_LINK='<a href="#edit_'+i+'" onclick="editComment(\''+i+'\', this); return false;" id="cmteditlink_'+i+'">' + $lang.get('comment_btn_edit') + '</a>';
-
- // Delete link
- tplvars.DELETE_LINK='<a href="#delete_'+i+'" onclick="deleteComment(\''+i+'\'); return false;">' + $lang.get('comment_btn_delete') + '</a>';
-
- // Moderation: (Un)approve link
- var appr = ( data.approved == 1 ) ? $lang.get('comment_btn_mod_unapprove') : $lang.get('comment_btn_mod_approve');
- tplvars.MOD_APPROVE_LINK='<a href="#approve_'+i+'" id="comment_approve_'+i+'" onclick="approveComment(\''+i+'\'); return false;">'+appr+'</a>';
-
- // Moderation: Delete post link
- tplvars.MOD_DELETE_LINK='<a href="#mod_del_'+i+'" onclick="deleteComment(\''+i+'\'); return false;">' + $lang.get('comment_btn_mod_delete') + '</a>';
-
- // Moderation: IP address link
- tplvars.MOD_IP_LINK = '<span id="comment_ip_' + i + '"><a href="#mod_ip_' + i + '" onclick="viewCommentIP(' + data.comment_id + ', ' + i + '); return false;">' + $lang.get('comment_btn_mod_ip_logged') + '</a></span>';
-
- var tplbool = new Object();
-
- tplbool.signature = ( data.signature == '' ) ? false : true;
- tplbool.can_edit = ( data.auth_edit_comments && ( ( data.user_id == data.user_id && data.logged_in ) || data.auth_mod_comments ) );
- tplbool.auth_mod = data.auth_mod_comments;
- tplbool.user_has_avatar = ( data.user_has_avatar == '1' );
-
- parser.assign_vars(tplvars);
- parser.assign_bool(tplbool);
-
- var div = document.createElement('div');
- div.id = 'comment_holder_'+i;
-
- div.innerHTML = '<input type="hidden" value="'+data.comment_id+'" /><input type="hidden" id="comment_source_'+i+'" />' + parser.run();
-
- if ( brother )
- {
- brother.parentNode.insertBefore(div, brother.nextSibling);
- }
- else
- {
- // No comments in ajaxEditContainer, insert it after the header
- var aec = document.getElementById("ajaxEditContainer");
- aec.insertBefore(div, aec.firstChild.nextSibling.nextSibling);
- }
-
- document.getElementById('comment_source_'+i).value = data.comment_source;
-
- var cnt = document.getElementById('comment_count_inner').innerHTML;
- cnt = parseInt(cnt);
- if ( isNaN(cnt) )
- cnt = 0;
-
- var subst = {
- num_comments: cnt,
- page_type: ENANO_PAGE_TYPE
- }
-
- var count_msg = ( cnt == 0 ) ? $lang.get('comment_msg_count_zero', subst) : ( ( cnt == 1 ) ? $lang.get('comment_msg_count_one', subst) : $lang.get('comment_msg_count_plural', subst) );
-
- document.getElementById('comment_status').firstChild.innerHTML = count_msg;
-
- if(document.getElementById('comment_approve_'+i))
- {
- var is_unappr = document.getElementById('comment_approve_'+i).firstChild.nodeValue;
- is_unappr = ( is_unappr == $lang.get('comment_btn_mod_approve') );
- if ( is_unappr )
- {
- comment_increment_unapproval();
- }
- }
-
+ var i = 0;
+ var brother;
+ while ( true )
+ {
+ var x = document.getElementById('comment_holder_'+i);
+ if(!x)
+ break;
+ brother = x;
+ i++;
+ }
+
+ var parser = new templateParser(comment_template);
+ var tplvars = new Object();
+
+ if ( data.approved != '1' && !data.auth_mod_comments )
+ return false;
+
+ tplvars.ID = i;
+ tplvars.DATETIME = data.time;
+ tplvars.SUBJECT = data.subject;
+ tplvars.DATA = data.comment_data;
+ tplvars.SIGNATURE = data.signature;
+
+ tplvars.NAME = data.name;
+ if ( data.user_id > 1 )
+ tplvars.NAME = '<a href="' + makeUrlNS('User', data.name) + '">' + data.name + '</a>';
+
+ if ( data.approved != '1' )
+ tplvars.SUBJECT += ' <span style="color: #D84308">' + ( data.approved == '2' ? $lang.get('comment_msg_note_spam') : $lang.get('comment_msg_note_unapp') ) + '</span>';
+
+ // Name
+ tplvars.NAME = data.name;
+ if ( data.user_id > 1 )
+ tplvars.NAME = '<a href="' + makeUrlNS('User', data.name) + '" style="' + data.rank_data.rank_style + '">' + data.name + '</a>';
+
+ // Avatar
+ if ( data.user_has_avatar == '1' )
+ {
+ tplvars.AVATAR_URL = data.avatar_path;
+ tplvars.USERPAGE_LINK = makeUrlNS('User', data.name);
+ tplvars.AVATAR_ALT = $lang.get('usercp_avatar_image_alt', { username: data.name });
+ }
+
+ // User level
+ tplvars.USER_LEVEL = '';
+ if ( data.rank_data.user_title )
+ tplvars.USER_LEVEL += data.rank_data.user_title;
+ if ( data.rank_data.rank_title && data.rank_data.user_title )
+ tplvars.USER_LEVEL += '<br />';
+ if ( data.rank_data.rank_title )
+ tplvars.USER_LEVEL += $lang.get(data.rank_data.rank_title);
+
+ // Send PM link
+ tplvars.SEND_PM_LINK=(data.user_id>1)?'<a class="abutton icon abutton_blue" style="background-image: url(' + cdnPath + '/images/icons/send_pm.png);" onclick="window.open(this.href); return false;" href="'+ makeUrlNS('Special', 'PrivateMessages/Compose/To/' + ( data.name.replace(/ /g, '_') )) +'">' + $lang.get('comment_btn_send_privmsg') + '</a><br /><br />':'';
+
+ // Add buddy link
+ tplvars.ADD_BUDDY_LINK=(data.user_id>1)?'<a class="abutton icon abutton_green" style="background-image: url(' + cdnPath + '/images/icons/add_buddy.png);" onclick="window.open(this.href); return false;" href="'+ makeUrlNS('Special', 'PrivateMessages/FriendList/Add/' + ( data.name.replace(/ /g, '_') )) +'">' + $lang.get('comment_btn_add_buddy') + '</a><br />':'';
+
+ // Edit link
+ tplvars.EDIT_LINK='<a href="#edit_'+i+'" onclick="editComment(\''+i+'\', this); return false;" id="cmteditlink_'+i+'">' + $lang.get('comment_btn_edit') + '</a>';
+
+ // Delete link
+ tplvars.DELETE_LINK='<a href="#delete_'+i+'" onclick="deleteComment(\''+i+'\'); return false;">' + $lang.get('comment_btn_delete') + '</a>';
+
+ // Moderation: (Un)approve link
+ var appr = ( data.approved == 1 ) ? $lang.get('comment_btn_mod_unapprove') : $lang.get('comment_btn_mod_approve');
+ tplvars.MOD_APPROVE_LINK='<a href="#approve_'+i+'" id="comment_approve_'+i+'" onclick="approveComment(\''+i+'\'); return false;">'+appr+'</a>';
+
+ // Moderation: Delete post link
+ tplvars.MOD_DELETE_LINK='<a href="#mod_del_'+i+'" onclick="deleteComment(\''+i+'\'); return false;">' + $lang.get('comment_btn_mod_delete') + '</a>';
+
+ // Moderation: IP address link
+ tplvars.MOD_IP_LINK = '<span id="comment_ip_' + i + '"><a href="#mod_ip_' + i + '" onclick="viewCommentIP(' + data.comment_id + ', ' + i + '); return false;">' + $lang.get('comment_btn_mod_ip_logged') + '</a></span>';
+
+ var tplbool = new Object();
+
+ tplbool.signature = ( data.signature == '' ) ? false : true;
+ tplbool.can_edit = ( data.auth_edit_comments && ( ( data.user_id == data.user_id && data.logged_in ) || data.auth_mod_comments ) );
+ tplbool.auth_mod = data.auth_mod_comments;
+ tplbool.user_has_avatar = ( data.user_has_avatar == '1' );
+
+ parser.assign_vars(tplvars);
+ parser.assign_bool(tplbool);
+
+ var div = document.createElement('div');
+ div.id = 'comment_holder_'+i;
+
+ div.innerHTML = '<input type="hidden" value="'+data.comment_id+'" /><input type="hidden" id="comment_source_'+i+'" />' + parser.run();
+
+ if ( brother )
+ {
+ brother.parentNode.insertBefore(div, brother.nextSibling);
+ }
+ else
+ {
+ // No comments in ajaxEditContainer, insert it after the header
+ var aec = document.getElementById("ajaxEditContainer");
+ aec.insertBefore(div, aec.firstChild.nextSibling.nextSibling);
+ }
+
+ document.getElementById('comment_source_'+i).value = data.comment_source;
+
+ var cnt = document.getElementById('comment_count_inner').innerHTML;
+ cnt = parseInt(cnt);
+ if ( isNaN(cnt) )
+ cnt = 0;
+
+ var subst = {
+ num_comments: cnt,
+ page_type: ENANO_PAGE_TYPE
+ }
+
+ var count_msg = ( cnt == 0 ) ? $lang.get('comment_msg_count_zero', subst) : ( ( cnt == 1 ) ? $lang.get('comment_msg_count_one', subst) : $lang.get('comment_msg_count_plural', subst) );
+
+ document.getElementById('comment_status').firstChild.innerHTML = count_msg;
+
+ if(document.getElementById('comment_approve_'+i))
+ {
+ var is_unappr = document.getElementById('comment_approve_'+i).firstChild.nodeValue;
+ is_unappr = ( is_unappr == $lang.get('comment_btn_mod_approve') );
+ if ( is_unappr )
+ {
+ comment_increment_unapproval();
+ }
+ }
+
}
window.comment_decrement_unapproval = function()
{
- if ( document.getElementById('comment_count_unapp_inner') )
- {
- var num_unapp = parseInt(document.getElementById('comment_count_unapp_inner').innerHTML);
- if ( !isNaN(num_unapp) )
- {
- num_unapp = num_unapp - 1;
- if ( num_unapp == 0 )
- {
- var p = document.getElementById('comment_status');
- p.removeChild(p.childNodes[2]);
- p.removeChild(p.childNodes[1]);
- }
- else
- {
- var count_msg = $lang.get('comment_msg_count_unapp_mod', { num_unapp: num_unapp });
- document.getElementById('comment_count_unapp_inner').parentNode.innerHTML = count_msg;
- }
- }
- }
+ if ( document.getElementById('comment_count_unapp_inner') )
+ {
+ var num_unapp = parseInt(document.getElementById('comment_count_unapp_inner').innerHTML);
+ if ( !isNaN(num_unapp) )
+ {
+ num_unapp = num_unapp - 1;
+ if ( num_unapp == 0 )
+ {
+ var p = document.getElementById('comment_status');
+ p.removeChild(p.childNodes[2]);
+ p.removeChild(p.childNodes[1]);
+ }
+ else
+ {
+ var count_msg = $lang.get('comment_msg_count_unapp_mod', { num_unapp: num_unapp });
+ document.getElementById('comment_count_unapp_inner').parentNode.innerHTML = count_msg;
+ }
+ }
+ }
}
window.comment_increment_unapproval = function()
{
- if ( document.getElementById('comment_count_unapp_inner') )
- {
- var num_unapp = parseInt(document.getElementById('comment_count_unapp_inner').innerHTML);
- if ( isNaN(num_unapp) )
- num_unapp = 0;
- num_unapp = num_unapp + 1;
- var count_msg = $lang.get('comment_msg_count_unapp_mod', { num_unapp: num_unapp });
- document.getElementById('comment_count_unapp_inner').parentNode.innerHTML = count_msg;
- }
- else
- {
- var count_msg = $lang.get('comment_msg_count_unapp_mod', { num_unapp: 1 });
- var status = document.getElementById('comment_status');
- if ( !status.childNodes[1] )
- status.appendChild(document.createTextNode(' '));
- var span = document.createElement('span');
- span.id = 'comment_status_unapp';
- span.style.color = '#D84308';
- span.innerHTML = count_msg;
- status.appendChild(span);
- }
+ if ( document.getElementById('comment_count_unapp_inner') )
+ {
+ var num_unapp = parseInt(document.getElementById('comment_count_unapp_inner').innerHTML);
+ if ( isNaN(num_unapp) )
+ num_unapp = 0;
+ num_unapp = num_unapp + 1;
+ var count_msg = $lang.get('comment_msg_count_unapp_mod', { num_unapp: num_unapp });
+ document.getElementById('comment_count_unapp_inner').parentNode.innerHTML = count_msg;
+ }
+ else
+ {
+ var count_msg = $lang.get('comment_msg_count_unapp_mod', { num_unapp: 1 });
+ var status = document.getElementById('comment_status');
+ if ( !status.childNodes[1] )
+ status.appendChild(document.createTextNode(' '));
+ var span = document.createElement('span');
+ span.id = 'comment_status_unapp';
+ span.style.color = '#D84308';
+ span.innerHTML = count_msg;
+ status.appendChild(span);
+ }
}
window._comment_page_flip = function(paginator, page_number)
{
- // get ID
- var random_id = paginator.random_id;
- // update paginate control
- paginator.set_page(page_number);
- $('.' + random_id + '_control').html(paginator._build_control(page_number));
- paginator.offset = page_number;
- // set to loading state
- $('#' + random_id + '_0')
- .css('height', 500)
- .html('')
- .fadeTo("fast", 0.7)
- .css('background-position', 'center 51px')
- .css('background-repeat', 'no-repeat')
- .css('background-color', 'white')
- .css('background-image', 'url(' + cdnPath + '/images/loading-big.gif' + ')')
- .animate({ height: 150 }, 500, function()
- {
- // load the new comments
- ajaxComments({
- mode: 'fetch',
- pagenum: page_number,
- passback: {
- paginator_id: random_id
- }
- });
- });
+ // get ID
+ var random_id = paginator.random_id;
+ // update paginate control
+ paginator.set_page(page_number);
+ $('.' + random_id + '_control').html(paginator._build_control(page_number));
+ paginator.offset = page_number;
+ // set to loading state
+ $('#' + random_id + '_0')
+ .css('height', 500)
+ .html('')
+ .fadeTo("fast", 0.7)
+ .css('background-position', 'center 51px')
+ .css('background-repeat', 'no-repeat')
+ .css('background-color', 'white')
+ .css('background-image', 'url(' + cdnPath + '/images/loading-big.gif' + ')')
+ .animate({ height: 150 }, 500, function()
+ {
+ // load the new comments
+ ajaxComments({
+ mode: 'fetch',
+ pagenum: page_number,
+ passback: {
+ paginator_id: random_id
+ }
+ });
+ });
}
window.viewCommentIP = function(id, local_id)
{
- // set "loading" indicator on IP button
- var span = $dynano('comment_ip_' + local_id).object;
- if ( !span )
- return false;
- span.innerHTML = '<img alt="..." src="' + ajax_load_icon + '" />';
-
- var parms = {
- mode: 'view_ip',
- id: id,
- local_id: local_id
- }
- ajaxComments(parms);
+ // set "loading" indicator on IP button
+ var span = $dynano('comment_ip_' + local_id).object;
+ if ( !span )
+ return false;
+ span.innerHTML = '<img alt="..." src="' + ajax_load_icon + '" />';
+
+ var parms = {
+ mode: 'view_ip',
+ id: id,
+ local_id: local_id
+ }
+ ajaxComments(parms);
}