diff options
Diffstat (limited to 'wp-admin/includes/comment.php')
| -rw-r--r-- | wp-admin/includes/comment.php | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/wp-admin/includes/comment.php b/wp-admin/includes/comment.php index e08ae4d..0f2aa61 100644 --- a/wp-admin/includes/comment.php +++ b/wp-admin/includes/comment.php @@ -21,7 +21,7 @@ function edit_comment() { $_POST['comment_content'] = $_POST['content']; $_POST['comment_ID'] = (int) $_POST['comment_ID']; - foreach ( array ('aa', 'mm', 'jj', 'hh', 'mm') as $timeunit ) { + foreach ( array ('aa', 'mm', 'jj', 'hh', 'mn') as $timeunit ) { if ( !empty( $_POST['hidden_' . $timeunit] ) && $_POST['hidden_' . $timeunit] != $_POST[$timeunit] ) { $_POST['edit_date'] = '1'; break; @@ -66,9 +66,28 @@ function get_comment_to_edit( $id ) { function get_pending_comments_num( $post_id ) { global $wpdb; - $post_id = (int) $post_id; - $pending = $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->comments WHERE comment_post_ID = $post_id AND comment_approved = '0'" ); - return $pending; + + $single = false; + if ( !is_array($post_id) ) { + $post_id = (array) $post_id; + $single = true; + } + $post_id = array_map('intval', $post_id); + $post_id = "'" . implode("', '", $post_id) . "'"; + + $pending = $wpdb->get_results( "SELECT comment_post_ID, COUNT(comment_ID) as num_comments FROM $wpdb->comments WHERE comment_post_ID IN ( $post_id ) AND comment_approved = '0' GROUP BY comment_post_ID", ARRAY_N ); + + if ( empty($pending) ) + return 0; + + if ( $single ) + return $pending[0][1]; + + $pending_keyed = array(); + foreach ( $pending as $pend ) + $pending_keyed[$pend[0]] = $pend[1]; + + return $pending_keyed; } // Add avatars to relevant places in admin, or try to |
