bp_attachments_current_user_can( string $capability, array $args = array() )
Check the current user’s capability to edit an avatar for a given object.
Description
Parameters
- $capability
-
(Required) The capability to check.
- $args
-
(Optional) An array containing the item_id and the object to check.
Default value: array()
Return
(bool)
Source
File: bp-core/bp-core-attachments.php
function bp_attachments_current_user_can( $capability, $args = array() ) { $can = false; if ( 'edit_avatar' === $capability || 'edit_cover_image' === $capability ) { /** * Needed avatar arguments are set. */ if ( isset( $args['item_id'] ) && isset( $args['object'] ) ) { // Group profile photo. if ( bp_is_active( 'groups' ) && 'group' === $args['object'] ) { if ( bp_is_group_create() ) { $can = (bool) groups_is_user_creator( bp_loggedin_user_id(), $args['item_id'] ) || bp_current_user_can( 'bp_moderate' ); } else { $can = (bool) groups_is_user_admin( bp_loggedin_user_id(), $args['item_id'] ) || bp_current_user_can( 'bp_moderate' ); } // User profile photo. } elseif ( bp_is_active( 'xprofile' ) && 'user' === $args['object'] ) { $can = bp_loggedin_user_id() === (int) $args['item_id'] || bp_current_user_can( 'bp_moderate' ); } /** * No avatar arguments, fallback to bp_user_can_create_groups() * or bp_is_item_admin() */ } else { if ( bp_is_group_create() ) { $can = bp_user_can_create_groups(); } else { $can = bp_is_item_admin(); } } } return apply_filters( 'bp_attachments_current_user_can', $can, $capability, $args ); }
Changelog
Version | Description |
---|---|
BuddyPress 2.3.0 | 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.