X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/11be8dc178e77d0b46189bbd8e33a216a9b90942..refs/tags/wordpress-2.8:/wp-admin/js/edit-comments.js diff --git a/wp-admin/js/edit-comments.js b/wp-admin/js/edit-comments.js index 349a57d7..91288b94 100644 --- a/wp-admin/js/edit-comments.js +++ b/wp-admin/js/edit-comments.js @@ -1,320 +1 @@ -var theList; var theExtraList; -(function($) { - -setCommentsList = function() { - var dimAfter = function( r, settings ) { - var c = $('#' + settings.element); - - if ( c.is('.unapproved') ) - c.find('div.comment_status').html('0') - else - c.find('div.comment_status').html('1') - - $('span.pending-count').each( function() { - var a = $(this); - var n = a.html().replace(/[ ,.]+/g, ''); - n = parseInt(n,10); - if ( isNaN(n) ) return; - n = n + ( $('#' + settings.element).is('.' + settings.dimClass) ? 1 : -1 ); - if ( n < 0 ) { n = 0; } - $('#awaiting-mod')[ 0 == n ? 'addClass' : 'removeClass' ]('count-0'); - n = n.toString(); - if ( n.length > 3 ) - n = n.substr(0, n.length-3)+' '+n.substr(-3); - a.html(n); - }); - }; - - var delAfter = function( r, settings ) { - $('span.pending-count').each( function() { - var a = $(this); - var n = a.html().replace(/[ ,.]+/g, ''); - n = parseInt(n,10); - if ( isNaN(n) ) return; - if ( $('#' + settings.element).is('.unapproved') ) { // we deleted a formerly unapproved comment - n = n - 1; - } else if ( $(settings.target).parents( 'span.unapprove' ).size() ) { // we "deleted" an approved comment from the approved list by clicking "Unapprove" - n = n + 1; - } - if ( n < 0 ) { n = 0; } - $('#awaiting-mod')[ 0 == n ? 'addClass' : 'removeClass' ]('count-0'); - n = n.toString(); - if ( n.length > 3 ) - n = n.substr(0, n.length-3)+' '+n.substr(-3); - a.html(n); - }); - - $('span.spam-count' ).each( function() { - var a = $(this); - var n = a.html().replace(/[ ,.]+/g, ''); - n = parseInt(n,10); - if ( isNaN(n) ) return; - if ( $(settings.target).parents( 'span.spam' ).size() ) { // we marked a comment as spam - n = n + 1; - } else if ( $('#' + settings.element).is('.spam') ) { // we approved or deleted a comment marked as spam - n = n - 1; - } - if ( n < 0 ) { n = 0; } - n = n.toString(); - if ( n.length > 3 ) - n = n.substr(0, n.length-3)+' '+n.substr(-3); - a.html(n); - }); - - if ( theExtraList.size() == 0 || theExtraList.children().size() == 0 ) { - return; - } - - theList.get(0).wpList.add( theExtraList.children(':eq(0)').remove().clone() ); - $('#get-extra-comments').submit(); - }; - - theExtraList = $('#the-extra-comment-list').wpList( { alt: '', delColor: 'none', addColor: 'none' } ); - theList = $('#the-comment-list').wpList( { alt: '', dimAfter: dimAfter, delAfter: delAfter, addColor: 'none' } ); - -}; - -$(document).ready(function(){ - setCommentsList(); -}); - -commentReply = { - - init : function() { - var row = $('#replyrow'); - - $('a.cancel', row).click(function() { return commentReply.revert(); }); - $('a.save', row).click(function() { return commentReply.send(this); }); - - // add events - $('#the-comment-list .column-comment > p').dblclick(function(){ - commentReply.toggle($(this).parent()); - }); - - $('#doaction, #doaction2, #post-query-submit').click(function(e){ - if ( $('#the-comment-list #replyrow').length > 0 ) - t.close(); - }); - - }, - - addEvents : function(r) { - r.each(function() { - $(this).find('.column-comment > p').dblclick(function(){ - commentReply.toggle($(this).parent()); - }); - }); - }, - - toggle : function(el) { - if ( $(el).css('display') != 'none' ) - $(el).find('a.vim-q').click(); - }, - - revert : function() { - - if ( $('#the-comment-list #replyrow').length < 1 ) - return false; - - $('#replyrow').fadeOut('fast', function(){ - commentReply.close(); - }); - - return false; - }, - - close : function() { - $(this.o).fadeIn('fast').css('backgroundColor', ''); - $('#com-reply').append( $('#replyrow') ); - $('#replycontent').val(''); - $('#edithead input').val(''); - $('#replysubmit .error').html('').hide(); - $('#replysubmit .waiting').hide(); - if ( $.browser.msie ) - $('#replycontainer, #replycontent').css('height', '120px'); - else - $('#replycontainer').resizable('destroy').css('height', '120px'); - }, - - open : function(id, p, a) { - var t = this; - t.close(); - t.o = '#comment-'+id; - - $('#replyrow td').attr('colspan', $('.widefat thead th:visible').length); - var editRow = $('#replyrow'), rowData = $('#inline-'+id); - var act = t.act = (a == 'edit') ? 'edit-comment' : 'replyto-comment'; - - $('#action', editRow).val(act); - $('#comment_post_ID', editRow).val(p); - $('#comment_ID', editRow).val(id); - - if ( a == 'edit' ) { - $('#author', editRow).val( $('div.author', rowData).text() ); - $('#author-email', editRow).val( $('div.author-email', rowData).text() ); - $('#author-url', editRow).val( $('div.author-url', rowData).text() ); - $('#status', editRow).val( $('div.comment_status', rowData).text() ); - $('#replycontent', editRow).val( $('textarea.comment', rowData).val() ); - $('#edithead, #savebtn', editRow).show(); - $('#replyhead, #replybtn', editRow).hide(); - - var h = $(t.o).height(); - if ( h > 220 ) - if ( $.browser.msie ) - $('#replycontainer, #replycontent', editRow).height(h-105); - else - $('#replycontainer', editRow).height(h-105); - - $(t.o).after(editRow.hide()).fadeOut('fast', function(){ - $('#replyrow').fadeIn('fast'); - }); - } else { - $('#edithead, #savebtn', editRow).hide(); - $('#replyhead, #replybtn', editRow).show(); - $(t.o).after(editRow); - $('#replyrow').hide().fadeIn('fast'); - } - - if ( ! $.browser.msie ) - $('#replycontainer').resizable({ - handles : 's', - axis : 'y', - minHeight : 80, - stop : function() { - $('#replycontainer').width('auto'); - } - }); - - setTimeout(function() { - var rtop = $('#replyrow').offset().top; - var rbottom = rtop + $('#replyrow').height(); - var scrollTop = window.pageYOffset || document.documentElement.scrollTop; - var vp = document.documentElement.clientHeight || self.innerHeight || 0; - var scrollBottom = scrollTop + vp; - - if ( scrollBottom - 20 < rbottom ) - window.scroll(0, rbottom - vp + 35); - else if ( rtop - 20 < scrollTop ) - window.scroll(0, rtop - 35); - - $('#replycontent').focus().keyup(function(e){ - if (e.which == 27) commentReply.revert(); // close on Escape - }); - }, 600); - - return false; - }, - - send : function() { - var post = {}; - - $('#replysubmit .waiting').show(); - - $('#replyrow input').each(function() { - post[ $(this).attr('name') ] = $(this).val(); - }); - - post.content = $('#replycontent').val(); - post.id = post.comment_post_ID; - - $.ajax({ - type : 'POST', - url : wpListL10n.url, - data : post, - success : function(x) { commentReply.show(x); }, - error : function(r) { commentReply.error(r); } - }); - - return false; - }, - - show : function(xml) { - - if ( typeof(xml) == 'string' ) { - this.error({'responseText': xml}); - return false; - } - - var r = wpAjax.parseAjaxResponse(xml); - if ( r.errors ) { - this.error({'responseText': wpAjax.broken}); - return false; - } - - if ( 'edit-comment' == this.act ) - $(this.o).remove(); - - r = r.responses[0]; - var c = r.data; - - $(c).hide() - $('#replyrow').after(c); - this.o = id = '#comment-'+r.id; - $(id+' .hide-if-no-js').removeClass('hide-if-no-js'); - this.revert(); - this.addEvents($(id)); - var bg = $(id).hasClass('unapproved') ? '#ffffe0' : '#fff'; - - $(id) - .animate( { 'backgroundColor':'#CCEEBB' }, 600 ) - .animate( { 'backgroundColor': bg }, 600 ); - - $.fn.wpList.process($(id)) - }, - - error : function(r) { - var er = r.statusText; - - $('#replysubmit .waiting').hide(); - - if ( r.responseText ) - er = r.responseText.replace( /<.[^<>]*?>/g, '' ); - - if ( er ) - $('#replysubmit .error').html(er).show(); - - } -}; -toggleWithKeyboard = false; -$(document).ready(function(){ - columns.init('edit-comments'); - commentReply.init(); - - if ( typeof QTags != 'undefined' ) - ed_reply = new QTags('ed_reply', 'replycontent', 'replycontainer', 'more'); - - if ( typeof $.table_hotkeys != 'undefined' ) { - var make_hotkeys_redirect = function(which) { - return function() { - var first_last = 'next' == which? 'first' : 'last'; - var l=$('.'+which+'.page-numbers'); - if (l.length) - window.location = l[0].href.replace(/\&hotkeys_highlight_(first|last)=1/g, '')+'&hotkeys_highlight_'+first_last+'=1'; - } - }; - var edit_comment = function(event, current_row) { - window.location = $('span.edit a', current_row).attr('href'); - }; - var toggle_all = function() { - toggleWithKeyboard = true; - var master_checkbox = $('form#comments-form .check-column :checkbox:first'); - master_checkbox.click().attr('checked', ''); - toggleWithKeyboard = false; - } - var make_bulk = function(value) { - return function(event, _) { - $('option[value='+value+']').attr('selected', 'selected'); - $('form#comments-form')[0].submit(); - } - }; - $.table_hotkeys($('table.widefat'),['a', 'u', 's', 'd', 'r', 'q', ['e', edit_comment], - ['shift+a', make_bulk('approve')], ['shift+s', make_bulk('markspam')], - ['shift+d', make_bulk('delete')], ['shift+x', toggle_all], - ['shift+u', make_bulk('unapprove')]], - {highlight_first: adminCommentsL10n.hotkeys_highlight_first, highlight_last: adminCommentsL10n.hotkeys_highlight_last, - prev_page_link_cb: make_hotkeys_redirect('prev'), next_page_link_cb: make_hotkeys_redirect('next')} - ); - } -}); - -})(jQuery); +var theList,theExtraList,toggleWithKeyboard=false;(function(a){setCommentsList=function(){var g,i,h,f=0,c,e,d,b;g=a('#comments-form .tablenav :input[name="_total"]');i=a('#comments-form .tablenav :input[name="_per_page"]');h=a('#comments-form .tablenav :input[name="_page"]');c=function(k,j){var l=a("#"+j.element);if(l.is(".unapproved")){l.find("div.comment_status").html("0")}else{l.find("div.comment_status").html("1")}a("span.pending-count").each(function(){var m=a(this),o;o=m.html().replace(/[ ,.]+/g,"");o=parseInt(o,10);if(isNaN(o)){return}o=o+(a("#"+j.element).is("."+j.dimClass)?1:-1);if(o<0){o=0}a("#awaiting-mod")[0==o?"addClass":"removeClass"]("count-0");o=o.toString();if(o.length>3){o=o.substr(0,o.length-3)+" "+o.substr(-3)}m.html(o)})};e=function(j){j.data._total=g.val();j.data._per_page=i.val();j.data._page=h.val();j.data._url=document.location.href;if("undefined"!=showNotice&&j.data.action&&j.data.action=="delete-comment"&&!j.data.spam){return showNotice.warn()?j:false}return j};d=function(j,k,l){if(k3){o=o.substr(0,o.length-3)+" "+o.substr(-3)}m.html(o)})};b=function(l,j){a("span.pending-count").each(function(){var m=a(this),o;o=m.html().replace(/[ ,.]+/g,"");o=parseInt(o,10);if(isNaN(o)){return}if(a("#"+j.element).is(".unapproved")){o=o-1}else{if(a(j.target).parents("span.unapprove").size()){o=o+1}}if(o<0){o=0}a("#awaiting-mod")[0==o?"addClass":"removeClass"]("count-0");o=o.toString();if(o.length>3){o=o.substr(0,o.length-3)+" "+o.substr(-3)}m.html(o)});a("span.spam-count").each(function(){var m=a(this),o;o=m.html().replace(/[ ,.]+/g,"");o=parseInt(o,10);if(isNaN(o)){return}if(a(j.target).parents("span.spam").size()){o=o+1}else{if(a("#"+j.element).is(".spam")){o=o-1}}if(o<0){o=0}o=o.toString();if(o.length>3){o=o.substr(0,o.length-3)+" "+o.substr(-3)}m.html(o)});if(("object"==typeof l)&&f p").dblclick(function(){commentReply.toggle(a(this).parent())});a("#doaction, #doaction2, #post-query-submit").click(function(c){if(a("#the-comment-list #replyrow").length>0){commentReply.close()}});this.comments_listing=a('#comments-form > input[name="comment_status"]').val()||""},addEvents:function(b){b.each(function(){a(this).find(".column-comment > p").dblclick(function(){commentReply.toggle(a(this).parent())})})},toggle:function(b){if(a(b).css("display")!="none"){a(b).find("a.vim-q").click()}},revert:function(){if(a("#the-comment-list #replyrow").length<1){return false}a("#replyrow").fadeOut("fast",function(){commentReply.close()});return false},close:function(){a(this.o).fadeIn("fast").css("backgroundColor","");a("#com-reply").append(a("#replyrow"));a("#replycontent").val("");a("#edithead input").val("");a("#replysubmit .error").html("").hide();a("#replysubmit .waiting").hide();if(a.browser.msie){a("#replycontainer, #replycontent").css("height","120px")}else{a("#replycontainer").resizable("destroy").css("height","120px")}},open:function(i,g,c){var e=this,d,b,f;e.close();e.o="#comment-"+i;a("#replyrow td").attr("colspan",a(".widefat thead th:visible").length);d=a("#replyrow"),rowData=a("#inline-"+i);b=e.act=(c=="edit")?"edit-comment":"replyto-comment";a("#action",d).val(b);a("#comment_post_ID",d).val(g);a("#comment_ID",d).val(i);if(c=="edit"){a("#author",d).val(a("div.author",rowData).text());a("#author-email",d).val(a("div.author-email",rowData).text());a("#author-url",d).val(a("div.author-url",rowData).text());a("#status",d).val(a("div.comment_status",rowData).text());a("#replycontent",d).val(a("textarea.comment",rowData).val());a("#edithead, #savebtn",d).show();a("#replyhead, #replybtn",d).hide();f=a(e.o).height();if(f>220){if(a.browser.msie){a("#replycontainer, #replycontent",d).height(f-105)}else{a("#replycontainer",d).height(f-105)}}a(e.o).after(d.hide()).fadeOut("fast",function(){a("#replyrow").fadeIn("fast")})}else{a("#edithead, #savebtn",d).hide();a("#replyhead, #replybtn",d).show();a(e.o).after(d);a("#replyrow").hide().fadeIn("fast")}if(!a.browser.msie){a("#replycontainer").resizable({handles:"s",axis:"y",minHeight:80,stop:function(){a("#replycontainer").width("auto")}})}setTimeout(function(){var l,j,m,h,k;l=a("#replyrow").offset().top;j=l+a("#replyrow").height();m=window.pageYOffset||document.documentElement.scrollTop;h=document.documentElement.clientHeight||self.innerHeight||0;k=m+h;if(k-20]*?>/g,"")}if(c){a("#replysubmit .error").html(c).show()}}};a(document).ready(function(){var e,b,c,d;setCommentsList();commentReply.init();a("span.delete a.delete").click(function(){return false});if(typeof QTags!="undefined"){ed_reply=new QTags("ed_reply","replycontent","replycontainer","more")}if(typeof a.table_hotkeys!="undefined"){e=function(f){return function(){var h,g;h="next"==f?"first":"last";g=a("."+f+".page-numbers");if(g.length){window.location=g[0].href.replace(/\&hotkeys_highlight_(first|last)=1/g,"")+"&hotkeys_highlight_"+h+"=1"}}};b=function(g,f){window.location=a("span.edit a",f).attr("href")};c=function(){toggleWithKeyboard=true;a("#comments-form thead #cb input:checkbox").click().attr("checked","");toggleWithKeyboard=false};d=function(f){return function(h,g){a("option[value="+f+"]").attr("selected","selected");a("form#comments-form")[0].submit()}};a.table_hotkeys(a("table.widefat"),["a","u","s","d","r","q",["e",b],["shift+a",d("approve")],["shift+s",d("markspam")],["shift+d",d("delete")],["shift+x",c],["shift+u",d("unapprove")]],{highlight_first:adminCommentsL10n.hotkeys_highlight_first,highlight_last:adminCommentsL10n.hotkeys_highlight_last,prev_page_link_cb:e("prev"),next_page_link_cb:e("next")})}})})(jQuery); \ No newline at end of file