Changeset 9555
- Timestamp:
- 02/24/2015 01:48:42 PM (10 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/bp-core/admin/bp-core-admin-components.php
r9544 r9555 308 308 } 309 309 310 $current_components = buddypress()->active_components; 310 $current_components = buddypress()->active_components; 311 $packaged_components = array_flip( bp_core_get_packaged_component_ids() ); 312 $custom_active_components = array_diff_key( $current_components, $packaged_components ); 311 313 312 314 switch ( $current_action ) { … … 316 318 if ( ! isset( $submitted[ $retired_component ] ) ) { 317 319 unset( $current_components[ $retired_component ] ); 320 321 // Make sure custom components does not contain a retired component 322 if ( isset( $custom_active_components[ $retired_component ] ) ) { 323 unset( $custom_active_components[ $retired_component ] ); 324 } 318 325 } 319 326 } … … 331 338 } 332 339 333 return $components; 340 // Active components is the list of packaged and custom components 341 return array_merge( $components, $custom_active_components ); 334 342 } 335 343 -
trunk/tests/phpunit/testcases/admin/functions.php
r9478 r9555 39 39 } 40 40 41 /** 42 * @group bp_core_admin_get_active_components_from_submitted_settings 43 */ 41 44 public function test_bp_core_admin_get_active_components_from_submitted_settings() { 42 45 $get_action = isset( $_GET['action'] ) ? $_GET['action'] : null; … … 123 126 124 127 /** 128 * @group BP6244 129 * @group bp_core_admin_get_active_components_from_submitted_settings 130 */ 131 public function test_bp_core_admin_get_active_components_from_submitted_settings_should_keep_custom_component_directory_page() { 132 $bp = buddypress(); 133 $reset_active_components = $bp->active_components; 134 135 // Create and activate the foo component 136 $bp->foo = new BP_Component; 137 $bp->foo->id = 'foo'; 138 $bp->foo->slug = 'foo'; 139 $bp->foo->name = 'Foo'; 140 $bp->active_components[ $bp->foo->id ] = 1; 141 $new_page_ids = array( $bp->foo->id => $this->factory->post->create( array( 142 'post_type' => 'page', 143 'post_title' => $bp->foo->name, 144 'post_name' => $bp->foo->slug, 145 ) ) ); 146 147 $page_ids = array_merge( $new_page_ids, (array) bp_core_get_directory_page_ids() ); 148 bp_core_update_directory_page_ids( $page_ids ); 149 150 $bp->active_components = bp_core_admin_get_active_components_from_submitted_settings( $reset_active_components ); 151 bp_core_add_page_mappings( $bp->active_components ); 152 153 $this->assertContains( $bp->foo->id, array_keys( bp_core_get_directory_page_ids() ) ); 154 155 // Reset buddypress() vars 156 $bp->active_components = $reset_active_components; 157 } 158 159 /** 125 160 * @group bp_core_activation_notice 126 161 */
Note: See TracChangeset
for help on using the changeset viewer.