bp_members_filter_document_personal_scope( array $retval = array(), array $filter = array() )
Set up media arguments for use with the ‘personal’ scope.
Description
Parameters
- $retval
-
(array) (Optional) Empty array by default.
Default value: array()
- $filter
-
(array) (Optional) Current activity arguments.
Default value: array()
Return
(array)
Source
File: bp-members/bp-members-filters.php
function bp_members_filter_document_personal_scope( $retval = array(), $filter = array() ) { // Determine the user_id. if ( ! empty( $filter['user_id'] ) ) { $user_id = $filter['user_id']; } else { $user_id = bp_displayed_user_id() ? bp_displayed_user_id() : bp_loggedin_user_id(); } $folder_id = 0; $folders = array(); if ( ! empty( $filter['folder_id'] ) ) { $folder_id = (int) $filter['folder_id']; } $privacy = array( 'public' ); if ( is_user_logged_in() ) { $privacy[] = 'loggedin'; if ( bp_is_active( 'friends' ) ) { $friends = friends_get_friend_user_ids( $user_id ); if ( ( ! empty( $friends ) && in_array( bp_loggedin_user_id(), $friends ) ) || $user_id === bp_loggedin_user_id() ) { $privacy[] = 'friends'; } } if ( $user_id === bp_loggedin_user_id() ) { $privacy[] = 'onlyme'; } } if ( ! bp_is_profile_document_support_enabled() ) { $user_id = '0'; } if ( ! empty( $filter['search_terms'] ) ) { if ( ! empty( $folder_id ) ) { $user_root_folder_ids = bp_document_get_folder_children( (int) $folder_id ); $folder_ids = array(); if ( $user_root_folder_ids ) { foreach ( $user_root_folder_ids as $single_folder ) { $single_folder_ids = bp_document_get_folder_children( (int) $single_folder ); if ( $single_folder_ids ) { array_merge( $folder_ids, $single_folder_ids ); } array_push( $folder_ids, $single_folder ); } } $folder_ids[] = $folder_id; $folders = array( 'column' => 'folder_id', 'compare' => 'IN', 'value' => $folder_ids, ); } } else { if ( ! empty( $folder_id ) ) { $folders = array( 'column' => 'folder_id', 'compare' => '=', 'value' => $folder_id, ); } else { $folders = array( 'column' => 'folder_id', 'value' => 0, ); } } $args = array( 'relation' => 'AND', array( 'column' => 'user_id', 'compare' => '=', 'value' => $user_id, ), array( 'column' => 'privacy', 'compare' => 'IN', 'value' => $privacy ), array( 'column' => 'group_id', 'compare' => '=', 'value' => '0', ), $folders ); return $args; }
Changelog
Version | Description |
---|---|
BuddyBoss 1.1.9 | Introduced. |
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.