Changeset 10515
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/bp-activity/bp-activity-functions.php
r10457 r10515 385 385 'position' => $position, 386 386 ), $component_id, $type, $description, $format_callback, $label, $context ); 387 388 // Sort the actions of the affected component. 389 $action_array = (array) $bp->activity->actions->{$component_id}; 390 $action_array = bp_sort_by_key( $action_array, 'position', 'num' ); 391 392 // Restore keys. 393 $bp->activity->actions->{$component_id} = new stdClass; 394 foreach ( $action_array as $key_ordered ) { 395 $bp->activity->actions->{$component_id}->{$key_ordered['key']} = $key_ordered; 396 } 387 397 388 398 return true; … … 571 581 $post_type->position 572 582 ); 573 }574 }575 576 // Sort the actions by their position within each component.577 foreach ( $bp->activity->actions as $component => $actions ) {578 $actions = (array) $actions;579 $temp = bp_sort_by_key( $actions, 'position', 'num' );580 581 // Restore keys.582 $bp->activity->actions->{$component} = new stdClass;583 foreach ( $temp as $key_ordered ) {584 $bp->activity->actions->{$component}->{$key_ordered['key']} = $key_ordered;585 583 } 586 584 } -
trunk/tests/phpunit/testcases/activity/functions.php
r10412 r10515 870 870 } 871 871 872 /**873 * @group activity_action874 * @group bp_activity_get_actions875 */876 public function test_bp_activity_get_actions_should_sort_by_position() {877 $old_actions = bp_activity_get_actions();878 buddypress()->activity->actions = new stdClass;879 880 register_post_type( 'foo5', array(881 'public' => true,882 'supports' => array( 'buddypress-activity' ),883 'bp_activity' => array(884 'component_id' => 'foo',885 'action_id' => 'foo_bar_5',886 'position' => 5,887 ),888 ) );889 890 register_post_type( 'foo50', array(891 'public' => true,892 'supports' => array( 'buddypress-activity' ),893 'bp_activity' => array(894 'component_id' => 'foo',895 'action_id' => 'foo_bar_50',896 'position' => 50,897 ),898 ) );899 900 register_post_type( 'foo25', array(901 'public' => true,902 'supports' => array( 'buddypress-activity' ),903 'bp_activity' => array(904 'component_id' => 'foo',905 'action_id' => 'foo_bar_25',906 'position' => 25,907 ),908 ) );909 910 $actions = bp_activity_get_actions();911 912 $expected = array(913 'foo_bar_5',914 'foo_bar_25',915 'foo_bar_50',916 );917 $foo_actions = (array) $actions->foo;918 $this->assertEquals( $expected, array_values( wp_list_pluck( $foo_actions, 'key' ) ) );919 920 buddypress()->activity->actions = $old_actions;921 }922 872 923 873 /**
Note: See TracChangeset
for help on using the changeset viewer.