bp_nouveau_ajax_send_group_invites()
Source Source
File: bp-templates/bp-nouveau/includes/groups/ajax.php
function bp_nouveau_ajax_send_group_invites() { $bp = buddypress(); $response = array( 'feedback' => __( 'Invites could not be sent. Please try again.', 'buddypress' ), 'type' => 'error', ); // Verify nonce if ( empty( $_POST['_wpnonce'] ) || ! wp_verify_nonce( $_POST['_wpnonce'], 'groups_send_invites' ) ) { wp_send_json_error( $response ); } $group_id = bp_get_current_group_id(); if ( bp_is_group_create() && ! empty( $_POST['group_id'] ) ) { $group_id = (int) $_POST['group_id']; } if ( ! bp_groups_user_can_send_invites( $group_id ) ) { $response['feedback'] = __( 'You are not allowed to send invitations for this group.', 'buddypress' ); wp_send_json_error( $response ); } if ( empty( $_POST['users'] ) ) { wp_send_json_error( $response ); } // For feedback $invited = array(); $is_friends_active = bp_is_active( 'friends' ); foreach ( (array) $_POST['users'] as $user_id ) { $user_id = (int) $user_id; 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 ) ) { continue; } else { $invited[ $user_id ] = groups_invite_user( array( 'user_id' => $user_id, 'group_id' => $group_id, 'content' => $_POST['message'], ) ); } } if ( ! $invited ) { wp_send_json_error( $response ); } // Send the invites. groups_send_invites( array( 'group_id' => $group_id ) ); if ( array_search( false, $invited ) ) { $errors = array_keys( $invited, false ); $error_count = count( $errors ); $error_message = sprintf( /* translators: count of users affected */ _n( 'Invitation failed for %s user.', 'Invitation failed for %s users.', $error_count, 'buddypress' ), number_format_i18n( $error_count ) ); wp_send_json_error( array( 'feedback' => $error_message, 'users' => $errors, 'type' => 'error', ) ); } wp_send_json_success( array( 'feedback' => __( 'Invitations sent.', 'buddypress' ), 'type' => 'success', ) ); }
Expand full source code Collapse full source code View on Trac
Changelog Changelog
Version | Description |
---|---|
3.0.0 | Introduced. |