X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/d3b1ea255664edd2deef17f900a655613d20820d..9e77185fafaf4e60e2b73821e0e4b9b1a11fb85f:/wp-admin/comment.php?ds=sidebyside diff --git a/wp-admin/comment.php b/wp-admin/comment.php index f6437e57..1c46b0a9 100644 --- a/wp-admin/comment.php +++ b/wp-admin/comment.php @@ -1,13 +1,13 @@

$msg

"; - include('admin-footer.php'); + include( ABSPATH . 'wp-admin/admin-footer.php' ); die; } @@ -33,79 +45,118 @@ switch( $action ) { case 'editcomment' : $title = __('Edit Comment'); + get_current_screen()->add_help_tab( array( + 'id' => 'overview', + 'title' => __('Overview'), + 'content' => + '

' . __( 'You can edit the information left in a comment if needed. This is often useful when you notice that a commenter has made a typographical error.' ) . '

' . + '

' . __( 'You can also moderate the comment from this screen using the Status box, where you can also change the timestamp of the comment.' ) . '

' + ) ); + + get_current_screen()->set_help_sidebar( + '

' . __( 'For more information:' ) . '

' . + '

' . __( 'Documentation on Comments' ) . '

' . + '

' . __( 'Support Forums' ) . '

' + ); + wp_enqueue_script('comment'); - require_once('admin-header.php'); + require_once( ABSPATH . 'wp-admin/admin-header.php' ); $comment_id = absint( $_GET['c'] ); if ( !$comment = get_comment( $comment_id ) ) - comment_footer_die( __('Oops, no comment with this ID.') . sprintf(' '.__('Go back').'!', 'javascript:history.go(-1)') ); + comment_footer_die( __('Oops, no comment with this ID.') . sprintf(' ' . __('Go back') . '.', 'javascript:history.go(-1)') ); - if ( !current_user_can('edit_post', $comment->comment_post_ID) ) - comment_footer_die( __('You are not allowed to edit comments on this post.') ); + if ( !current_user_can( 'edit_comment', $comment_id ) ) + comment_footer_die( __('You are not allowed to edit this comment.') ); + + if ( 'trash' == $comment->comment_approved ) + comment_footer_die( __('This comment is in the Trash. Please move it out of the Trash if you want to edit it.') ); $comment = get_comment_to_edit( $comment_id ); - include('edit-form-comment.php'); + include( ABSPATH . 'wp-admin/edit-form-comment.php' ); break; -case 'cdc' : -case 'mac' : +case 'delete' : +case 'approve' : +case 'trash' : +case 'spam' : - require_once('admin-header.php'); + $title = __('Moderate Comment'); $comment_id = absint( $_GET['c'] ); - $formaction = 'cdc' == $action ? 'deletecomment' : 'approvecomment'; - $nonce_action = 'cdc' == $action ? 'delete-comment_' : 'approve-comment_'; - $nonce_action .= $comment_id; - if ( !$comment = get_comment_to_edit( $comment_id ) ) - comment_footer_die( __('Oops, no comment with this ID.') . sprintf(' '.__('Go back').'!', 'edit.php') ); + if ( !$comment = get_comment_to_edit( $comment_id ) ) { + wp_redirect( admin_url('edit-comments.php?error=1') ); + die(); + } + + if ( !current_user_can( 'edit_comment', $comment->comment_ID ) ) { + wp_redirect( admin_url('edit-comments.php?error=2') ); + die(); + } + + // No need to re-approve/re-trash/re-spam a comment. + if ( $action == str_replace( '1', 'approve', $comment->comment_approved ) ) { + wp_redirect( admin_url( 'edit-comments.php?same=' . $comment_id ) ); + die(); + } + + require_once( ABSPATH . 'wp-admin/admin-header.php' ); + + $formaction = $action . 'comment'; + $nonce_action = 'approve' == $action ? 'approve-comment_' : 'delete-comment_'; + $nonce_action .= $comment_id; - if ( !current_user_can( 'edit_post', $comment->comment_post_ID ) ) - comment_footer_die( 'cdc' == $action ? __('You are not allowed to delete comments on this post.') : __('You are not allowed to edit comments on this post, so you cannot approve this comment.') ); ?> -
+
+ +

