X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/98a4d31e52bd56c908617df281730bd4ba58d110..1c09677af04c9e37714e09b73eb9dbc5b2e3eb13:/wp-admin/comment.php diff --git a/wp-admin/comment.php b/wp-admin/comment.php index 6499c08d..8b63a57a 100644 --- a/wp-admin/comment.php +++ b/wp-admin/comment.php @@ -17,6 +17,18 @@ wp_reset_vars( array('action') ); if ( isset( $_POST['deletecomment'] ) ) $action = 'deletecomment'; +if ( 'cdc' == $action ) + $action = 'delete'; +elseif ( 'mac' == $action ) + $action = 'approve'; + +if ( isset( $_GET['dt'] ) ) { + if ( 'spam' == $_GET['dt'] ) + $action = 'spam'; + elseif ( 'trash' == $_GET['dt'] ) + $action = 'trash'; +} + /** * Display error message at bottom of comments. * @@ -44,68 +56,60 @@ case 'editcomment' : if ( !current_user_can('edit_post', $comment->comment_post_ID) ) comment_footer_die( __('You are not allowed to edit comments on this post.') ); + 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'); break; -case 'cdc' : -case 'mac' : +case 'delete' : +case 'approve' : +case 'trash' : +case 'spam' : require_once('admin-header.php'); $comment_id = absint( $_GET['c'] ); - $formaction = 'cdc' == $action ? 'deletecomment' : 'approvecomment'; - $nonce_action = 'cdc' == $action ? 'delete-comment_' : 'approve-comment_'; + $formaction = $action . 'comment'; + $nonce_action = 'approve' == $action ? 'approve-comment_' : 'delete-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 ( !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.') ); + comment_footer_die( 'approve' != $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.') ); ?>

-

- -
- - - - - - -
' onclick="self.location='" />
- - - - - - - - - -
- - +
@@ -128,87 +132,112 @@ if ( 'spam' == $_GET['dt'] ) {
comment_author; ?>
+

+ +
+ + + + + + +
+ + + + + + +
+
'.__('Go back').'!', 'edit-comments.php') ); - - if ( !current_user_can( 'edit_post', $comment->comment_post_ID ) ) + if ( !current_user_can('edit_post', $comment->comment_post_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() && false == $noredir && false === strpos(wp_get_referer(), 'comment.php') ) + $redir = wp_get_referer(); + elseif ( '' != wp_get_original_referer() && false == $noredir ) + $redir = wp_get_original_referer(); 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'), $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; + } + + wp_redirect( $redir ); die; break; +case 'approvecomment' : case 'unapprovecomment' : $comment_id = absint( $_GET['c'] ); - check_admin_referer( 'unapprove-comment_' . $comment_id ); + check_admin_referer( 'approve-comment_' . $comment_id ); - if ( isset( $_GET['noredir'] ) ) - $noredir = true; - else - $noredir = false; + $noredir = isset( $_GET['noredir'] ); 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 ( !current_user_can( 'edit_post', $comment->comment_post_ID ) ) { + if ( 'approvecomment' == $action ) + comment_footer_die( __('You are not allowed to edit comments on this post, so you cannot approve this comment.') ); + else + comment_footer_die( __('You are not allowed to edit comments on this post, so you cannot disapprove this comment.') ); + } if ( '' != wp_get_referer() && false == $noredir ) - wp_redirect( wp_get_referer() ); + $redir = remove_query_arg( array('approved', 'unapproved'), wp_get_referer() ); else - wp_redirect( admin_url('edit-comments.php?p=' . absint( $comment->comment_post_ID ) . '#comments') ); + $redir = admin_url('edit-comments.php?p=' . absint( $comment->comment_post_ID ) ); - 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.') ); + if ( 'approvecomment' == $action ) { + wp_set_comment_status( $comment_id, 'approve' ); + $redir = add_query_arg( array( 'approved' => 1 ), $redir ); + } else { + wp_set_comment_status( $comment_id, 'hold' ); + $redir = add_query_arg( array( 'unapproved' => 1 ), $redir ); + } - 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') ); + wp_redirect( $redir ); exit(); break; @@ -237,4 +266,4 @@ default: include('admin-footer.php'); -?> \ No newline at end of file +?>