Skip to:
Content

bbPress.org

Changeset 6415


Ignore:
Timestamp:
05/19/2017 03:25:37 AM (8 years ago)
Author:
johnjamesjacoby
Message:

in_array(): be strict whenever possible.

Use wp_parse_id_list() on certain array values to ensure proper results.

Location:
trunk/src/includes
Files:
18 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/includes/admin/common.php

    r6284 r6415  
    106106
    107107        // Skip our menu items
    108         } elseif ( ! in_array( $item, $custom_menus ) ) {
     108        } elseif ( ! in_array( $item, $custom_menus, true ) ) {
    109109            $bbp_menu_order[] = $item;
    110110        }
     
    247247
    248248    // This tweaks the Tools subnav menu to only show one bbPress menu item
    249     if ( ! in_array( $plugin_page, array( 'bbp-settings' ) ) ) {
     249    if ( ! in_array( $plugin_page, array( 'bbp-settings' ), true ) ) {
    250250        $submenu_file = 'bbp-repair';
    251251    }
  • trunk/src/includes/admin/converter.php

    r6284 r6415  
    981981
    982982                    // Doing some joining
    983                     if ( ! in_array( $item['from_tablename'], $from_tables ) && in_array( $item['join_tablename'], $from_tables ) ) {
     983                    if ( ! in_array( $item['from_tablename'], $from_tables, true ) && in_array( $item['join_tablename'], $from_tables, true ) ) {
    984984                        $from_tablename .= ' ' . $item['join_type'] . ' JOIN ' . $this->opdb->prefix . $item['from_tablename'] . ' AS ' . $item['from_tablename'] . ' ' . $item['join_expression'];
    985985                    }
     
    10411041                            // This row has a destination that matches one of the
    10421042                            // columns in this table.
    1043                             if ( in_array( $row['to_fieldname'], $tablefield_array ) ) {
     1043                            if ( in_array( $row['to_fieldname'], $tablefield_array, true ) ) {
    10441044
    10451045                                // Allows us to set default fields.
  • trunk/src/includes/admin/tools/common.php

    r6320 r6415  
    191191    foreach ( $plucked as $components ) {
    192192        foreach ( $components as $component ) {
    193             if ( in_array( $component, $retval ) ) {
     193            if ( in_array( $component, $retval, true ) ) {
    194194                continue;
    195195            }
     
    354354        // Component filter
    355355        if ( ! empty( $component ) ) {
    356             if ( ! in_array( $component, $tool['components'] ) ) {
     356            if ( ! in_array( $component, $tool['components'], true ) ) {
    357357                continue;
    358358            }
  • trunk/src/includes/admin/users.php

    r6413 r6415  
    239239
    240240            // Only keymasters can set other keymasters
    241             if ( in_array( bbp_get_keymaster_role(), array( $user_role, $new_role ) ) && ! bbp_is_user_keymaster() ) {
     241            if ( in_array( bbp_get_keymaster_role(), array( $user_role, $new_role ), true ) && ! bbp_is_user_keymaster() ) {
    242242                continue;
    243243            }
  • trunk/src/includes/common/functions.php

    r6400 r6415  
    138138
    139139    // Post is not a topic or reply, return
    140     if ( ! in_array( $data['post_type'], array( bbp_get_topic_post_type(), bbp_get_reply_post_type() ) ) ) {
     140    if ( ! in_array( $data['post_type'], array( bbp_get_topic_post_type(), bbp_get_reply_post_type() ), true ) ) {
    141141        return $data;
    142142    }
     
    14081408
    14091409    // Noop if WP core supports this already
    1410     if ( in_array( 'post_parent__in', $wp->private_query_vars ) ) {
     1410    if ( in_array( 'post_parent__in', $wp->private_query_vars, true ) ) {
    14111411        return $where;
    14121412    }
  • trunk/src/includes/common/shortcodes.php

    r6253 r6415  
    279279     * @since 2.0.0 bbPress (r3031)
    280280     *
    281      * @uses bbp_get_hidden_forum_ids()
    282281     * @uses get_template_part()
    283282     * @return string
  • trunk/src/includes/common/template.php

    r6365 r6415  
    445445        bbp_get_topic_post_type(),
    446446        bbp_get_reply_post_type()
    447     ) ) ) {
     447    ), true ) ) {
    448448        $retval = true;
    449449    }
  • trunk/src/includes/core/update.php

    r6339 r6415  
    6868
    6969    // Bail if not activating
    70     if ( empty( $action ) || ! in_array( $action, array( 'activate', 'activate-selected' ) ) ) {
     70    if ( empty( $action ) || ! in_array( $action, array( 'activate', 'activate-selected', true ) ) ) {
    7171        return false;
    7272    }
     
    9090
    9191    // Is bbPress being activated?
    92     return in_array( $basename, $plugins );
     92    return in_array( $basename, $plugins, true );
    9393}
    9494
     
    118118
    119119    // Bail if not deactivating
    120     if ( empty( $action ) || ! in_array( $action, array( 'deactivate', 'deactivate-selected' ) ) ) {
     120    if ( empty( $action ) || ! in_array( $action, array( 'deactivate', 'deactivate-selected' ), true ) ) {
    121121        return false;
    122122    }
     
    140140
    141141    // Is bbPress being deactivated?
    142     return in_array( $basename, $plugins );
     142    return in_array( $basename, $plugins, true );
    143143}
    144144
  • trunk/src/includes/extend/akismet.php

    r6272 r6415  
    441441
    442442            // Key should not be ignored
    443             if ( ! in_array( $key, $ignore ) && is_string( $value ) ) {
     443            if ( ! in_array( $key, $ignore, true ) && is_string( $value ) ) {
    444444                $post_data[ $key ] = $value;
    445445
  • trunk/src/includes/extend/buddypress/activity.php

    r6391 r6415  
    366366
    367367            // Check if this activity stream action is disabled
    368             if ( in_array( $action_name, $disabled_actions ) ) {
     368            if ( in_array( $action_name, $disabled_actions, true ) ) {
    369369                $can_comment = false;
    370370            }
     
    392392
    393393        // Check if this activity stream action is directly linked
    394         if ( in_array( $activity_object->type, $disabled_actions ) ) {
     394        if ( in_array( $activity_object->type, $disabled_actions, true ) ) {
    395395            $link = $activity_object->primary_link;
    396396        }
  • trunk/src/includes/extend/buddypress/functions.php

    r6370 r6415  
    341341    }
    342342
    343     // Make sure result is an array
    344     if ( ! is_array( $forum_ids ) ) {
    345         $forum_ids = (array) $forum_ids;
    346     }
    347 
    348     // Trim out any empty array items
    349     $forum_ids = array_filter( $forum_ids );
    350 
     343    // Make sure result is an array of ints
     344    $forum_ids = array_filter( wp_parse_id_list( $forum_ids ) );
     345
     346    // Filter & return
    351347    return (array) apply_filters( 'bbp_get_group_forum_ids', $forum_ids, $group_id );
    352348}
     
    373369    }
    374370
    375     // Make sure result is an array
    376     if ( ! is_array( $group_ids ) ) {
    377         $group_ids = (array) $group_ids;
    378     }
    379 
    380     // Trim out any empty array items
    381     $group_ids = array_filter( $group_ids );
    382 
     371    // Make sure result is an array of ints
     372    $group_ids = array_filter( wp_parse_id_list( $group_ids ) );
     373
     374    // Filter & return
    383375    return (array) apply_filters( 'bbp_get_forum_group_ids', $group_ids, $forum_id );
    384376}
     
    398390
    399391    // Trim out any empties
    400     $forum_ids = array_filter( $forum_ids );
     392    $forum_ids = array_filter( wp_parse_id_list( $forum_ids ) );
    401393
    402394    // Get the forums
     
    414406
    415407    // Trim out any empties
    416     $group_ids = array_filter( $group_ids );
     408    $group_ids = array_filter( wp_parse_id_list( $group_ids ) );
    417409
    418410    // Get the forums
     
    440432
    441433    // Maybe update the groups forums
    442     if ( ! in_array( $group_id, $group_ids ) ) {
     434    if ( ! in_array( $group_id, $group_ids, true ) ) {
    443435        $group_ids[] = $group_id;
    444436        return bbp_update_forum_group_ids( $forum_id, $group_ids );
     
    466458
    467459    // Maybe update the groups forums
    468     if ( ! in_array( $forum_id, $forum_ids ) ) {
     460    if ( ! in_array( $forum_id, $forum_ids, true ) ) {
    469461        $forum_ids[] = $forum_id;
    470462        return bbp_update_group_forum_ids( $group_id, $forum_ids );
     
    492484
    493485    // Maybe update the groups forums
    494     if ( in_array( $group_id, $group_ids ) ) {
     486    if ( in_array( $group_id, $group_ids, true ) ) {
    495487        $group_ids = array_diff( array_values( $group_ids ), (array) $group_id );
    496488        return bbp_update_forum_group_ids( $forum_id, $group_ids );
     
    518510
    519511    // Maybe update the groups forums
    520     if ( in_array( $forum_id, $forum_ids ) ) {
     512    if ( in_array( $forum_id, $forum_ids, true ) ) {
    521513        $forum_ids = array_diff( array_values( $forum_ids ), (array) $forum_id );
    522514        return bbp_update_group_forum_ids( $group_id, $forum_ids );
     
    541533
    542534    // Loop through forums and remove this group from each one
    543     foreach ( (array) $forum_ids as $forum_id ) {
     535    foreach ( $forum_ids as $forum_id ) {
    544536        bbp_remove_group_id_from_forum( $group_id, $forum_id );
    545537    }
     
    559551
    560552    // Loop through groups and remove this forum from each one
    561     foreach ( (array) $group_ids as $group_id ) {
     553    foreach ( $group_ids as $group_id ) {
    562554        bbp_remove_forum_id_from_group( $forum_id, $group_id );
    563555    }
  • trunk/src/includes/forums/functions.php

    r6414 r6415  
    643643    /** Forum Status **********************************************************/
    644644
    645     if ( ! empty( $_POST['bbp_forum_status'] ) && in_array( $_POST['bbp_forum_status'], array( 'open', 'closed' ) ) ) {
     645    if ( ! empty( $_POST['bbp_forum_status'] ) && in_array( $_POST['bbp_forum_status'], array( 'open', 'closed' ), true ) ) {
    646646        if ( 'closed' === $_POST['bbp_forum_status'] && ! bbp_is_forum_closed( $forum_id, false ) ) {
    647647            bbp_close_forum( $forum_id );
     
    655655    /** Forum Type ************************************************************/
    656656
    657     if ( ! empty( $_POST['bbp_forum_type'] ) && in_array( $_POST['bbp_forum_type'], array( 'forum', 'category' ) ) ) {
     657    if ( ! empty( $_POST['bbp_forum_type'] ) && in_array( $_POST['bbp_forum_type'], array( 'forum', 'category' ), true ) ) {
    658658        if ( 'category' === $_POST['bbp_forum_type'] && ! bbp_is_forum_category( $forum_id ) ) {
    659659            bbp_categorize_forum( $forum_id );
     
    667667    /** Forum Visibility ******************************************************/
    668668
    669     if ( ! empty( $_POST['bbp_forum_visibility'] ) && in_array( $_POST['bbp_forum_visibility'], array_keys( bbp_get_forum_visibilities() ) ) ) {
     669    if ( ! empty( $_POST['bbp_forum_visibility'] ) && in_array( $_POST['bbp_forum_visibility'], array_keys( bbp_get_forum_visibilities() ), true ) ) {
    670670
    671671        // Get forums current visibility
     
    860860
    861861    // Find this forum in the array
    862     if ( in_array( $forum_id, $private ) ) {
     862    if ( in_array( $forum_id, $private, true ) ) {
    863863
    864864        $offset = array_search( $forum_id, $private );
     
    875875
    876876    // Find this forum in the array
    877     if ( in_array( $forum_id, $hidden ) ) {
     877    if ( in_array( $forum_id, $hidden, true ) ) {
    878878
    879879        $offset = array_search( $forum_id, $hidden );
     
    921921
    922922        // Find this forum in the array
    923         if ( in_array( $forum_id, $hidden ) ) {
     923        if ( in_array( $forum_id, $hidden, true ) ) {
    924924
    925925            $offset = array_search( $forum_id, $hidden );
     
    971971
    972972        // Find this forum in the array
    973         if ( in_array( $forum_id, $private ) ) {
     973        if ( in_array( $forum_id, $private, true ) ) {
    974974
    975975            $offset = array_search( $forum_id, $private );
     
    20472047 *
    20482048 * @uses get_option() Returns the unserialized array of hidden forum ids
     2049 * @uses wp_parse_id_list() Make sure array items are ints
    20492050 * @uses apply_filters() Calls 'bbp_forum_query_topic_ids' with the topic ids
    20502051 *                        and forum id
     
    20522053function bbp_get_hidden_forum_ids() {
    20532054    $forum_ids = get_option( '_bbp_hidden_forums', array() );
     2055    $forum_ids = ! empty( $forum_ids )
     2056        ? wp_parse_id_list( $forum_ids )
     2057        : array();
    20542058
    20552059    return apply_filters( 'bbp_get_hidden_forum_ids', (array) $forum_ids );
     
    20642068 *
    20652069 * @uses get_option() Returns the unserialized array of private forum ids
     2070 * @uses wp_parse_id_list() Make sure array items are ints
    20662071 * @uses apply_filters() Calls 'bbp_forum_query_topic_ids' with the topic ids
    20672072 *                        and forum id
     
    20692074function bbp_get_private_forum_ids() {
    20702075    $forum_ids = get_option( '_bbp_private_forums', array() );
     2076    $forum_ids = ! empty( $forum_ids )
     2077        ? wp_parse_id_list( $forum_ids )
     2078        : array();
    20712079
    20722080    return apply_filters( 'bbp_get_private_forum_ids', (array) $forum_ids );
  • trunk/src/includes/replies/functions.php

    r6400 r6415  
    12131213
    12141214                // Loop detection: If the ancestor has been seen before, break.
    1215                 if ( empty( $ancestor->post_parent ) || ( $grampy_id === $reply_id ) || in_array( $grampy_id, $ancestors ) ) {
     1215                if ( empty( $ancestor->post_parent ) || ( $grampy_id === $reply_id ) || in_array( $grampy_id, $ancestors, true ) ) {
    12161216                    break;
    12171217                }
     
    13521352
    13531353    // Invalid move option
    1354     if ( empty( $move_option ) || ! in_array( $move_option, array( 'existing', 'topic' ) ) ) {
     1354    if ( empty( $move_option ) || ! in_array( $move_option, array( 'existing', 'topic' ), true ) ) {
    13551355        bbp_add_error( 'bbp_move_reply_option', __( '<strong>ERROR</strong>: You need to choose a valid move option.', 'bbpress' ) );
    13561356
  • trunk/src/includes/replies/template.php

    r6414 r6415  
    19371937        // See if links need to be unset
    19381938        $reply_status = bbp_get_reply_status( $r['id'] );
    1939         if ( in_array( $reply_status, array( bbp_get_spam_status_id(), bbp_get_trash_status_id(), bbp_get_pending_status_id() ) ) ) {
     1939        if ( in_array( $reply_status, array( bbp_get_spam_status_id(), bbp_get_trash_status_id(), bbp_get_pending_status_id() ), true ) ) {
    19401940
    19411941            // Spam link shouldn't be visible on trashed topics
  • trunk/src/includes/topics/functions.php

    r6401 r6415  
    296296
    297297    // Check a whitelist of possible topic status ID's
    298     } elseif ( ! empty( $_POST['bbp_topic_status'] ) && in_array( $_POST['bbp_topic_status'], array_keys( $topic_statuses ) ) ) {
     298    } elseif ( ! empty( $_POST['bbp_topic_status'] ) && in_array( $_POST['bbp_topic_status'], array_keys( $topic_statuses ), true ) ) {
    299299        $topic_status = sanitize_key( $_POST['bbp_topic_status'] );
    300300
     
    615615
    616616    // Check a whitelist of possible topic status ID's
    617     } elseif ( ! empty( $_POST['bbp_topic_status'] ) && in_array( $_POST['bbp_topic_status'], array_keys( $topic_statuses ) ) ) {
     617    } elseif ( ! empty( $_POST['bbp_topic_status'] ) && in_array( $_POST['bbp_topic_status'], array_keys( $topic_statuses ), true ) ) {
    618618        $topic_status = sanitize_key( $_POST['bbp_topic_status'] );
    619619
     
    11221122
    11231123    // Make sure we're not walking twice
    1124     if ( ! in_array( $new_forum_id, $old_forum_ancestors ) ) {
     1124    if ( ! in_array( $new_forum_id, $old_forum_ancestors, true ) ) {
    11251125
    11261126        // Get topic ancestors
     
    15331533
    15341534    // Invalid split option
    1535     if ( empty( $split_option ) || ! in_array( $split_option, array( 'existing', 'reply' ) ) ) {
     1535    if ( empty( $split_option ) || ! in_array( $split_option, array( 'existing', 'reply' ), true ) ) {
    15361536        bbp_add_error( 'bbp_split_topic_option', __( '<strong>ERROR</strong>: You need to choose a valid split option.', 'bbpress' ) );
    15371537
     
    17251725
    17261726            // Not a reply to a reply that moved over
    1727             if ( ! in_array( $reply_to, $reply_ids ) ) {
     1727            if ( ! in_array( $reply_to, $reply_ids, true ) ) {
    17281728                bbp_update_reply_to( $reply->ID, 0 );
    17291729            }
     
    18521852
    18531853    // Bail if actions aren't meant for this function
    1854     if ( ! in_array( $action, $possible_actions ) ) {
     1854    if ( ! in_array( $action, $possible_actions, true ) ) {
    18551855        return;
    18561856    }
     
    20872087    $stickies = ( empty( $stickies ) || ! is_array( $stickies ) )
    20882088        ? array()
    2089         : $stickies;
     2089        : wp_parse_id_list( $stickies );
    20902090
    20912091    // Filter and return
     
    21102110    $stickies = ( empty( $stickies ) || ! is_array( $stickies ) )
    21112111        ? array()
    2112         : $stickies;
     2112        : wp_parse_id_list( $stickies );
    21132113
    21142114    // Filter and return
     
    36543654    if ( empty( $stickies ) ) {
    36553655        $success = true;
    3656     } elseif ( ! in_array( $topic_id, $stickies ) ) {
     3656    } elseif ( ! in_array( $topic_id, $stickies, true ) ) {
    36573657        $success = true;
    36583658    } elseif ( false === $offset ) {
  • trunk/src/includes/topics/template.php

    r6414 r6415  
    10811081    $forum_id = bbp_get_topic_forum_id( $topic_id );
    10821082    $stickies = bbp_get_stickies( $forum_id );
    1083     $retval   = in_array( $topic_id, $stickies );
     1083    $retval   = in_array( $topic_id, $stickies, true );
    10841084
    10851085    // Maybe check super stickies
  • trunk/src/includes/users/functions.php

    r6407 r6415  
    675675
    676676    // Bail if actions aren't meant for this function
    677     if ( ! in_array( $action, $possible_actions ) ) {
     677    if ( ! in_array( $action, $possible_actions, true ) ) {
    678678        return;
    679679    }
     
    13341334
    13351335    // Bail if actions aren't meant for this function
    1336     if ( ! in_array( $action, $possible_actions ) ) {
     1336    if ( ! in_array( $action, $possible_actions, true ) ) {
    13371337        return;
    13381338    }
     
    14411441
    14421442    // Bail if actions aren't meant for this function
    1443     if ( ! in_array( $action, $possible_actions ) ) {
     1443    if ( ! in_array( $action, $possible_actions, true ) ) {
    14441444        return;
    14451445    }
     
    23212321
    23222322    // Bail if not editing or displaying (maybe we'll do more here later)
    2323     if ( ! in_array( $context, array( 'edit', 'display' ) ) ) {
     2323    if ( ! in_array( $context, array( 'edit', 'display' ), true ) ) {
    23242324        return $value;
    23252325    }
  • trunk/src/includes/users/template.php

    r6414 r6415  
    15761576
    15771577    // Only add this if it isn't duplicated elsewhere
    1578     if ( ! in_array( $bbp->displayed_user->display_name, $public_display ) ) {
     1578    if ( ! in_array( $bbp->displayed_user->display_name, $public_display, true ) ) {
    15791579        $public_display = array( 'display_displayname' => $bbp->displayed_user->display_name ) + $public_display;
    15801580    }
     
    18701870
    18711871    // Prompt user to check their email
    1872     } elseif ( ! empty( $_GET['checkemail'] ) && in_array( $_GET['checkemail'], array( 'confirm', 'newpass', 'registered' ) ) ) {
     1872    } elseif ( ! empty( $_GET['checkemail'] ) && in_array( $_GET['checkemail'], array( 'confirm', 'newpass', 'registered' ), true ) ) {
    18731873
    18741874        switch ( $_GET['checkemail'] ) {
Note: See TracChangeset for help on using the changeset viewer.