/**
 * Withdraw a friendship request.
 *
 * @since 1.6.0
 *
 * @param int $initiator_userid ID of the friendship initiator - this is the
 *                              user who requested the friendship, and is doing the withdrawing.
 * @param int $friend_userid    ID of the requested friend.
 * @return bool True on success, false on failure.
 */
function friends_withdraw_friendship($initiator_userid, $friend_userid)
{
    $friendship_id = BP_Friends_Friendship::get_friendship_id($initiator_userid, $friend_userid);
    $friendship = new BP_Friends_Friendship($friendship_id, true, false);
    if (empty($friendship->is_confirmed) && BP_Friends_Friendship::withdraw($friendship_id)) {
        // @deprecated Since 1.9
        do_action_ref_array('friends_friendship_whithdrawn', array($friendship_id, &$friendship));
        /**
         * Fires after a friendship request has been withdrawn.
         *
         * @since 1.9.0
         *
         * @param int                   $friendship_id ID of the friendship.
         * @param BP_Friends_Friendship $friendship    Friendship object. Passed by reference.
         */
        do_action_ref_array('friends_friendship_withdrawn', array($friendship_id, &$friendship));
        return true;
    }
    return false;
}
Пример #2
0
/**
 * Withdraw a friendship request.
 *
 * @param int $initiator_userid ID of the friendship initiator - this is the
 *            user who requested the friendship, and is doing the withdrawing.
 * @param int $friend_userid ID of the requested friend.
 * @return bool True on success, false on failure.
 */
function friends_withdraw_friendship($initiator_userid, $friend_userid)
{
    $friendship_id = BP_Friends_Friendship::get_friendship_id($initiator_userid, $friend_userid);
    $friendship = new BP_Friends_Friendship($friendship_id, true, false);
    if (empty($friendship->is_confirmed) && BP_Friends_Friendship::withdraw($friendship_id)) {
        // @deprecated Since 1.9
        do_action_ref_array('friends_friendship_whithdrawn', array($friendship_id, &$friendship));
        // @since 1.9
        do_action_ref_array('friends_friendship_withdrawn', array($friendship_id, &$friendship));
        return true;
    }
    return false;
}
function friends_withdraw_friendship($initiator_userid, $friend_userid)
{
    global $bp;
    $friendship_id = BP_Friends_Friendship::get_friendship_id($initiator_userid, $friend_userid);
    $friendship = new BP_Friends_Friendship($friendship_id, true, false);
    if (!$friendship->is_confirmed && BP_Friends_Friendship::withdraw($friendship_id)) {
        // Remove the friend request notice
        bp_core_delete_notifications_by_item_id($friendship->friend_user_id, $friendship->initiator_user_id, $bp->friends->id, 'friendship_request');
        do_action_ref_array('friends_friendship_whithdrawn', array($friendship_id, &$friendship));
        return true;
    }
    return false;
}