Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
08/30/2011 05:25:50 AM (14 years ago)
Author:
johnjamesjacoby
Message:

Sanity checks in bp_get_member_profile_data() to prevent notices if used outside of $members_template scope.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/bp-members/bp-members-template.php

    r5030 r5059  
    598598}
    599599    function bp_get_member_profile_data( $args = '' ) {
    600         global $members_template;
     600        global $bp, $members_template;
    601601
    602602        if ( !bp_is_active( 'xprofile' ) )
    603603            return false;
    604604
     605        // Declare local variables
     606        $data    = false;
     607        $user_id = 0;
     608
     609        // Guess at default $user_id
     610        if ( !empty( $members_template->member->id ) )
     611            $user_id = $members_template->member->id;
     612        elseif ( !empty( $bp->displayed_user->id ) )
     613            $user_id = $bp->displayed_user->id;
     614
    605615        $defaults = array(
    606             'field' => false, // Field name
     616            'field'   => false,   // Field name
     617            'user_id' => $user_id
    607618        );
    608619
     
    612623        // Populate the user if it hasn't been already.
    613624        if ( empty( $members_template->member->profile_data ) && method_exists( 'BP_XProfile_ProfileData', 'get_all_for_user' ) )
    614             $members_template->member->profile_data = BP_XProfile_ProfileData::get_all_for_user( $members_template->member->id );
    615 
    616         $data = xprofile_format_profile_field( $members_template->member->profile_data[$field]['field_type'], $members_template->member->profile_data[$field]['field_data'] );
     625            $members_template->member->profile_data = BP_XProfile_ProfileData::get_all_for_user( $user_id );
     626
     627        // Get the field data if there is data to get
     628        if ( !empty( $members_template->member->profile_data ) )
     629            $data = xprofile_format_profile_field( $members_template->member->profile_data[$field]['field_type'], $members_template->member->profile_data[$field]['field_data'] );
    617630
    618631        return apply_filters( 'bp_get_member_profile_data', $data );
Note: See TracChangeset for help on using the changeset viewer.