diff -r 346c88efed21 -r 5e2f62d02dcd wp/wp-comments-post.php --- a/wp/wp-comments-post.php Mon Jun 08 16:11:51 2015 +0000 +++ b/wp/wp-comments-post.php Tue Jun 09 03:35:32 2015 +0200 @@ -25,7 +25,8 @@ /** * Fires when a comment is attempted on a post that does not exist. * - * @since unknown + * @since 1.5.0 + * * @param int $comment_post_ID Post ID. */ do_action( 'comment_id_not_found', $comment_post_ID ); @@ -41,16 +42,18 @@ /** * Fires when a comment is attempted on a post that has comments closed. * - * @since unknown + * @since 1.5.0 + * * @param int $comment_post_ID Post ID. */ do_action( 'comment_closed', $comment_post_ID ); - wp_die( __('Sorry, comments are closed for this item.') ); + wp_die( __( 'Sorry, comments are closed for this item.' ), 403 ); } elseif ( 'trash' == $status ) { /** * Fires when a comment is attempted on a trashed post. * * @since 2.9.0 + * * @param int $comment_post_ID Post ID. */ do_action( 'comment_on_trash', $comment_post_ID ); @@ -59,7 +62,8 @@ /** * Fires when a comment is attempted on a post in draft mode. * - * @since unknown + * @since 1.5.1 + * * @param int $comment_post_ID Post ID. */ do_action( 'comment_on_draft', $comment_post_ID ); @@ -68,7 +72,8 @@ /** * Fires when a comment is attempted on a password-protected post. * - * @since unknown + * @since 2.9.0 + * * @param int $comment_post_ID Post ID. */ do_action( 'comment_on_password_protected', $comment_post_ID ); @@ -77,7 +82,8 @@ /** * Fires before a comment is posted. * - * @since unknown + * @since 2.8.0 + * * @param int $comment_post_ID Post ID. */ do_action( 'pre_comment_on_post', $comment_post_ID ); @@ -105,28 +111,35 @@ } } } else { - if ( get_option('comment_registration') || 'private' == $status ) - wp_die( __('Sorry, you must be logged in to post a comment.') ); + if ( get_option( 'comment_registration' ) || 'private' == $status ) { + wp_die( __( 'Sorry, you must be logged in to post a comment.' ), 403 ); + } } $comment_type = ''; if ( get_option('require_name_email') && !$user->exists() ) { - if ( 6 > strlen($comment_author_email) || '' == $comment_author ) - wp_die( __('ERROR: please fill the required fields (name, email).') ); - elseif ( !is_email($comment_author_email)) - wp_die( __('ERROR: please enter a valid email address.') ); + if ( 6 > strlen( $comment_author_email ) || '' == $comment_author ) { + wp_die( __( 'ERROR: please fill the required fields (name, email).' ), 200 ); + } elseif ( ! is_email( $comment_author_email ) ) { + wp_die( __( 'ERROR: please enter a valid email address.' ), 200 ); + } } -if ( '' == $comment_content ) - wp_die( __('ERROR: please type a comment.') ); +if ( '' == $comment_content ) { + wp_die( __( 'ERROR: please type a comment.' ), 200 ); +} $comment_parent = isset($_POST['comment_parent']) ? absint($_POST['comment_parent']) : 0; $commentdata = compact('comment_post_ID', 'comment_author', 'comment_author_email', 'comment_author_url', 'comment_content', 'comment_type', 'comment_parent', 'user_ID'); $comment_id = wp_new_comment( $commentdata ); -$comment = get_comment($comment_id); +if ( ! $comment_id ) { + wp_die( __( "ERROR: The comment could not be saved. Please try again later." ) ); +} + +$comment = get_comment( $comment_id ); /** * Perform other actions when comment cookies are set. @@ -141,9 +154,9 @@ $location = empty($_POST['redirect_to']) ? get_comment_link($comment_id) : $_POST['redirect_to'] . '#comment-' . $comment_id; /** - * The location URI to send commenter after posting. + * Filter the location URI to send the commenter after posting. * - * @since unknown + * @since 2.0.5 * * @param string $location The 'redirect_to' URI sent via $_POST. * @param object $comment Comment object.