+ +if ( $comment->comment_approved != '0' ) { // if not unapproved + $message = ''; + switch ( $comment->comment_approved ) { + case '1' : + $message = __('This comment is currently approved.'); + break; + case 'spam' : + $message = __('This comment is currently marked as spam.'); + break; + case 'trash' : + $message = __('This comment is currently in the Trash.'); + break; + } + if ( $message ) + echo '

' . $message . '

'; +} +?>

-

- -
- - - - - - -
' onclick="self.location='" />
- - - - - - - - - -
- - +
@@ -119,99 +170,102 @@ if ( 'spam' == $_GET['dt'] ) { comment_author_url ) { ?> - + - +
comment_author; ?>
comment_author_url; ?>comment_author_url; ?>
comment_content; ?>
+

+ +
+ + + + + + +
+ + + + + +
+
'.__('Go back').'!', 'edit-comments.php') ); + $noredir = isset($_REQUEST['noredir']); - if ( !current_user_can( 'edit_post', $comment->comment_post_ID ) ) + if ( !$comment = get_comment($comment_id) ) + comment_footer_die( __('Oops, no comment with this ID.') . sprintf(' ' . __('Go back') . '.', 'edit-comments.php') ); + if ( !current_user_can( 'edit_comment', $comment->comment_ID ) ) comment_footer_die( __('You are not allowed to edit comments on this post.') ); - if ( 'spam' == $_REQUEST['dt'] ) - wp_set_comment_status( $comment->comment_ID, 'spam' ); - else - wp_delete_comment( $comment->comment_ID ); - - if ( '' != wp_get_referer() && false == $noredir && false === strpos(wp_get_referer(), 'comment.php' ) ) - wp_redirect( wp_get_referer() ); - else if ( '' != wp_get_original_referer() && false == $noredir ) - wp_redirect( wp_get_original_referer() ); + if ( '' != wp_get_referer() && ! $noredir && false === strpos(wp_get_referer(), 'comment.php') ) + $redir = wp_get_referer(); + elseif ( '' != wp_get_original_referer() && ! $noredir ) + $redir = wp_get_original_referer(); + elseif ( in_array( $action, array( 'approvecomment', 'unapprovecomment' ) ) ) + $redir = admin_url('edit-comments.php?p=' . absint( $comment->comment_post_ID ) ); else - wp_redirect( admin_url('edit-comments.php') ); - + $redir = admin_url('edit-comments.php'); + + $redir = remove_query_arg( array('spammed', 'unspammed', 'trashed', 'untrashed', 'deleted', 'ids', 'approved', 'unapproved'), $redir ); + + switch ( $action ) { + case 'deletecomment' : + wp_delete_comment( $comment_id ); + $redir = add_query_arg( array('deleted' => '1'), $redir ); + break; + case 'trashcomment' : + wp_trash_comment($comment_id); + $redir = add_query_arg( array('trashed' => '1', 'ids' => $comment_id), $redir ); + break; + case 'untrashcomment' : + wp_untrash_comment($comment_id); + $redir = add_query_arg( array('untrashed' => '1'), $redir ); + break; + case 'spamcomment' : + wp_spam_comment($comment_id); + $redir = add_query_arg( array('spammed' => '1', 'ids' => $comment_id), $redir ); + break; + case 'unspamcomment' : + wp_unspam_comment($comment_id); + $redir = add_query_arg( array('unspammed' => '1'), $redir ); + break; + case 'approvecomment' : + wp_set_comment_status( $comment_id, 'approve' ); + $redir = add_query_arg( array( 'approved' => 1 ), $redir ); + break; + case 'unapprovecomment' : + wp_set_comment_status( $comment_id, 'hold' ); + $redir = add_query_arg( array( 'unapproved' => 1 ), $redir ); + break; + } + + wp_redirect( $redir ); die; - break; - -case 'unapprovecomment' : - $comment_id = absint( $_GET['c'] ); - check_admin_referer( 'unapprove-comment_' . $comment_id ); - - if ( isset( $_GET['noredir'] ) ) - $noredir = true; - else - $noredir = false; - - if ( !$comment = get_comment( $comment_id ) ) - comment_footer_die( __('Oops, no comment with this ID.') . sprintf(' '.__('Go back').'!', 'edit.php') ); - - if ( !current_user_can( 'edit_post', $comment->comment_post_ID ) ) - comment_footer_die( __('You are not allowed to edit comments on this post, so you cannot disapprove this comment.') ); - - wp_set_comment_status( $comment->comment_ID, 'hold' ); - - if ( '' != wp_get_referer() && false == $noredir ) - wp_redirect( wp_get_referer() ); - else - wp_redirect( admin_url('edit-comments.php?p=' . absint( $comment->comment_post_ID ) . '#comments') ); - - exit(); - break; - -case 'approvecomment' : - $comment_id = absint( $_GET['c'] ); - check_admin_referer( 'approve-comment_' . $comment_id ); - - if ( isset( $_GET['noredir'] ) ) - $noredir = true; - else - $noredir = false; - - if ( !$comment = get_comment( $comment_id ) ) - comment_footer_die( __('Oops, no comment with this ID.') . sprintf(' '.__('Go back').'!', 'edit.php') ); - - if ( !current_user_can('edit_post', $comment->comment_post_ID) ) - comment_footer_die( __('You are not allowed to edit comments on this post, so you cannot approve this comment.') ); - - wp_set_comment_status( $comment->comment_ID, 'approve' ); - - if ( '' != wp_get_referer() && false == $noredir ) - wp_redirect( wp_get_referer() ); - else - wp_redirect( admin_url('edit-comments.php?p=' . absint( $comment->comment_post_ID ) . '#comments') ); - - exit(); - break; case 'editedcomment' : @@ -223,18 +277,23 @@ case 'editedcomment' : edit_comment(); $location = ( empty( $_POST['referredby'] ) ? "edit-comments.php?p=$comment_post_id" : $_POST['referredby'] ) . '#comment-' . $comment_id; + + /** + * Filter the URI the user is redirected to after editing a comment in the admin. + * + * @since 2.1.0 + * + * @param string $location The URI the user will be redirected to. + * @param int $comment_id The ID of the comment being edited. + */ $location = apply_filters( 'comment_edit_redirect', $location, $comment_id ); wp_redirect( $location ); exit(); - break; default: wp_die( __('Unknown action.') ); - break; } // end switch -include('admin-footer.php'); - -?> \ No newline at end of file +include( ABSPATH . 'wp-admin/admin-footer.php' );