Consult global comment in get_comment(). Don't show empty edit links.

git-svn-id: http://svn.automattic.com/wordpress/trunk@5328 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
ryan 2007-04-27 03:51:36 +00:00
parent 8d6b81e175
commit d44752d2ca
2 changed files with 35 additions and 8 deletions

View File

@ -73,16 +73,20 @@ function get_approved_comments($post_id) {
function &get_comment(&$comment, $output = OBJECT) {
global $comment_cache, $wpdb;
if ( empty($comment) )
return null;
if ( is_object($comment) ) {
if ( empty($comment) ) {
if ( isset($GLOBALS['comment']) )
$_comment = & $GLOBALS['comment'];
else
$_comment = null;
} elseif ( is_object($comment) ) {
if ( !isset($comment_cache[$comment->comment_ID]) )
$comment_cache[$comment->comment_ID] = &$comment;
$_comment = & $comment_cache[$comment->comment_ID];
} else {
$comment = (int) $comment;
if ( !isset($comment_cache[$comment]) ) {
if ( isset($GLOBALS['comment']) && ($GLOBALS['comment']->id == $comment) ) {
$_comment = & $GLOBALS['comment'];
} elseif ( !isset($comment_cache[$comment]) ) {
$_comment = $wpdb->get_row("SELECT * FROM $wpdb->comments WHERE comment_ID = '$comment' LIMIT 1");
$comment_cache[$comment->comment_ID] = & $_comment;
} else {

View File

@ -296,7 +296,21 @@ function get_edit_post_link( $id = 0 ) {
function edit_post_link( $link = 'Edit This', $before = '', $after = '' ) {
global $post;
if ( $post->post_type == 'attachment' )
return;
elseif ( $post->post_type == 'page' ) {
if ( !current_user_can( 'edit_page', $post->ID ) )
return;
$file = 'page';
} else {
if ( !current_user_can( 'edit_post', $post->ID ) )
return;
$file = 'post';
}
$link = '<a href="' . get_edit_post_link( $post->ID ) . '" title="' . __( 'Edit post' ) . '">' . $link . '</a>';
echo $before . apply_filters( 'edit_post_link', $link, $post->ID ) . $after;
}
@ -319,8 +333,17 @@ function get_edit_comment_link( $comment_id = 0 ) {
}
function edit_comment_link( $link = 'Edit This', $before = '', $after = '' ) {
global $comment;
global $comment, $post;
if ( $post->post_type == 'attachment' )
return;
elseif ( $post->post_type == 'page' )
if ( !current_user_can( 'edit_page', $post->ID ) )
return;
else
if ( !current_user_can( 'edit_post', $post->ID ) )
return;
$link = '<a href="' . get_edit_comment_link( $comment->comment_ID ) . '" title="' . __( 'Edit comment' ) . '">' . $link . '</a>';
echo $before . apply_filters( 'edit_comment_link', $link, $comment->comment_ID ) . $after;
}