Make WordPress Core

Ticket #33414: 33414.3.diff

File 33414.3.diff, 4.1 KB (added by wonderboymusic, 9 years ago)
  • src/wp-admin/admin-header.php

     
    7575        pagenow = '<?php echo $current_screen->id; ?>',
    7676        typenow = '<?php echo $current_screen->post_type; ?>',
    7777        adminpage = '<?php echo $admin_body_class; ?>',
     78        adminTitle = '<?php echo esc_js( html_entity_decode( $admin_title ) ) ?>',
    7879        thousandsSeparator = '<?php echo addslashes( $wp_locale->number_format['thousands_sep'] ); ?>',
    7980        decimalPoint = '<?php echo addslashes( $wp_locale->number_format['decimal_point'] ); ?>',
    8081        isRtl = <?php echo (int) is_rtl(); ?>;
  • src/wp-admin/edit-comments.php

     
    104104wp_enqueue_script('admin-comments');
    105105enqueue_comment_hotkeys_js();
    106106
    107 if ( $post_id )
    108         $title = sprintf( __( 'Comments on &#8220;%s&#8221;' ), wp_html_excerpt( _draft_or_post_title( $post_id ), 50, '&hellip;' ) );
    109 else
    110         $title = __('Comments');
     107if ( $post_id ) {
     108        $comments_count = get_comment_count( $post_id );
     109        $draft_or_post_title = wp_html_excerpt( _draft_or_post_title( $post_id ), 50, '&hellip;' );
     110        if ( $comments_count['awaiting_moderation'] > 0 ) {
     111                $title = sprintf(
     112                        __( 'Comments (%s) on &#8220;%s&#8221;' ),
     113                        number_format_i18n( $comments_count['awaiting_moderation'] ),
     114                        $draft_or_post_title
     115                );
     116        } else {
     117                $title = sprintf( __( 'Comments on &#8220;%s&#8221;' ), $draft_or_post_title );
     118        }
     119} else {
     120        $comments_count = get_comment_count();
     121        if ( $comments_count['awaiting_moderation'] > 0 ) {
     122                $title = sprintf(
     123                        __( 'Comments (%s)' ),
     124                        number_format_i18n( $comments_count['awaiting_moderation'] )
     125                );
     126        } else {
     127                $title = __( 'Comments' );
     128        }
     129}
    111130
    112131add_screen_option( 'per_page' );
    113132
  • src/wp-admin/js/edit-comments.js

     
    1 /* global adminCommentsL10n, thousandsSeparator, list_args, QTags, ajaxurl, wpAjax */
     1/* global adminTitle, adminCommentsL10n, thousandsSeparator, list_args, QTags, ajaxurl, wpAjax */
    22var setCommentsList, theList, theExtraList, commentReply;
    33
    44(function($) {
    5 var getCount, updateCount, updateCountText, updatePending, updateApproved;
     5var getCount, updateCount, updateCountText, updatePending, updateApproved, updateHtmlTitle;
    66
    77setCommentsList = function() {
    88        var totalInput, perPageInput, pageInput, dimAfter, delBefore, updateTotalCount, delAfter, refillTheExtraList, diff,
    9                 lastConfidentTime = 0;
     9                lastConfidentTime = 0, titleDiv, titleRegEx;
    1010
    1111        totalInput = $('input[name="_total"]', '#comments-form');
    1212        perPageInput = $('input[name="_per_page"]', '#comments-form');
     
    135135                el.html(n);
    136136        };
    137137
     138        updateHtmlTitle = function ( diff ) {
     139                var newTitle, regexMatch, titleCount;
     140
     141                titleRegEx = titleRegEx || new RegExp( 'Comments (\\([0-9' + thousandsSeparator + ']+\\))?' );
     142                // count funcs operate on a $'d element
     143                titleDiv = titleDiv || $( '<div />' );
     144                newTitle = adminTitle;
     145
     146                titleDiv.html( document.title );
     147                titleCount = getCount( titleDiv ) + diff;
     148                if ( titleCount >= 1 ) {
     149                        updateCount( titleDiv, titleCount );
     150                        regexMatch = titleRegEx.exec( document.title );
     151                        if ( regexMatch ) {
     152                                newTitle = document.title.replace( regexMatch[0], 'Comments (' + titleDiv.text() + ') ' );
     153                        }
     154                } else {
     155                        regexMatch = titleRegEx.exec( newTitle );
     156                        if ( regexMatch ) {
     157                                newTitle = newTitle.replace( regexMatch[0], 'Comments' );
     158                        }
     159                }
     160                document.title = newTitle;
     161        };
     162
    138163        updatePending = function( diff, commentPostId ) {
    139164                var postSelector = '.post-com-count-' + commentPostId,
    140165                        noClass = 'comment-count-no-pending',
     
    143168                        pending,
    144169                        noPending;
    145170
     171                updateHtmlTitle( diff );
     172
    146173                $( 'span.pending-count' ).each(function() {
    147174                        var a = $(this), n = getCount(a) + diff;
    148175                        if ( n < 1 )