Skip to:
Content

BuddyPress.org

Changeset 12408


Ignore:
Timestamp:
07/23/2019 04:12:32 AM (7 years ago)
Author:
imath
Message:

Respect user preferences about friends restriction group invites

NB: This is specific to BP Nouveau.

(4.0 branch)

Location:
branches/4.0/src/bp-templates/bp-nouveau/includes/groups
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/4.0/src/bp-templates/bp-nouveau/includes/groups/ajax.php

    r12386 r12408  
    44 *
    55 * @since 3.0.0
    6  * @version 3.1.0
     6 * @version 4.4.0
    77 */
    88
     
    385385
    386386        // For feedback
    387         $invited = array();
     387        $invited           = array();
     388        $is_friends_active = bp_is_active( 'friends' );
    388389
    389390        foreach ( (array) $_POST['users'] as $user_id ) {
    390                 $invited[ (int) $user_id ] = groups_invite_user(
    391                         array(
    392                                 'user_id'  => $user_id,
    393                                 'group_id' => $group_id,
    394                         )
    395                 );
     391                $user_id = (int) $user_id;
     392
     393                if ( $is_friends_active && bp_nouveau_groups_get_group_invites_setting( $user_id ) && 'is_friend' !== BP_Friends_Friendship::check_is_friend( bp_loggedin_user_id(), $user_id ) ) {
     394                        continue;
     395                } else {
     396                        $invited[ $user_id ] = groups_invite_user(
     397                                array(
     398                                        'user_id'  => $user_id,
     399                                        'group_id' => $group_id,
     400                                )
     401                        );
     402                }
     403        }
     404
     405        if ( ! $invited ) {
     406                wp_send_json_error( $response );
    396407        }
    397408
  • branches/4.0/src/bp-templates/bp-nouveau/includes/groups/template-tags.php

    r12290 r12408  
    44 *
    55 * @since 3.0.0
    6  * @version 3.2.0
     6 * @version 4.4.0
    77 */
    88
     
    193193 *
    194194 * @since 3.0.0
    195  *
    196  * @return int Returns 1 if user chose to restrict to friends, 0 otherwise.
    197  */
    198 function bp_nouveau_groups_get_group_invites_setting() {
    199         return (int) bp_get_user_meta( bp_displayed_user_id(), '_bp_nouveau_restrict_invites_to_friends' );
     195 * @since 4.4.0
     196 *
     197 * @param  int $user_id The user ID to check group invites preference for.
     198 * @return int          Returns 1 if user chose to restrict to friends, 0 otherwise.
     199 */
     200function bp_nouveau_groups_get_group_invites_setting( $user_id = 0 ) {
     201        if ( ! $user_id ) {
     202                $user_id = bp_displayed_user_id();
     203        }
     204
     205        return (int) bp_get_user_meta( $user_id, '_bp_nouveau_restrict_invites_to_friends' );
    200206}
    201207
Note: See TracChangeset for help on using the changeset viewer.