akismet_comment_row_action

Definition:
function akismet_comment_row_action( $a, $comment ) {}

Parameters

  • $a
  • $comment

Defined filters

  • akismet_show_user_comments_approved
    apply_filters( 'akismet_show_user_comments_approved', get_option('akismet_show_user_comments_approved')

Source code

function akismet_comment_row_action( $a, $comment ) {



	// failsafe for old WP versions

	if ( !function_exists('add_comment_meta') )

		return $a;



	$akismet_result = get_comment_meta( $comment->comment_ID, 'akismet_result', true );

	$user_result = get_comment_meta( $comment->comment_ID, 'akismet_user_result', true);

	$comment_status = wp_get_comment_status( $comment->comment_ID );

	$desc = null;

	if ( !$user_result || $user_result == $akismet_result ) {

		// Show the original Akismet result if the user hasn't overridden it, or if their decision was the same

		if ( $akismet_result == 'true' && $comment_status != 'spam' && $comment_status != 'trash' )

			$desc = __( 'Flagged as spam by Akismet' );

		elseif ( $akismet_result == 'false' && $comment_status == 'spam' )

			$desc = __( 'Cleared by Akismet' );

	} else {

		$who = get_comment_meta( $comment->comment_ID, 'akismet_user', true );

		if ( $user_result == 'true' )

			$desc = sprintf( __('Flagged as spam by %s'), $who );

		else

			$desc = sprintf( __('Un-spammed by %s'), $who );

	}



	// add a History item to the hover links, just after Edit

	if ( $akismet_result ) {

		$b = array();

		foreach ( $a as $k => $item ) {

			$b[ $k ] = $item;

			if ( $k == 'edit' )

				$b['history'] = '<a href="comment.php?action=editcomment&amp;c='.$comment->comment_ID.'#akismet-status" title="'. esc_attr__( 'View comment history' ) . '"> '. __('History') . '</a>';

		}

		

		$a = $b;

	}

		

	if ( $desc )

		echo '<span class="akismet-status" commentid="'.$comment->comment_ID.'"><a href="comment.php?action=editcomment&amp;c='.$comment->comment_ID.'#akismet-status" title="' . esc_attr__( 'View comment history' ) . '">'.htmlspecialchars($desc).'</a></span>';

		

	if ( apply_filters( 'akismet_show_user_comments_approved', get_option('akismet_show_user_comments_approved') ) == 'true' ) {

		$comment_count = akismet_get_user_comments_approved( $comment->user_id, $comment->comment_author_email, $comment->comment_author, $comment->comment_author_url );

		$comment_count = intval( $comment_count );

		echo '<span class="akismet-user-comment-count" commentid="'.$comment->comment_ID.'" style="display:none;"><br><span class="akismet-user-comment-counts">'.sprintf( _n( '%s approved', '%s approved', $comment_count ), number_format_i18n( $comment_count ) ) . '</span></span>';

	}

	

	return $a;

}

433

No comments yet... Be the first to leave a reply!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: