bp_messages_add_user_to_group_message_thread( $group_id, $user_id )
Remove member to Group thread when h/she joined the group.
Description
Parameters
- $group_id
-
(Required)
- $user_id
-
(Required)
Source
File: bp-messages/bp-messages-filters.php
function bp_messages_add_user_to_group_message_thread( $group_id, $user_id ) { global $wpdb, $bp, $messages_template; // Add Member to group messages thread. if ( true === bp_disable_group_messages() && bp_is_active( 'messages' ) ) { $group_thread = (int) groups_get_groupmeta( (int) $group_id, 'group_message_thread' ); $recipients = BP_Messages_Thread::get_recipients_for_thread( (int) $group_thread ); $recipients = wp_list_pluck( $recipients, 'user_id' ); if ( $group_thread > 0 && ! in_array( (int) $user_id, $recipients, true ) ) { $first_message = BP_Messages_Thread::get_first_message( $group_thread ); $message_users_ids = bp_messages_get_meta( $first_message->id, 'message_users_ids', true ); // users list $message_users_ids = explode( ',', $message_users_ids ); array_push( $message_users_ids, $user_id ); $group_name = bp_get_group_name( groups_get_group( $group_id ) ); $text = sprintf( __( 'Joined "%s" ', 'buddyboss' ), $group_name ); bp_messages_update_meta( $first_message->id, 'message_users_ids', implode( ',', $message_users_ids ) ); $wpdb->query( $wpdb->prepare( "INSERT INTO {$bp->messages->table_name_recipients} ( user_id, thread_id, unread_count ) VALUES ( %d, %d, 0 )", $user_id, $group_thread ) ); remove_action( 'messages_message_sent', 'messages_notification_new_message', 10 ); remove_action( 'messages_message_sent', 'bp_messages_message_sent_add_notification', 10 ); $new_reply = messages_new_message( array( 'thread_id' => $group_thread, 'sender_id' => $user_id, 'subject' => '', 'content' => '<p> </p>', 'date_sent' => $date_sent = bp_core_current_time(), 'error_type' => 'wp_error', ) ); add_action( 'messages_message_sent', 'messages_notification_new_message', 10 ); add_action( 'messages_message_sent', 'bp_messages_message_sent_add_notification', 10 ); if ( ! is_wp_error( $new_reply ) && true === is_int( ( int ) $new_reply ) ) { if ( bp_has_message_threads( array( 'include' => $new_reply ) ) ) { while ( bp_message_threads() ) { bp_message_thread(); $last_message_id = (int) $messages_template->thread->last_message_id; bp_messages_update_meta( $last_message_id, 'group_message_group_joined', 'yes' ); bp_messages_update_meta( $last_message_id, 'group_id', $group_id ); } } } } } }
Changelog
Version | Description |
---|---|
BuddyBoss 1.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.