/** * Remove a member from a group. * * @param int $user_id ID of the user. * @param int $group_id ID of the group. * * @return bool True on success, false on failure. */ function groups_remove_member($user_id, $group_id) { if (!bp_is_item_admin()) { // bp_is_item_admin may not be set if this function is called outside of group context. // Site admins and group admins can remove a member from a group. // A member may also request to remove herself from a group. if (!current_user_can('bp_moderate') && !groups_is_user_admin(bp_loggedin_user_id(), $group_id) && $user_id != bp_loggedin_user_id()) { return false; } } $member = new BP_Groups_Member($user_id, $group_id); /** * Fires before the removal of a member from a group. * * @since 1.2.6 * * @param int $group_id ID of the group being removed from. * @param int $user_id ID of the user being removed. */ do_action('groups_remove_member', $group_id, $user_id); return $member->remove(); }
function groups_remove_member($user_id, $group_id) { if (!bp_is_item_admin()) { return false; } $member = new BP_Groups_Member($user_id, $group_id); do_action('groups_remove_member', $group_id, $user_id); return $member->remove(); }
/** * Remove a member from a group. * * @since 1.2.6 * * @param int $user_id ID of the user. * @param int $group_id ID of the group. * @return bool True on success, false on failure. */ function groups_remove_member($user_id, $group_id) { if (!bp_is_item_admin()) { return false; } $member = new BP_Groups_Member($user_id, $group_id); /** * Fires before the removal of a member from a group. * * @since 1.2.6 * * @param int $group_id ID of the group being removed from. * @param int $user_id ID of the user being removed. */ do_action('groups_remove_member', $group_id, $user_id); return $member->remove(); }
function groups_remove_member($user_id, $group_id) { global $bp; if (!$bp->is_item_admin) { return false; } $member = new BP_Groups_Member($user_id, $group_id); do_action('groups_remove_member', $group_id, $user_id); return $member->remove(); }
/** * @group cache */ public function test_cache_should_be_invalidated_on_group_remove() { // Populate cache. $g1 = bp_get_user_groups(self::$user); $m = new BP_Groups_Member(self::$user, self::$groups[1]); $m->remove(); $expected = array(self::$groups[0]); $found = bp_get_user_groups(self::$user); $this->assertEqualSets($expected, array_keys($found)); }