X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/a66f9e26487c560245ef9cd17d7e87c0cbb650af..177fd6fefd2e3d5a0ea6591c71d660cabdb3c1a4:/wp-admin/edit-comments.php?mode=edit;s=%3C%3Fphp%20comment_author_IP%28%29%20%3F%3E diff --git a/wp-admin/edit-comments.php b/wp-admin/edit-comments.php index ab1bdbce..bc62681b 100644 --- a/wp-admin/edit-comments.php +++ b/wp-admin/edit-comments.php @@ -4,76 +4,133 @@ require_once('admin.php'); $title = __('Edit Comments'); $parent_file = 'edit-comments.php'; wp_enqueue_script( 'admin-comments' ); +wp_enqueue_script('admin-forms'); + +if ( !empty( $_REQUEST['delete_comments'] ) ) { + check_admin_referer('bulk-comments'); + + $comments_deleted = $comments_approved = $comments_unapproved = $comments_spammed = 0; + foreach ($_REQUEST['delete_comments'] as $comment) : // Check the permissions on each + $comment = (int) $comment; + $post_id = (int) $wpdb->get_var("SELECT comment_post_ID FROM $wpdb->comments WHERE comment_ID = $comment"); + // $authordata = get_userdata( $wpdb->get_var("SELECT post_author FROM $wpdb->posts WHERE ID = $post_id") ); + if ( !current_user_can('edit_post', $post_id) ) + continue; + if ( !empty( $_REQUEST['spamit'] ) ) { + wp_set_comment_status($comment, 'spam'); + $comments_spammed++; + } elseif ( !empty( $_REQUEST['deleteit'] ) ) { + wp_set_comment_status($comment, 'delete'); + $comments_deleted++; + } elseif ( !empty( $_REQUEST['approveit'] ) ) { + wp_set_comment_status($comment, 'approve'); + $comments_approved++; + } elseif ( !empty( $_REQUEST['unapproveit'] ) ) { + wp_set_comment_status($comment, 'hold'); + $comments_unapproved++; + } + endforeach; + $redirect_to = basename( __FILE__ ) . '?deleted=' . $comments_deleted . '&approved=' . $comments_approved . '&spam=' . $comments_spammed . '&unapproved=' . $comments_unapproved; + if ( !empty($_REQUEST['mode']) ) + $redirect_to = add_query_arg('mode', $_REQUEST['mode'], $redirect_to); + if ( !empty($_REQUEST['comment_status']) ) + $redirect_to = add_query_arg('comment_status', $_REQUEST['comment_status'], $redirect_to); + if ( !empty($_REQUEST['s']) ) + $redirect_to = add_query_arg('s', $_REQUEST['s'], $redirect_to); + wp_redirect( $redirect_to ); +} elseif ( !empty($_GET['_wp_http_referer']) ) { + wp_redirect(remove_query_arg(array('_wp_http_referer', '_wpnonce'), stripslashes($_SERVER['REQUEST_URI']))); + exit; +} require_once('admin-header.php'); -if (empty($_GET['mode'])) $mode = 'view'; -else $mode = attribute_escape($_GET['mode']); + +if ( empty($_GET['mode']) ) + $mode = 'detail'; +else + $mode = attribute_escape($_GET['mode']); + +if ( isset($_GET['comment_status']) ) + $comment_status = attribute_escape($_GET['comment_status']); +else + $comment_status = ''; + +if ( isset($_GET['s']) ) + $search_dirty = $_GET['s']; +else + $search_dirty = ''; +$search = attribute_escape( $search_dirty ); ?> + 0 || $deleted > 0 || $spam > 0 ) { + echo '

'; - +?>

-

-
-
- - - - - -
-
-

|

+
+

+ +
    sprintf(__ngettext('Awaiting Moderation (%s)', 'Awaiting Moderation (%s)', $num_comments->moderated), "$num_comments->moderated"), 'approved' => _c('Approved|plural')); +$class = ( '' === $comment_status ) ? ' class="current"' : ''; +$status_links[] = "
  • ".__('Show All Comments').""; +foreach ( $stati as $status => $label ) { + $class = ''; + + if ( $status == $comment_status ) + $class = ' class="current"'; + + $status_links[] = "
  • " . $label . ''; +} - $i = 0; - foreach ($_POST['delete_comments'] as $comment) : // Check the permissions on each - $comment = (int) $comment; - $post_id = (int) $wpdb->get_var("SELECT comment_post_ID FROM $wpdb->comments WHERE comment_ID = $comment"); - // $authordata = get_userdata( $wpdb->get_var("SELECT post_author FROM $wpdb->posts WHERE ID = $post_id") ); - if ( current_user_can('edit_post', $post_id) ) { - if ( !empty( $_POST['spam_button'] ) ) - wp_set_comment_status($comment, 'spam'); - else - wp_set_comment_status($comment, 'delete'); - ++$i; - } - endforeach; - echo '

    '; - if ( !empty( $_POST['spam_button'] ) ) { - printf(__ngettext('%s comment marked as spam', '%s comments marked as spam.', $i), $i); - } else { - printf(__ngettext('%s comment deleted.', '%s comments deleted.', $i), $i); - } - echo '

    '; -endif; +$status_links = apply_filters( 'comment_status_links', $status_links ); + +echo implode(' |
  • ', $status_links) . ''; +unset($status_links); +?> +
+ +

+ + +

+ + + +
+ + + + $page )); -if ( $page_links ) - echo ""; - -if ('view' == $mode) { - if ($comments) { - $offset = $offset + 1; - $start = " start='$offset'"; - - echo "
    \n"; - $i = 0; - foreach ( $comments as $comment ) { - get_comment( $comment ); // Cache it - _wp_comment_list_item( $comment->comment_ID, ++$i ); - } - echo "
\n\n"; - -if ( $extra_comments ) : ?> - - -
+
+ +
$page_links
"; +?> - ?> -

-

+
+ + + + + + + + + + +
- - if ($comments) { - echo ' '; - wp_nonce_field('bulk-comments'); - echo ' + + +
+ +
- - - - - - + + + + -'; - foreach ($comments as $comment) { - $post = get_post($comment->comment_post_ID); - $authordata = get_userdata($post->post_author); - $comment_status = wp_get_comment_status($comment->comment_ID); - $class = ('alternate' == $class) ? '' : 'alternate'; - $class .= ('unapproved' == $comment_status) ? ' unapproved' : ''; + + +comment_ID, $mode, $comment_status ); ?> - - - - - - - - - - -
' . __('Name') . '' . __('E-mail') . '' . __('IP') . '' . __('Comment Excerpt') . '' . __('Actions') . '
comment_post_ID) ) { ?> - - - - comment_post_ID) ) { - echo "" . __('Edit') . ""; } ?>comment_post_ID) ) { - echo "comment_post_ID."&c=".$comment->comment_ID."\" onclick=\"return deleteSomething( 'comment', $comment->comment_ID, '" . js_escape(sprintf(__("You are about to delete this comment by '%s'. \n 'Cancel' to stop, 'OK' to delete."), $comment->comment_author )) . "', theCommentList );\" class='delete'>" . __('Delete') . " "; - } ?>
-

'); return false } return confirm('')" /> - '); return false } return confirm('')" />

-
+ + +comment_ID, $mode, $comment_status ); +?> + + + + + + +

- + +

+ +

+

+
+$page_links

"; - + echo "
$page_links
"; ?> +
+