BP_REST_Document_Endpoint::bp_rest_check_privacy_restriction( BP_Document $document )

Check user access based on the privacy for the single document.

Description

Parameters

$document

(Required) Document object.

Return

(bool)

Source

File: bp-document/classes/class-bp-rest-document-endpoint.php

1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
protected function bp_rest_check_privacy_restriction( $document ) {
    return (
                'onlyme' === $document->privacy
                && bp_loggedin_user_id() !== $document->user_id
            )
            || (
                'loggedin' === $document->privacy
                && empty( bp_loggedin_user_id() )
            )
            || (
                bp_is_active( 'groups' )
                && 'grouponly' === $document->privacy
                && ! empty( $document->group_id )
                && 'public' !== bp_get_group_status( groups_get_group( $document->group_id ) )
                && empty( groups_is_user_admin( bp_loggedin_user_id(), $document->group_id ) )
                && empty( groups_is_user_mod( bp_loggedin_user_id(), $document->group_id ) )
                && empty( groups_is_user_member( bp_loggedin_user_id(), $document->group_id ) )
            )
            || (
                bp_is_active( 'friends' )
                && 'friends' === $document->privacy
                && ! empty( $document->user_id )
                && bp_loggedin_user_id() !== $document->user_id
                && 'is_friend' !== friends_check_friendship_status( $document->user_id, bp_loggedin_user_id() )
            );
}

Questions?

We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.