Ticket #14520: edit_comment.2.diff
| File edit_comment.2.diff, 7.0 KB (added by , 16 years ago) |
|---|
-
wp-includes/link-template.php
874 874 * @return string 875 875 */ 876 876 function get_edit_comment_link( $comment_id = 0 ) { 877 $comment = &get_comment( $comment_id );878 $post = &get_post( $comment->comment_post_ID );877 if ( !current_user_can('edit_comment', $comment_id) ) 878 return; 879 879 880 if ( $post->post_type == 'page' ) { 881 if ( !current_user_can( 'edit_page', $post->ID ) ) 882 return; 883 } else { 884 if ( !current_user_can( 'edit_post', $post->ID ) ) 885 return; 886 } 887 888 $location = admin_url('comment.php?action=editcomment&c=') . $comment->comment_ID; 880 $location = admin_url('comment.php?action=editcomment&c=') . $comment_id; 889 881 return apply_filters( 'get_edit_comment_link', $location ); 890 882 } 891 883 … … 900 892 * @return string|null HTML content, if $echo is set to false. 901 893 */ 902 894 function edit_comment_link( $link = null, $before = '', $after = '' ) { 903 global $comment , $post;895 global $comment; 904 896 905 if ( $post->post_type == 'page' ) { 906 if ( !current_user_can( 'edit_page', $post->ID ) ) 907 return; 908 } else { 909 if ( !current_user_can( 'edit_post', $post->ID ) ) 910 return; 911 } 897 if ( !current_user_can('edit_comment', $comment->comment_ID) ) 898 return; 912 899 913 900 if ( null === $link ) 914 901 $link = __('Edit This'); -
wp-includes/capabilities.php
990 990 else 991 991 $caps[] = 'read_private_pages'; 992 992 break; 993 case 'edit_comment': 994 $caps[] = 'edit_published_posts'; 995 996 $comment = get_comment( $args[0] ); 997 998 if ( $comment->user_id != $user_id ) 999 $caps[] = 'moderate_comments'; 1000 break; 993 1001 case 'unfiltered_upload': 994 1002 if ( defined('ALLOW_UNFILTERED_UPLOADS') && ALLOW_UNFILTERED_UPLOADS && ( !is_multisite() || is_super_admin( $user_id ) ) ) 995 1003 $caps[] = $cap; -
wp-admin/includes/dashboard.php
586 586 $comment_link = '<a class="comment-link" href="' . esc_url(get_comment_link()) . '">#</a>'; 587 587 588 588 $actions_string = ''; 589 if ( current_user_can('edit_ post', $comment->comment_post_ID) ) {589 if ( current_user_can('edit_comment', $comment->comment_ID) ) { 590 590 // preorder it: Approve | Reply | Edit | Spam | Trash 591 591 $actions = array( 592 592 'approve' => '', 'unapprove' => '', -
wp-admin/includes/template.php
2004 2004 $comment = get_comment( $comment_id ); 2005 2005 $post = get_post($comment->comment_post_ID); 2006 2006 $the_comment_status = wp_get_comment_status($comment->comment_ID); 2007 $post_type_object = get_post_type_object($post->post_type); 2008 $user_can = current_user_can($post_type_object->cap->edit_post, $post->ID); 2007 $user_can = current_user_can('edit_comment', $comment_id); 2009 2008 2010 2009 $comment_url = esc_url(get_comment_link($comment->comment_ID)); 2011 2010 $author_url = get_comment_author_url(); … … 2025 2024 $del_nonce = esc_html( '_wpnonce=' . wp_create_nonce( "delete-comment_$comment->comment_ID" ) ); 2026 2025 $approve_nonce = esc_html( '_wpnonce=' . wp_create_nonce( "approve-comment_$comment->comment_ID" ) ); 2027 2026 2028 $approve_url = esc_url( "comment.php?action=approvecomment& p=$post->ID&c=$comment->comment_ID&$approve_nonce" );2029 $unapprove_url = esc_url( "comment.php?action=unapprovecomment& p=$post->ID&c=$comment->comment_ID&$approve_nonce" );2030 $spam_url = esc_url( "comment.php?action=spamcomment& p=$post->ID&c=$comment->comment_ID&$del_nonce" );2031 $unspam_url = esc_url( "comment.php?action=unspamcomment& p=$post->ID&c=$comment->comment_ID&$del_nonce" );2032 $trash_url = esc_url( "comment.php?action=trashcomment& p=$post->ID&c=$comment->comment_ID&$del_nonce" );2033 $untrash_url = esc_url( "comment.php?action=untrashcomment& p=$post->ID&c=$comment->comment_ID&$del_nonce" );2034 $delete_url = esc_url( "comment.php?action=deletecomment& p=$post->ID&c=$comment->comment_ID&$del_nonce" );2027 $approve_url = esc_url( "comment.php?action=approvecomment&c=$comment->comment_ID&$approve_nonce" ); 2028 $unapprove_url = esc_url( "comment.php?action=unapprovecomment&c=$comment->comment_ID&$approve_nonce" ); 2029 $spam_url = esc_url( "comment.php?action=spamcomment&c=$comment->comment_ID&$del_nonce" ); 2030 $unspam_url = esc_url( "comment.php?action=unspamcomment&c=$comment->comment_ID&$del_nonce" ); 2031 $trash_url = esc_url( "comment.php?action=trashcomment&c=$comment->comment_ID&$del_nonce" ); 2032 $untrash_url = esc_url( "comment.php?action=untrashcomment&c=$comment->comment_ID&$del_nonce" ); 2033 $delete_url = esc_url( "comment.php?action=deletecomment&c=$comment->comment_ID&$del_nonce" ); 2035 2034 } 2036 2035 2037 2036 echo "<tr id='comment-$comment->comment_ID' class='$the_comment_status'>"; -
wp-admin/comment.php
60 60 if ( !$comment = get_comment( $comment_id ) ) 61 61 comment_footer_die( __('Oops, no comment with this ID.') . sprintf(' <a href="%s">'.__('Go back').'</a>!', 'javascript:history.go(-1)') ); 62 62 63 if ( !current_user_can('edit_ post', $comment->comment_post_ID) )64 comment_footer_die( __('You are not allowed to edit comments on this post.') );63 if ( !current_user_can('edit_comment', $comment_id) ) 64 comment_footer_die( __('You are not allowed to edit this comment.') ); 65 65 66 66 if ( 'trash' == $comment->comment_approved ) 67 67 comment_footer_die( __('This comment is in the Trash. Please move it out of the Trash if you want to edit it.') ); … … 84 84 die(); 85 85 } 86 86 87 if ( !current_user_can( 'edit_ post', $comment->comment_post_ID ) ) {87 if ( !current_user_can( 'edit_comment', $comment->comment_ID ) ) { 88 88 wp_redirect( admin_url('edit-comments.php?error=2') ); 89 89 die(); 90 90 } … … 184 184 185 185 <?php wp_nonce_field( $nonce_action ); ?> 186 186 <input type='hidden' name='action' value='<?php echo esc_attr($formaction); ?>' /> 187 <input type='hidden' name='p' value='<?php echo esc_attr($comment->comment_post_ID); ?>' />188 187 <input type='hidden' name='c' value='<?php echo esc_attr($comment->comment_ID); ?>' /> 189 188 <input type='hidden' name='noredir' value='1' /> 190 189 </form> … … 212 211 213 212 if ( !$comment = get_comment($comment_id) ) 214 213 comment_footer_die( __('Oops, no comment with this ID.') . sprintf(' <a href="%s">'.__('Go back').'</a>!', 'edit-comments.php') ); 215 if ( !current_user_can('edit_ post', $comment->comment_post_ID ) )214 if ( !current_user_can('edit_comment', $comment->comment_ID ) ) 216 215 comment_footer_die( __('You are not allowed to edit comments on this post.') ); 217 216 218 217 if ( '' != wp_get_referer() && ! $noredir && false === strpos(wp_get_referer(), 'comment.php') )