Changeset 12697
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/bp-xprofile/bp-xprofile-functions.php
r12694 r12697 455 455 // For certain fields, only certain parameters are acceptable, so add them to the list of allowed values. 456 456 if ( $field_type_obj->supports_options ) { 457 $field_type_obj->set_ whitelist_values( wp_list_pluck( $field->get_children(), 'name' ) );457 $field_type_obj->set_allowed_values( wp_list_pluck( $field->get_children(), 'name' ) ); 458 458 } 459 459 -
trunk/src/bp-xprofile/classes/class-bp-xprofile-field-type.php
r12694 r12697 32 32 * @var array Field type allowed values. 33 33 */ 34 protected $validation_ whitelist= array();34 protected $validation_allowed_values = array(); 35 35 36 36 /** … … 154 154 155 155 /** 156 * Add a value to this type's whitelist that profile data will be asserted against. 156 * Add a value to this type's list of allowed values that profile data will be asserted against. 157 * 158 * @since 2.0.0 159 * @deprecated 7.0.0 Use set_allowed_values() instead. 160 * 161 * @param string|array $values Whitelisted values. 162 * @return BP_XProfile_Field_Type 163 */ 164 public function set_whitelist_values( $values ) { 165 _deprecated_function( __METHOD__, '7.0.0', 'BP_XProfile_Field_Type::set_allowed_values()' ); 166 $this->set_allowed_values( $values ); 167 } 168 169 /** 170 * Add a value to this type's list of allowed values that profile data will be asserted against. 157 171 * 158 172 * You can call this method multiple times to set multiple formats. When validation is performed, 159 173 * it's successful as long as the new value matches any one of the registered formats. 160 174 * 161 * @since 2.0.0162 * 163 * @param string|array $values Whitelisted values.175 * @since 7.0.0 176 * 177 * @param string|array $values Allowed values. 164 178 * @return BP_XProfile_Field_Type 165 179 */ 166 public function set_ whitelist_values( $values ) {180 public function set_allowed_values( $values ) { 167 181 foreach ( (array) $values as $value ) { 168 182 169 183 /** 170 * Filters values for field type's whitelistthat profile data will be asserted against.184 * Filters values for field type's list of allowed values that profile data will be asserted against. 171 185 * 172 186 * @since 2.0.0 187 * @deprecated 7.0.0 Use 'bp_xprofile_field_type_set_allowed_values' instead. 173 188 * 174 189 * @param string $value Field value. … … 176 191 * @param BP_XProfile_Field_Type $this Current instance of the BP_XProfile_Field_Type class. 177 192 */ 178 $this->validation_whitelist[] = apply_filters( 'bp_xprofile_field_type_set_whitelist_values', $value, $values, $this ); 193 $this->validation_allowed_values[] = apply_filters_deprecated( 'bp_xprofile_field_type_set_whitelist_values', array( $value, $values, $this ), '7.0.0', 'bp_xprofile_field_type_set_allowed_values' ); 194 195 /** 196 * Filters values for field type's list of allowed values that profile data will be asserted against. 197 * 198 * @since 7.0.0 199 * 200 * @param string $value Field value. 201 * @param array $values Original array of values. 202 * @param BP_XProfile_Field_Type $this Current instance of the BP_XProfile_Field_Type class. 203 */ 204 $this->validation_allowed_values[] = apply_filters( 'bp_xprofile_field_type_set_allowed_values', $value, $values, $this ); 179 205 } 180 206 … … 215 241 } 216 242 217 // If there's a whitelist set, make sure that each value is a whitelisted value.218 if ( ( true === $validated ) && ! empty( $values ) && ! empty( $this->validation_ whitelist) ) {243 // If there's a list of allowed values, make sure that each value is on that list. 244 if ( ( true === $validated ) && ! empty( $values ) && ! empty( $this->validation_allowed_values ) ) { 219 245 foreach ( (array) $values as $value ) { 220 if ( ! in_array( $value, $this->validation_ whitelist, true ) ) {246 if ( ! in_array( $value, $this->validation_allowed_values, true ) ) { 221 247 $validated = false; 222 248 break; -
trunk/tests/phpunit/testcases/xprofile/class-bp-xprofile-field-type.php
r11849 r12697 25 25 } 26 26 27 public function test_textbox_validate_ whitelisted_string() {27 public function test_textbox_validate_allowed_string() { 28 28 $field = bp_xprofile_create_field_type( 'textbox' ); 29 29 30 30 $this->assertTrue( $field->is_valid( 'a string' ) ); 31 $this->assertFalse( $field->set_ whitelist_values( 'pizza' )->is_valid( 'pasta' ) );31 $this->assertFalse( $field->set_allowed_values( 'pizza' )->is_valid( 'pasta' ) ); 32 32 $this->assertTrue( $field->is_valid( 'pizza' ) ); 33 33 } 34 34 35 public function test_multiselectbox_validate_ whitelisted_array() {35 public function test_multiselectbox_validate_allowed_array() { 36 36 $field = bp_xprofile_create_field_type( 'multiselectbox' ); 37 $field->set_ whitelist_values( array( 'cheese', 'pepporoni' ) );37 $field->set_allowed_values( array( 'cheese', 'pepporoni' ) ); 38 38 39 39 $this->assertTrue( $field->is_valid( array( 'cheese', 'pepporoni' ) ) ); … … 45 45 public function test_multiselectbox_validate_null_value() { 46 46 $field = bp_xprofile_create_field_type( 'multiselectbox' ); 47 $field->set_ whitelist_values( array( 'cheese', 'pepporoni' ) );47 $field->set_allowed_values( array( 'cheese', 'pepporoni' ) ); 48 48 49 49 $this->assertFalse( $field->is_valid( array( '' ) ) ); … … 99 99 } 100 100 101 public function test_number_validate_ whitelisted_array() {101 public function test_number_validate_allowed_array() { 102 102 $field = bp_xprofile_create_field_type( 'number' ); 103 $field->set_ whitelist_values( array( 123, 456 ) );103 $field->set_allowed_values( array( 123, 456 ) ); 104 104 105 105 $this->assertTrue( $field->is_valid( array( 123 ) ) ); … … 109 109 } 110 110 111 public function test_radiobutton_validate_ whitelisted_array() {111 public function test_radiobutton_validate_allowed_array() { 112 112 $field = bp_xprofile_create_field_type( 'radio' ); 113 $field->set_ whitelist_values( array( 'cheese', 'pepporoni' ) );113 $field->set_allowed_values( array( 'cheese', 'pepporoni' ) ); 114 114 115 115 $this->assertTrue( $field->is_valid( array( 'cheese', 'pepporoni' ) ) ); … … 120 120 } 121 121 122 public function test_radiobutton_do_not_validate_empty_items_in_ whitelist() {122 public function test_radiobutton_do_not_validate_empty_items_in_allowed_list() { 123 123 $field = bp_xprofile_create_field_type( 'radio' ); 124 $field->set_ whitelist_values( array( '' ) );124 $field->set_allowed_values( array( '' ) ); 125 125 126 126 $this->assertFalse( $field->is_valid( array( '' ) ) ); 127 127 } 128 128 129 public function test_checkbox_validate_ whitelisted_array() {129 public function test_checkbox_validate_allowed_array() { 130 130 $field = bp_xprofile_create_field_type( 'checkbox' ); 131 $field->set_ whitelist_values( array( 'cheese', 'pepporoni' ) );131 $field->set_allowed_values( array( 'cheese', 'pepporoni' ) ); 132 132 133 133 $this->assertTrue( $field->is_valid( array( 'cheese', 'pepporoni' ) ) ); … … 140 140 public function test_checkbox_validate_null_value() { 141 141 $field = bp_xprofile_create_field_type( 'checkbox' ); 142 $field->set_ whitelist_values( array( 'cheese', 'pepporoni' ) );142 $field->set_allowed_values( array( 'cheese', 'pepporoni' ) ); 143 143 144 144 $this->assertFalse( $field->is_valid( array( '' ) ) );
Note: See TracChangeset
for help on using the changeset viewer.