Skip to:
Content

bbPress.org

Ticket #2719: 2719.patch

File 2719.patch, 9.7 KB (added by johnjamesjacoby, 7 years ago)
  • src/includes/forums/template.php

     
    21842184        function bbp_get_form_forum_title() {
    21852185
    21862186                // Get _POST data
    2187                 if ( bbp_is_post_request() && isset( $_POST['bbp_forum_title'] ) ) {
     2187                if ( bbp_is_forum_form_post_request() && isset( $_POST['bbp_forum_title'] ) ) {
    21882188                        $forum_title = $_POST['bbp_forum_title'];
    21892189
    21902190                // Get edit data
     
    22212221        function bbp_get_form_forum_content() {
    22222222
    22232223                // Get _POST data
    2224                 if ( bbp_is_post_request() && isset( $_POST['bbp_forum_content'] ) ) {
     2224                if ( bbp_is_forum_form_post_request() && isset( $_POST['bbp_forum_content'] ) ) {
    22252225                        $forum_content = stripslashes( $_POST['bbp_forum_content'] );
    22262226
    22272227                // Get edit data
     
    22592259        function bbp_get_form_forum_parent() {
    22602260
    22612261                // Get _POST data
    2262                 if ( bbp_is_post_request() && isset( $_POST['bbp_forum_id'] ) ) {
     2262                if ( bbp_is_forum_form_post_request() && isset( $_POST['bbp_forum_id'] ) ) {
    22632263                        $forum_parent = $_POST['bbp_forum_id'];
    22642264
    22652265                // Get edit data
     
    22972297        function bbp_get_form_forum_type() {
    22982298
    22992299                // Get _POST data
    2300                 if ( bbp_is_post_request() && isset( $_POST['bbp_forum_type'] ) ) {
     2300                if ( bbp_is_forum_form_post_request() && isset( $_POST['bbp_forum_type'] ) ) {
    23012301                        $forum_type = $_POST['bbp_forum_type'];
    23022302
    23032303                // Get edit data
     
    23352335        function bbp_get_form_forum_visibility() {
    23362336
    23372337                // Get _POST data
    2338                 if ( bbp_is_post_request() && isset( $_POST['bbp_forum_visibility'] ) ) {
     2338                if ( bbp_is_forum_form_post_request() && isset( $_POST['bbp_forum_visibility'] ) ) {
    23392339                        $forum_visibility = $_POST['bbp_forum_visibility'];
    23402340
    23412341                // Get edit data
     
    23772377        function bbp_get_form_forum_subscribed() {
    23782378
    23792379                // Get _POST data
    2380                 if ( bbp_is_post_request() && isset( $_POST['bbp_forum_subscription'] ) ) {
     2380                if ( bbp_is_forum_form_post_request() && isset( $_POST['bbp_forum_subscription'] ) ) {
    23812381                        $forum_subscribed = (bool) $_POST['bbp_forum_subscription'];
    23822382
    23832383                // Get edit data
     
    24642464                if ( empty( $r['selected'] ) ) {
    24652465
    24662466                        // Post value is passed
    2467                         if ( bbp_is_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
     2467                        if ( bbp_is_forum_form_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
    24682468                                $r['selected'] = $_POST[ $r['select_id'] ];
    24692469
    24702470                        // No Post value was passed
     
    25562556                if ( empty( $r['selected'] ) ) {
    25572557
    25582558                        // Post value is passed
    2559                         if ( bbp_is_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
     2559                        if ( bbp_is_forum_form_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
    25602560                                $r['selected'] = $_POST[ $r['select_id'] ];
    25612561
    25622562                        // No Post value was passed
     
    26482648                if ( empty( $r['selected'] ) ) {
    26492649
    26502650                        // Post value is passed
    2651                         if ( bbp_is_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
     2651                        if ( bbp_is_forum_form_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
    26522652                                $r['selected'] = $_POST[ $r['select_id'] ];
    26532653
    26542654                        // No Post value was passed
     
    26882688                return apply_filters( 'bbp_get_form_forum_type_dropdown', ob_get_clean(), $r );
    26892689        }
    26902690
     2691/**
     2692 * Verify if a POST request came from a failed forum attempt.
     2693 *
     2694 * Used to avoid cross-site request forgeries when checking posted forum form
     2695 * content.
     2696 *
     2697 * @see bbp_forum_form_fields()
     2698 *
     2699 * @since bbPress (r5558)
     2700 * @return boolean True if is a post request with valid nonce
     2701 */
     2702function bbp_is_forum_form_post_request() {
     2703
     2704        // Bail if not a post request
     2705        if ( ! bbp_is_post_request() ) {
     2706                return false;
     2707        }
     2708
     2709        // Creating a new topic
     2710        if ( bbp_verify_nonce_request( 'bbp-new-forum' ) ) {
     2711                return true;
     2712        }
     2713
     2714        // Editing an existing topic
     2715        if ( bbp_verify_nonce_request( 'bbp-edit-forum' ) ) {
     2716                return true;
     2717        }
     2718
     2719        return false;
     2720}
     2721
    26912722/** Feeds *********************************************************************/
    26922723
    26932724/**
  • src/includes/replies/template.php

     
    25512551        function bbp_get_form_reply_content() {
    25522552
    25532553                // Get _POST data
    2554                 if ( bbp_is_post_request() && isset( $_POST['bbp_reply_content'] ) ) {
     2554                if ( bbp_is_reply_form_post_request() && isset( $_POST['bbp_reply_content'] ) ) {
    25552555                        $reply_content = stripslashes( $_POST['bbp_reply_content'] );
    25562556
    25572557                // Get edit data
     
    27102710        function bbp_get_form_reply_log_edit() {
    27112711
    27122712                // Get _POST data
    2713                 if ( bbp_is_post_request() && isset( $_POST['bbp_log_reply_edit'] ) ) {
     2713                if ( bbp_is_reply_form_post_request() && isset( $_POST['bbp_log_reply_edit'] ) ) {
    27142714                        $reply_revision = $_POST['bbp_log_reply_edit'];
    27152715
    27162716                // No data
     
    27432743        function bbp_get_form_reply_edit_reason() {
    27442744
    27452745                // Get _POST data
    2746                 if ( bbp_is_post_request() && isset( $_POST['bbp_reply_edit_reason'] ) ) {
     2746                if ( bbp_is_reply_form_post_request() && isset( $_POST['bbp_reply_edit_reason'] ) ) {
    27472747                        $reply_edit_reason = $_POST['bbp_reply_edit_reason'];
    27482748
    27492749                // No data
     
    27972797                if ( empty( $r['selected'] ) ) {
    27982798
    27992799                        // Post value is passed
    2800                         if ( bbp_is_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
     2800                        if ( bbp_is_reply_form_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
    28012801                                $r['selected'] = $_POST[ $r['select_id'] ];
    28022802
    28032803                        // No Post value was passed
     
    28362836                // Return the results
    28372837                return apply_filters( 'bbp_get_form_reply_status_dropdown', ob_get_clean(), $r );
    28382838        }
     2839
     2840/**
     2841 * Verify if a POST request came from a failed reply attempt.
     2842 *
     2843 * Used to avoid cross-site request forgeries when checking posted reply form
     2844 * content.
     2845 *
     2846 * @see bbp_reply_form_fields()
     2847 *
     2848 * @since bbPress (r5558)
     2849 * @return boolean True if is a post request with valid nonce
     2850 */
     2851function bbp_is_reply_form_post_request() {
     2852
     2853        // Bail if not a post request
     2854        if ( ! bbp_is_post_request() ) {
     2855                return false;
     2856        }
     2857
     2858        // Creating a new reply
     2859        if ( bbp_verify_nonce_request( 'bbp-new-reply' ) ) {
     2860                return true;
     2861        }
     2862
     2863        // Editing an existing reply
     2864        if ( bbp_verify_nonce_request( 'bbp-edit-reply' ) ) {
     2865                return true;
     2866        }
     2867
     2868        return false;
     2869}
  • src/includes/topics/template.php

     
    32653265                if ( empty( $r['selected'] ) ) {
    32663266
    32673267                        // Post value is passed
    3268                         if ( bbp_is_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
     3268                        if ( bbp_is_topic_form_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
    32693269                                $r['selected'] = $_POST[ $r['select_id'] ];
    32703270
    32713271                        // No Post value passed
     
    33543354                if ( empty( $r['selected'] ) ) {
    33553355
    33563356                        // Post value is passed
    3357                         if ( bbp_is_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
     3357                        if ( bbp_is_topic_form_post_request() && isset( $_POST[ $r['select_id'] ] ) ) {
    33583358                                $r['selected'] = $_POST[ $r['select_id'] ];
    33593359
    33603360                        // No Post value was passed
     
    38483848        function bbp_get_form_topic_title() {
    38493849
    38503850                // Get _POST data
    3851                 if ( bbp_is_post_request() && isset( $_POST['bbp_topic_title'] ) ) {
     3851                if ( bbp_is_topic_form_post_request() && isset( $_POST['bbp_topic_title'] ) ) {
    38523852                        $topic_title = $_POST['bbp_topic_title'];
    38533853
    38543854                // Get edit data
     
    38853885        function bbp_get_form_topic_content() {
    38863886
    38873887                // Get _POST data
    3888                 if ( bbp_is_post_request() && isset( $_POST['bbp_topic_content'] ) ) {
     3888                if ( bbp_is_topic_form_post_request() && isset( $_POST['bbp_topic_content'] ) ) {
    38893889                        $topic_content = stripslashes( $_POST['bbp_topic_content'] );
    38903890
    38913891                // Get edit data
     
    39323932        function bbp_get_form_topic_tags() {
    39333933
    39343934                // Get _POST data
    3935                 if ( bbp_is_post_request() && isset( $_POST['bbp_topic_tags'] ) ) {
     3935                if ( ( bbp_is_topic_form_post_request() || bbp_is_reply_form_post_request() ) && isset( $_POST['bbp_topic_tags'] ) ) {
    39363936                        $topic_tags = $_POST['bbp_topic_tags'];
    39373937
    39383938                // Get edit data
     
    40154015        function bbp_get_form_topic_forum() {
    40164016
    40174017                // Get _POST data
    4018                 if ( bbp_is_post_request() && isset( $_POST['bbp_forum_id'] ) ) {
     4018                if ( bbp_is_topic_form_post_request() && isset( $_POST['bbp_forum_id'] ) ) {
    40194019                        $topic_forum = (int) $_POST['bbp_forum_id'];
    40204020
    40214021                // Get edit data
     
    40554055        function bbp_get_form_topic_subscribed() {
    40564056
    40574057                // Get _POST data
    4058                 if ( bbp_is_post_request() && isset( $_POST['bbp_topic_subscription'] ) ) {
     4058                if ( bbp_is_topic_form_post_request() && isset( $_POST['bbp_topic_subscription'] ) ) {
    40594059                        $topic_subscribed = (bool) $_POST['bbp_topic_subscription'];
    40604060
    40614061                // Get edit data
     
    41104110        function bbp_get_form_topic_log_edit() {
    41114111
    41124112                // Get _POST data
    4113                 if ( bbp_is_post_request() && isset( $_POST['bbp_log_topic_edit'] ) ) {
     4113                if ( bbp_is_topic_form_post_request() && isset( $_POST['bbp_log_topic_edit'] ) ) {
    41144114                        $topic_revision = (int) $_POST['bbp_log_topic_edit'];
    41154115
    41164116                // No data
     
    41464146        function bbp_get_form_topic_edit_reason() {
    41474147
    41484148                // Get _POST data
    4149                 if ( bbp_is_post_request() && isset( $_POST['bbp_topic_edit_reason'] ) ) {
     4149                if ( bbp_is_topic_form_post_request() && isset( $_POST['bbp_topic_edit_reason'] ) ) {
    41504150                        $topic_edit_reason = $_POST['bbp_topic_edit_reason'];
    41514151
    41524152                // No data
     
    41564156
    41574157                return apply_filters( 'bbp_get_form_topic_edit_reason', esc_attr( $topic_edit_reason ) );
    41584158        }
     4159
     4160/**
     4161 * Verify if a POST request came from a failed topic attempt.
     4162 *
     4163 * Used to avoid cross-site request forgeries when checking posted topic form
     4164 * content.
     4165 *
     4166 * @see bbp_topic_form_fields()
     4167 *
     4168 * @since bbPress (r5558)
     4169 * @return boolean True if is a post request with valid nonce
     4170 */
     4171function bbp_is_topic_form_post_request() {
     4172
     4173        // Bail if not a post request
     4174        if ( ! bbp_is_post_request() ) {
     4175                return false;
     4176        }
     4177
     4178        // Creating a new topic
     4179        if ( bbp_verify_nonce_request( 'bbp-new-topic' ) ) {
     4180                return true;
     4181        }
     4182
     4183        // Editing an existing topic
     4184        if ( bbp_verify_nonce_request( 'bbp-edit-topic' ) ) {
     4185                return true;
     4186        }
     4187
     4188        return false;
     4189}