diff --git src/bp-groups/classes/class-bp-groups-group.php src/bp-groups/classes/class-bp-groups-group.php
index 0add64940..5f79e6fb9 100644
|
|
|
class BP_Groups_Group { |
| 560 | 560 | $mod_ids = BP_Groups_Member::get_group_moderator_ids( $this->id ); |
| 561 | 561 | $mod_ids_plucked = wp_list_pluck( $mod_ids, 'user_id' ); |
| 562 | 562 | |
| 563 | | $admin_mod_users = get_users( array( |
| 564 | | 'include' => array_merge( $admin_ids_plucked, $mod_ids_plucked ), |
| 565 | | 'blog_id' => null, |
| 566 | | ) ); |
| | 563 | $admin_mod_ids = array_merge( $admin_ids_plucked, $mod_ids_plucked ); |
| | 564 | $admin_mod_users = array(); |
| | 565 | |
| | 566 | if ( ! empty( $admin_mod_ids ) ) { |
| | 567 | $admin_mod_users = get_users( array( |
| | 568 | 'include' => $admin_mod_ids, |
| | 569 | 'blog_id' => null, |
| | 570 | ) ); |
| | 571 | } |
| 567 | 572 | |
| 568 | 573 | $admin_objects = $mod_objects = array(); |
| 569 | 574 | foreach ( $admin_mod_users as $admin_mod_user ) { |
diff --git tests/phpunit/testcases/groups/class-bp-groups-group.php tests/phpunit/testcases/groups/class-bp-groups-group.php
index 816b856b3..d6800f9bf 100644
|
|
|
class BP_Tests_BP_Groups_Group_TestCases extends BP_UnitTestCase { |
| 1515 | 1515 | $this->assertEqualSets( array( $user_1->ID ), wp_list_pluck( $group->admins, 'user_id' ) ); |
| 1516 | 1516 | } |
| 1517 | 1517 | |
| | 1518 | /** |
| | 1519 | * @ticket BP7677 |
| | 1520 | * @group rw |
| | 1521 | */ |
| | 1522 | public function test_demoting_sole_admin() { |
| | 1523 | $user = self::factory()->user->create_and_get(); |
| | 1524 | $group = self::factory()->group->create_and_get( array( |
| | 1525 | 'creator_id' => $user->ID, |
| | 1526 | ) ); |
| | 1527 | $member = new BP_Groups_Member( $user->ID, $group->id ); |
| | 1528 | $member->demote(); |
| | 1529 | |
| | 1530 | $this->assertEmpty( $group->admins ); |
| | 1531 | $this->assertEmpty( $group->mods ); |
| | 1532 | } |
| | 1533 | |
| 1518 | 1534 | /** |
| 1519 | 1535 | * @ticket BP5451 |
| 1520 | 1536 | */ |