Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
07/21/2015 02:00:38 PM (9 years ago)
Author:
boonebgorges
Message:

Allow xProfile fields to be restricted to users belonging to one or more member types.

A new metabox on the profile field edit panel allows the administrator to
select the member types to which the field is applicable. Admins can also
choose to have a field apply to users who do not belong to any member type.
Information about a field's member type associations is displayed on the
Users > Profile Fields page, alongside each field name.

During registration, the only fields that are displayed are those that are
unrestricted - that is, those available to all users, regardless of member type
(or lack thereof).

This changeset introduces a number of new methods on BP_XProfile_Field that
developers should use to manipulate member type information:
get_member_types(), set_member_types(), and the static
get_fields_for_member_type(). In addition to member types that have been
explicitly registered, 'null' is a pseudo-type representing users who do not
belong to a member type.

This changeset introduces a blacklist of illegal member type names. By default,
the blacklist includes 'any', 'null', and '_none'. Use the
'bp_member_type_illegal_names' filter to add names to the blacklist.

Props Offereins, boonebgorges, tanner m, imath.
See #5192.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/testcases/members/types.php

    r9819 r10022  
    2222
    2323    /**
     24     * @dataProvider illegal_names
     25     * @ticket BP5192
     26     */
     27    public function test_illegal_names( $name ) {
     28        $this->assertWPError( bp_register_member_type( $name ) );
     29    }
     30
     31    public function illegal_names() {
     32        return array(
     33            array( 'any' ),
     34            array( 'null' ),
     35            array( '_none' ),
     36        );
     37    }
     38
     39    /**
    2440     * @ticket BP6139
    2541     */
Note: See TracChangeset for help on using the changeset viewer.